Python pybullet.applyExternalForce() Examples
The following are 8
code examples of pybullet.applyExternalForce().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
pybullet
, or try the search function
.
Example #1
Source File: CartPolev0Env.py From bullet-gym with MIT License | 6 votes |
def _reset(self): # reset state self.steps = 0 self.done = False # reset pole on cart in starting poses p.resetBasePositionAndOrientation(self.cartpole, (0,0,0.08), (0,0,0,1)) # reset cart position and orientation p.resetJointState(self.cartpole, 0, 0) # reset joint position of pole for _ in xrange(100): p.stepSimulation() # give a fixed force push in a random direction to get things going... theta = (np.random.random()*2-1) if self.random_theta else 0.0 for _ in xrange(self.initial_force_steps): p.stepSimulation() p.applyExternalForce(self.cartpole, 0, (theta, 0 , 0), (0, 0, 0), p.WORLD_FRAME) if self.delay > 0: time.sleep(self.delay) # bootstrap state by running for all repeats for i in xrange(self.repeats): self.set_state_element_for_repeat(i) # return this state return np.copy(self.state)
Example #2
Source File: Detached2DCartPolev0Env.py From bullet-gym with MIT License | 6 votes |
def _reset(self): # reset state self.steps = 0 self.done = False # reset pole on cart in starting poses p.resetBasePositionAndOrientation(self.cart, (0,0,0.08), (0,0,0,1)) p.resetBasePositionAndOrientation(self.pole, (0,0,0.35), (0,0,0,1)) for _ in xrange(100): p.stepSimulation() # give a fixed force push in a random direction to get things going... theta = np.multiply(np.multiply((np.random.random(), np.random.random(), 0),2) - (1,1,0),5) if self.random_theta else (1,0,0) for _ in xrange(self.initial_force_steps): p.stepSimulation() p.applyExternalForce(self.pole, -1, theta, (0, 0, 0), p.WORLD_FRAME) if self.delay > 0: time.sleep(self.delay) # bootstrap state by running for all repeats for i in xrange(self.repeats): self.set_state_element_for_repeat(i) # return this state return np.copy(self.state)
Example #3
Source File: bullet_physics_engine.py From NTP-vat-release with MIT License | 5 votes |
def apply_force(self, uid, lid, force, pos): p.applyExternalForce(uid, lid, force, pos, p.WORLD_FRAME)
Example #4
Source File: bullet_cartpole.py From cartpoleplusplus with MIT License | 5 votes |
def _reset(self): # reset state self.steps = 0 self.done = False # reset pole on cart in starting poses p.resetBasePositionAndOrientation(self.cart, (0,0,0.08), (0,0,0,1)) p.resetBasePositionAndOrientation(self.pole, (0,0,0.35), (0,0,0,1)) for _ in xrange(100): p.stepSimulation() # give a fixed force push in a random direction to get things going... theta = (np.random.random() * 2 * np.pi) if self.random_theta else 0.0 fx, fy = self.initial_force * np.cos(theta), self.initial_force * np.sin(theta) for _ in xrange(self.initial_force_steps): p.stepSimulation() p.applyExternalForce(self.cart, -1, (fx, fy, 0), (0, 0, 0), p.WORLD_FRAME) if self.delay > 0: time.sleep(self.delay) # bootstrap state by running for all repeats for i in xrange(self.repeats): self.set_state_element_for_repeat(i) # reset event log (if applicable) and add entry with only state if self.event_log: self.event_log.reset() self.event_log.add_just_state(self.state) # return this state return np.copy(self.state)
Example #5
Source File: ant_env.py From midlevel-reps with MIT License | 5 votes |
def _flag_reposition(self): #self.walk_target_x = self.np_random.uniform(low=-self.scene.stadium_halflen, # high=+self.scene.stadium_halflen) #self.walk_target_y = self.np_random.uniform(low=-self.scene.stadium_halfwidth, # high=+self.scene.stadium_halfwidth) force_x = self.np_random.uniform(-300,300) force_y = self.np_random.uniform(-300, 300) more_compact = 0.5 # set to 1.0 whole football field #self.walk_target_x *= more_compact #self.walk_target_y *= more_compact startx, starty, _ = self.robot.get_position() self.flag = None self.flag_timeout = 3000 / self.scene.frame_skip if self.lastid: p.removeBody(self.lastid) self.lastid = p.createMultiBody(baseMass = 1, baseVisualShapeIndex=self.visualid, baseCollisionShapeIndex=self.colisionid, basePosition=[startx, starty, 0.5]) p.applyExternalForce(self.lastid, -1, [force_x,force_y,50], [0,0,0], p.LINK_FRAME) ball_xyz, _ = p.getBasePositionAndOrientation(self.lastid) self.robot.walk_target_x = ball_xyz[0] self.robot.walk_target_y = ball_xyz[1]
Example #6
Source File: humanoid_env.py From midlevel-reps with MIT License | 5 votes |
def _flag_reposition(self): # self.walk_target_x = self.np_random.uniform(low=-self.scene.stadium_halflen, # high=+self.scene.stadium_halflen) # self.walk_target_y = self.np_random.uniform(low=-self.scene.stadium_halfwidth, # high=+self.scene.stadium_halfwidth) force_x = self.np_random.uniform(-300, 300) force_y = self.np_random.uniform(-300, 300) more_compact = 0.5 # set to 1.0 whole football field # self.walk_target_x *= more_compact # self.walk_target_y *= more_compact startx, starty, _ = self.robot.body_xyz self.flag = None # self.flag = self.scene.cpp_world.debug_sphere(self.walk_target_x, self.walk_target_y, 0.2, 0.2, 0xFF8080) self.flag_timeout = 3000 / self.scene.frame_skip # print('targetxy', self.flagid, self.walk_target_x, self.walk_target_y, p.getBasePositionAndOrientation(self.flagid)) # p.resetBasePositionAndOrientation(self.flagid, posObj = [self.walk_target_x, self.walk_target_y, 0.5], ornObj = [0,0,0,0]) if self.lastid: p.removeBody(self.lastid) self.lastid = p.createMultiBody(baseMass=1, baseVisualShapeIndex=self.visualid, baseCollisionShapeIndex=self.colisionid, basePosition=[startx, starty, 0.5]) p.applyExternalForce(self.lastid, -1, [force_x, force_y, 50], [0, 0, 0], p.LINK_FRAME) ball_xyz, _ = p.getBasePositionAndOrientation(self.lastid) self.robot.walk_target_x = ball_xyz[0] self.robot.walk_target_y = ball_xyz[1]
Example #7
Source File: husky_env.py From midlevel-reps with MIT License | 5 votes |
def _flag_reposition(self): #self.walk_target_x = self.np_random.uniform(low=-self.scene.stadium_halflen, # high=+self.scene.stadium_halflen) #self.walk_target_y = self.np_random.uniform(low=-self.scene.stadium_halfwidth, # high=+self.scene.stadium_halfwidth) force_x = self.np_random.uniform(-300,300) force_y = self.np_random.uniform(-300, 300) more_compact = 0.5 # set to 1.0 whole football field #self.walk_target_x *= more_compact #self.walk_target_y *= more_compact startx, starty, _ = self.robot.get_position() self.flag = None #self.flag = self.scene.cpp_world.debug_sphere(self.walk_target_x, self.walk_target_y, 0.2, 0.2, 0xFF8080) self.flag_timeout = 3000 / self.scene.frame_skip #print('targetxy', self.flagid, self.walk_target_x, self.walk_target_y, p.getBasePositionAndOrientation(self.flagid)) #p.resetBasePositionAndOrientation(self.flagid, posObj = [self.walk_target_x, self.walk_target_y, 0.5], ornObj = [0,0,0,0]) if self.lastid: p.removeBody(self.lastid) self.lastid = p.createMultiBody(baseMass = 1, baseVisualShapeIndex=self.visualid, baseCollisionShapeIndex=self.colisionid, basePosition=[startx, starty, 0.5]) p.applyExternalForce(self.lastid, -1, [force_x,force_y,50], [0,0,0], p.LINK_FRAME) ball_xyz, _ = p.getBasePositionAndOrientation(self.lastid) self.robot.walk_target_x = ball_xyz[0] self.robot.walk_target_y = ball_xyz[1]
Example #8
Source File: TemplateEnv.py From bullet-gym with MIT License | 5 votes |
def _reset(self): pass # reset your environment # # reset state # self.steps = 0 # self.done = False # # # reset pole on cart in starting poses # p.resetBasePositionAndOrientation(self.cartpole, (0,0,0.08), (0,0,0,1)) # reset cart position and orientation # p.resetJointState(self.cartpole, 0, 0) # reset joint position of pole # for _ in xrange(100): p.stepSimulation() # # # give a fixed force push in a random direction to get things going... # theta = (np.random.random()*2-1) if self.random_theta else 0.0 # for _ in xrange(self.initial_force_steps): # p.stepSimulation() # p.applyExternalForce(self.cartpole, 0, (theta, 0 , 0), (0, 0, 0), p.WORLD_FRAME) # if self.delay > 0: # time.sleep(self.delay) # # # bootstrap state by running for all repeats # for i in xrange(self.repeats): # self.set_state_element_for_repeat(i) # # # return this state # return np.copy(self.state)