def load_default_settings(path): BASE_FOLDER = os.path.abspath(path) SOURCE_FOLDER = os.path.abspath(os.path.join(BASE_FOLDER, 'src')) OUTPUT_FOLDER = os.path.abspath(os.path.join(BASE_FOLDER, 'dist')) STATIC_FOLDER = os.path.abspath(os.path.join(BASE_FOLDER, 'theme', 'static')) TEMPLATES_FOLDER = os.path.abspath(os.path.join(BASE_FOLDER, 'theme', 'templates')) PLUGINS_FOLDER = os.path.abspath(os.path.join(BASE_FOLDER, 'plugins',)) MD = mistune.Markdown() JINJA_ENV = Environment( loader=FileSystemLoader([TEMPLATES_FOLDER]) ) ARTICLE_TYPES = ['article'] INDEX_TYPES = ['index'] PLUGINS = [] SITEURL = "/" CONTEXT = Map({ "BASE_FOLDER": BASE_FOLDER, "SOURCE_FOLDER": SOURCE_FOLDER, "OUTPUT_FOLDER": OUTPUT_FOLDER, "STATIC_FOLDER": STATIC_FOLDER, "MD": MD, "JINJA_ENV": JINJA_ENV, "ARTICLE_TYPES": ARTICLE_TYPES, "INDEX_TYPES": INDEX_TYPES, "PLUGINS": PLUGINS, "PLUGINS_FOLDER": PLUGINS_FOLDER, "SITEURL": SITEURL, "authors": set() }) return CONTEXT
#! /usr/bin/python3 from brickpi3 import BrickPi3 from helper import RobotBase, Canvas, Map from time import sleep from math import pi canvas = Canvas(210) mymap = Map() # to waypoint robot = RobotBase(BrickPi3.PORT_B, BrickPi3.PORT_C, BrickPi3.PORT_D, BrickPi3.PORT_4, mymap, p_start=(84.0, 30.0, 0), debug_canvas=canvas) robot.to_relative_forward(100)
import vrep import time from helper import Map from quadcopeter import Quadcopter if __name__ == "__main__": x = [-9, 9] # x map limit y = [-11, 9] # y map limit z = [0.05, 1.8] # z map limit server = '127.0.0.1' port = 19999 sim = Map(x, y, z) # init map parameters sim.start_connection(server, port) #start connection with vrep simulation if sim.clientID != -1: print("Connected to remote API server") quad = Quadcopter(sim) #init quadcopter quad.create_proximity_sensors( ) #initializing quadcopter proximity sensors quad.create_vision_sensor( ) #initializing quadcopter proximity vision sensor sim.get_position( quad.target, vrep.simx_opmode_streaming) # update targe position in map time.sleep(0.2) #put quadcopter on initial position
#! /usr/bin/python3 from brickpi3 import BrickPi3 import numpy as np from helper import RobotBase, Canvas, Map from time import sleep from math import pi, radians, degrees import matplotlib.pyplot as plt canvas = Canvas(210) mymap = Map() # draw wall # Definitions of walls # a: O to A # b: A to B # c: C to D # d: D to E # e: E to F # f: F to G # g: G to H # h: H to O mymap.add_wall((0, 0, 0, 168)) # a mymap.add_wall((0, 168, 84, 168)) # b mymap.add_wall((84, 126, 84, 210)) # c mymap.add_wall((84, 210, 168, 210))
#! /usr/bin/python3 from brickpi3 import BrickPi3 import numpy as np from helper import RobotBase, Canvas, Map from time import sleep from math import pi, radians, degrees, atan2 import matplotlib.pyplot as plt canvas = Canvas(210) mymap = Map() # draw wall # Definitions of walls # a: O to A # b: A to B # c: C to D # d: D to E # e: E to F # f: F to G # g: G to H
#! /usr/bin/python3 from brickpi3 import BrickPi3 from helper import RobotBase, Canvas, Map from time import sleep from math import pi canvas = Canvas(210) mymap = Map() # draw wall # Definitions of walls # a: O to A # b: A to B # c: C to D # d: D to E # e: E to F # f: F to G # g: G to H # h: H to O mymap.add_wall((0,0,0,168)); # a mymap.add_wall((0,168,84,168)); # b mymap.add_wall((84,126,84,210)); # c mymap.add_wall((84,210,168,210)); # d mymap.add_wall((168,210,168,84)); # e mymap.add_wall((168,84,210,84)); # f mymap.add_wall((210,84,210,0)); # g mymap.add_wall((210,0,0,0)); # h canvas.drawLines(mymap.walls) name_list = ["a","b","c","d","e","f","g","h"]
#! /usr/bin/python3 from brickpi3 import BrickPi3 from helper import RobotBase, Canvas, Map from time import sleep from math import pi robot = RobotBase(BrickPi3.PORT_B, BrickPi3.PORT_C) canvas = Canvas(40) mymap = Map() # draw wall wall_corner = [(0,0), (0,40), (40,40), (40,0)] for i in range(3): mymap.add_wall((*wall_corner[i], *wall_corner[i+1])) mymap.add_wall((*wall_corner[3], *wall_corner[0])) # draw lines canvas.drawLines(mymap.walls) # init for _ in range(4): for _ in range(4): robot.to_relative_forward(10) # *task unpack to arguments canvas.drawParticles(robot.p_tuples, robot.p_weights) print (f"est postion:{robot.get_est_pos()}") sleep(1) robot.to_relative_turn(0.5*pi)