本文整理匯總了Python中pybullet.setPhysicsEngineParameter方法的典型用法代碼示例。如果您正苦於以下問題:Python pybullet.setPhysicsEngineParameter方法的具體用法?Python pybullet.setPhysicsEngineParameter怎麽用?Python pybullet.setPhysicsEngineParameter使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類pybullet
的用法示例。
在下文中一共展示了pybullet.setPhysicsEngineParameter方法的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: setupWorld
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def setupWorld(self):
numObjects = 50
maximalCoordinates = False
p.resetSimulation()
p.setPhysicsEngineParameter(deterministicOverlappingPairs=1)
p.loadURDF("planeMesh.urdf",useMaximalCoordinates=maximalCoordinates)
kukaId = p.loadURDF("kuka_iiwa/model_free_base.urdf",[0,0,10], useMaximalCoordinates=maximalCoordinates)
for i in range (p.getNumJoints(kukaId)):
p.setJointMotorControl2(kukaId,i,p.POSITION_CONTROL,force=0)
for i in range (numObjects):
cube = p.loadURDF("cube_small.urdf",[0,i*0.02,(i+1)*0.2])
#p.changeDynamics(cube,-1,mass=100)
p.stepSimulation()
p.setGravity(0,0,-10)
示例2: _reset
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def _reset(self):
#print("KukaGymEnv _reset")
self.terminated = 0
p.resetSimulation()
p.setPhysicsEngineParameter(numSolverIterations=150)
p.setTimeStep(self._timeStep)
p.loadURDF(os.path.join(self._urdfRoot,"plane.urdf"),[0,0,-1])
p.loadURDF(os.path.join(self._urdfRoot,"table/table.urdf"), 0.5000000,0.00000,-.820000,0.000000,0.000000,0.0,1.0)
xpos = 0.55 +0.12*random.random()
ypos = 0 +0.2*random.random()
ang = 3.14*0.5+3.1415925438*random.random()
orn = p.getQuaternionFromEuler([0,0,ang])
self.blockUid =p.loadURDF(os.path.join(self._urdfRoot,"block.urdf"), xpos,ypos,-0.15,orn[0],orn[1],orn[2],orn[3])
p.setGravity(0,0,-10)
self._kuka = kuka.Kuka(urdfRootPath=self._urdfRoot, timeStep=self._timeStep)
self._envStepCounter = 0
p.stepSimulation()
self._observation = self.getExtendedObservation()
return np.array(self._observation)
示例3: _reset
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def _reset(self):
self.terminated = 0
p.resetSimulation()
p.setPhysicsEngineParameter(numSolverIterations=150)
p.setTimeStep(self._timeStep)
p.loadURDF(os.path.join(self._urdfRoot,"plane.urdf"),[0,0,-1])
p.loadURDF(os.path.join(self._urdfRoot,"table/table.urdf"), 0.5000000,0.00000,-.820000,0.000000,0.000000,0.0,1.0)
xpos = 0.5 +0.2*random.random()
ypos = 0 +0.25*random.random()
ang = 3.1415925438*random.random()
orn = p.getQuaternionFromEuler([0,0,ang])
self.blockUid =p.loadURDF(os.path.join(self._urdfRoot,"block.urdf"), xpos,ypos,-0.1,orn[0],orn[1],orn[2],orn[3])
p.setGravity(0,0,-10)
self._kuka = kuka.Kuka(urdfRootPath=self._urdfRoot, timeStep=self._timeStep)
self._envStepCounter = 0
p.stepSimulation()
self._observation = self.getExtendedObservation()
return np.array(self._observation)
示例4: _setup
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def _setup(self):
"""Sets up the robot + tray + objects.
"""
pybullet.resetSimulation(physicsClientId=self.cid)
pybullet.setPhysicsEngineParameter(numSolverIterations=150,
physicsClientId=self.cid)
# pybullet.setTimeStep(self._time_step, physicsClientId=self.cid)
pybullet.setGravity(0, 0, -10, physicsClientId=self.cid)
plane_path = os.path.join(self._urdf_root, 'plane.urdf')
pybullet.loadURDF(plane_path, [0, 0, -1],
physicsClientId=self.cid)
table_path = os.path.join(self._urdf_root, 'table/table.urdf')
pybullet.loadURDF(table_path, [0.0, 0.0, -.65],
[0., 0., 0., 1.], physicsClientId=self.cid)
# Load the target object
duck_path = os.path.join(self._urdf_root, 'duck_vhacd.urdf')
pos = [0]*3
orn = [0., 0., 0., 1.]
self._target_uid = pybullet.loadURDF(
duck_path, pos, orn, physicsClientId=self.cid)
示例5: setupWorld
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def setupWorld():
p.resetSimulation()
p.setPhysicsEngineParameter(deterministicOverlappingPairs=1)
p.loadURDF("planeMesh.urdf")
kukaId = p.loadURDF("kuka_iiwa/model_free_base.urdf",[0,0,10])
for i in range (p.getNumJoints(kukaId)):
p.setJointMotorControl2(kukaId,i,p.POSITION_CONTROL,force=0)
for i in range (numObjects):
cube = p.loadURDF("cube_small.urdf",[0,i*0.02,(i+1)*0.2])
#p.changeDynamics(cube,-1,mass=100)
p.stepSimulation()
p.setGravity(0,0,-10)
示例6: _reset
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def _reset(self):
"""Environment reset called at the beginning of an episode.
"""
# Set the camera settings.
look = [0.23, 0.2, 0.54]
distance = 1.
pitch = -56 + self._cameraRandom*np.random.uniform(-3, 3)
yaw = 245 + self._cameraRandom*np.random.uniform(-3, 3)
roll = 0
self._view_matrix = p.computeViewMatrixFromYawPitchRoll(
look, distance, yaw, pitch, roll, 2)
fov = 20. + self._cameraRandom*np.random.uniform(-2, 2)
aspect = self._width / self._height
near = 0.01
far = 10
self._proj_matrix = p.computeProjectionMatrixFOV(
fov, aspect, near, far)
self._attempted_grasp = False
self._env_step = 0
self.terminated = 0
p.resetSimulation()
p.setPhysicsEngineParameter(numSolverIterations=150)
p.setTimeStep(self._timeStep)
p.loadURDF(os.path.join(self._urdfRoot,"plane.urdf"),[0,0,-1])
p.loadURDF(os.path.join(self._urdfRoot,"table/table.urdf"), 0.5000000,0.00000,-.820000,0.000000,0.000000,0.0,1.0)
p.setGravity(0,0,-10)
self._kuka = kuka.Kuka(urdfRootPath=self._urdfRoot, timeStep=self._timeStep)
self._envStepCounter = 0
p.stepSimulation()
# Choose the objects in the bin.
urdfList = self._get_random_object(
self._numObjects, self._isTest)
self._objectUids = self._randomly_place_objects(urdfList)
self._observation = self._get_observation()
return np.array(self._observation)
示例7: clean_everything
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def clean_everything(self):
#p.resetSimulation()
p.setGravity(0, 0, -self.gravity)
#p.setDefaultContactERP(0.9)
p.setPhysicsEngineParameter(fixedTimeStep=self.timestep*self.frame_skip, numSolverIterations=50, numSubSteps=(self.frame_skip-1))
示例8: clean_everything
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def clean_everything(self):
p.resetSimulation()
p.setGravity(0, 0, -self.gravity)
p.setPhysicsEngineParameter(fixedTimeStep=self.timestep, numSolverIterations=5, numSubSteps=2)
示例9: reset_simulation
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def reset_simulation(self):
self.terminated = 0
# --- reset simulation --- #
p.resetSimulation(physicsClientId=self._physics_client_id)
p.setPhysicsEngineParameter(numSolverIterations=150, physicsClientId=self._physics_client_id)
p.setTimeStep(self._time_step, physicsClientId=self._physics_client_id)
self._env_step_counter = 0
p.setGravity(0, 0, -9.8, physicsClientId=self._physics_client_id)
# --- reset robot --- #
self._robot.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
# --- reset world --- #
self._world.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
# --- draw some reference frames in the simulation for debugging --- #
self._robot.debug_gui()
self._world.debug_gui()
p.stepSimulation(physicsClientId=self._physics_client_id)
示例10: reset_simulation
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def reset_simulation(self):
self.terminated = 0
# --- reset simulation --- #
p.resetSimulation(physicsClientId=self._physics_client_id)
p.setPhysicsEngineParameter(numSolverIterations=150, physicsClientId=self._physics_client_id)
p.setTimeStep(self._time_step, physicsClientId=self._physics_client_id)
self._env_step_counter = 0
p.setGravity(0, 0, -9.8, physicsClientId=self._physics_client_id)
# --- reset robot --- #
self._robot.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
# --- reset world --- #
self._world.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
if self._use_IK:
self._hand_pose = self._robot._home_hand_pose
# --- draw some reference frames in the simulation for debugging --- #
self._robot.debug_gui()
self._world.debug_gui()
p.stepSimulation(physicsClientId=self._physics_client_id)
示例11: reset_simulation
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def reset_simulation(self):
self.terminated = 0
# --- reset simulation --- #
p.resetSimulation(physicsClientId=self._physics_client_id)
p.setPhysicsEngineParameter(numSolverIterations=150, physicsClientId=self._physics_client_id)
p.setTimeStep(self._timeStep, physicsClientId=self._physics_client_id)
self._env_step_counter = 0
p.setGravity(0, 0, -9.8, physicsClientId=self._physics_client_id)
# --- reset robot --- #
self._robot.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
# --- reset world --- #
self._world.reset()
# Let the world run for a bit
for _ in range(100):
p.stepSimulation(physicsClientId=self._physics_client_id)
if self._use_IK:
self._hand_pose = self._robot._home_hand_pose
# --- draw some reference frames in the simulation for debugging --- #
self._robot.debug_gui()
self._world.debug_gui()
p.stepSimulation(physicsClientId=self._physics_client_id)
示例12: __init__
# 需要導入模塊: import pybullet [as 別名]
# 或者: from pybullet import setPhysicsEngineParameter [as 別名]
def __init__(self, config, gpu_count=0):
"""Initialize the minitaur gym environment.
Args:
distance_weight: The weight of the distance term in the reward.
energy_weight: The weight of the energy term in the reward.
shake_weight: The weight of the vertical shakiness term in the reward.
drift_weight: The weight of the sideways drift term in the reward.
distance_limit: The maximum distance to terminate the episode.
observation_noise_stdev: The standard deviation of observation noise.
leg_model_enabled: Whether to use a leg motor to reparameterize the action
space.
hard_reset: Whether to wipe the simulation and load everything when reset
is called. If set to false, reset just place the minitaur back to start
position and set its pose to initial configuration.
env_randomizer: An EnvRandomizer to randomize the physical properties
during reset().
"""
self.config = self.parse_config(config)
assert(self.config["envname"] == self.__class__.__name__ or self.config["envname"] == "TestEnv")
CameraRobotEnv.__init__(self, self.config, gpu_count,
scene_type="building",
tracking_camera=tracking_camera)
self.robot_introduce(Minitaur(self.config, env=self,
pd_control_enabled=self.pd_control_enabled,
accurate_motor_model_enabled=self.accurate_motor_model_enabled))
self.scene_introduce()
self.gui = self.config["mode"] == "gui"
self.total_reward = 0
self.total_frame = 0
self.action_repeat = 1
## Important: PD controller needs more accuracy
'''if self.pd_control_enabled or self.accurate_motor_model_enabled:
self.time_step = self.config["speed"]["timestep"]
self.time_step /= self.NUM_SUBSTEPS
self.num_bullet_solver_iterations /= self.NUM_SUBSTEPS
self.action_repeat *= self.NUM_SUBSTEPS
pybullet.setPhysicsEngineParameter(physicsClientId=self.physicsClientId,
numSolverIterations=int(self.num_bullet_solver_iterations))
pybullet.setTimeStep(self.time_step, physicsClientId=self.physicsClientId)
'''
pybullet.setPhysicsEngineParameter(physicsClientId=self.physicsClientId,
numSolverIterations=int(self.num_bullet_solver_iterations))
self._observation = []
self._last_base_position = [0, 0, 0]
self._action_bound = self.action_bound
self._env_randomizer = self.env_randomizer
if self._env_randomizer is not None:
self._env_randomizer.randomize_env(self)
self._objectives = []
self.viewer = None
self.Amax = [0] * 8