Commit Graph
322 Commits
Author SHA1 Message Date
Erwin Coumans 1640eef937 pybullet: enable getMeshData for multibody/rigid body (and filter on collisionShapeIndex for compound shapes) 2020-03-17 00:38:12 -07:00
Erwin Coumans 27fbbfee7f pybullet removeAllParameters (sliders, buttons)
pybullet addUserDebugParameter adds button instead of slider, if min > max.
2020-03-16 21:29:30 -07:00
Erwin Coumans f0528db5e9 embed V-HACD directly into Pybullet to make it easier to use:
pip3 install pybulle
import pybullet as p
p.connect(p.DIRECT)
p.vhacd("teddy.obj", "teddy_large_newout.obj", "newlog.txt", depth=2,resolution=1000000)
2020-03-16 00:38:52 -07:00
Xuchen Han 62537436f2 more Motor->NonContactInner 2020-03-02 16:03:27 -08:00
Xuchen Han 4f36e09747 Motor->NonContactInner 2020-03-02 16:00:40 -08:00
Xuchen Han 84117b8440 separate motor constraint iterations and expose API 2020-02-26 14:11:41 -08:00
Erwin Coumans 6910fc9229 initialize capsule from_to field 2020-02-21 02:05:01 -08:00
Erwin Coumans 6afa0a463d unsupported: expose collisionMargin to changeDynamics/getDynamicsInfo.
add cube_convex.urdf for testing this collisionMargin. Test script:
import pybullet as p
import time
p.connect(p.GUI)
plane = p.loadURDF("plane_implicit.urdf")
cube = p.loadURDF("cube_convex.urdf",[0,0,1])
p.setGravity(0,0,-10)
while (1):
	p.stepSimulation()
	pts = p.getContactPoints()
	p.changeDynamics(plane,-1,collisionMargin=0.3)
	p.changeDynamics(cube,-1,collisionMargin=0.3)
	print("===================")
	print("cube pos=", p.getBasePositionAndOrientation(cube)[0])
	print("margin=", p.getDynamicsInfo(plane,-1)[11])
	#time.sleep(1./10.)
2020-02-14 17:36:40 -08:00
Tigran Gasparian 34db76d263 Adds an option to syncUserData to specify the bodies for which to sync. 2020-01-23 14:46:33 +01:00
Erwin Coumans 7a4023430a fix pybullet.submitProfileTiming 2019-12-19 18:05:41 -08:00
Chuyuan Fu 0f477e27ae add link index to setdamping C APIs. If link index is not set, the command is igored for rigidbody 2019-12-17 13:48:34 -08:00
erwincoumans 44f21e462a Merge pull request #2509 from xhan0619/separate-bending-stiffness
Separate in-plane and bending stiffness for mass spring model
2019-12-04 07:34:28 -08:00
Xuchen Han 7bce5d61f4 separate in-plane and bending stiffness for mass spring model for easier parameter tuning 2019-11-27 11:40:10 -08:00
Erwin Coumans d9ab536682 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2019-11-21 19:37:11 -08:00
Erwin Coumans 824fd6410f Use -> Set in API 2019-11-21 19:07:11 -08:00
Xuchen Han 00add5490f fix separate render and sim mesh 2019-11-19 23:10:08 -08:00
Xuchen Han 64e5e007e3 load render mesh from command 2019-11-19 21:07:26 -08:00
Erwin Coumans 96deb42aa5 pybullet.createSoftBodyAnchor 2019-11-19 19:20:08 -08:00
Erwin Coumans 1f6d504e44 fix memory issues in btSparseSDF.h
(hash function on structure with uninitialized padding, and  Reset not called in destructor)
expose sparseSdfVoxelSize in PyBullet.setPhysicsEngineParameter
don't call deformable wireframe drawing in the wrong thread/place (it can cause crashes)
2019-11-18 10:22:56 -08:00
Xuchen Han a86710c5b6 add python binding to allow loading deformable objects 2019-11-15 21:25:11 -08:00
Erwin Coumans 72e0e7c223 fix load_soft_body.py example.
add optional flags in pybullet.resetSimulation.
fix compile issue due to SKIP_DEFORMABLE_WORLD
fix issue in .obj importer (todo: replace with tiny_obj_loader)
todo: replace std::ifstream fs; by fileIO usage.
2019-11-14 21:20:42 -08:00
Chuyuan Fu 913400eba1 add SOLVER_USE_ARTICULATED_WARMSTARTING option and APIs
fix compile
2019-10-23 21:36:26 -07:00
Xuchen Han 3ae193ff15 bool->int 2019-10-15 15:43:26 -07:00
Xuchen Han e13578fee3 add option to turn self-collision on/off 2019-10-15 13:47:55 -07:00
Xuchen Han ec91a0ffa4 configure damping coefficients for neohookean models 2019-10-15 13:47:54 -07:00
Xuchen Han 3dcfcda19a typo fix 2019-09-28 14:44:41 -07:00
Xuchen Han 1ded85e62e remove extra gravity field 2019-09-04 18:49:44 -07:00
Xuchen Han 0b391798b7 hook deformable world into the physics server 2019-09-04 18:48:00 -07:00
Erwin Coumans 88d1788ee5 PyBullet: allow to update an existing heightfield shape
Also, use flags = p.GEOM_CONCAVE_INTERNAL_EDGE to enable internal edge filtering for heightfield (disabled by default)
See https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/examples/heightfield.py
2019-08-14 21:06:10 -07:00
Erwin Coumans f9b232b153 pybullet: allow programmatic creation of heightfield. See https://github.com/erwincoumans/bullet3/tree/master/examples/pybullet/examples/heightfield.py
premake4: allow to build example browser without C++11, re-enable stable PD control plugin using --enable_stable_pd=True
2019-08-11 13:59:24 -07:00
Chuyuan Fu 2e64b27a31 bindings for setting warmstarting factor
fix space
2019-08-06 15:53:31 -07:00
Erwin Coumans 7263439c4b improved for inserting profile timings from Python, to analyzer performance of pybullet programs.
See examples/pybullet/examples/profileTiming.py for an example. Note that python and c++ is properly interleaved.
Open a timings with a name, close the timing without a name. Note that timings can be recursive, added/popped as a stack.
2019-08-01 19:12:16 -07:00
erwincoumans 1feb186204 Update PhysicsClientC_API.cpp
use B3_PI definition
2019-07-30 17:43:24 -07:00
Erwin Coumans 51fba6f78d export btHeightfieldTerrainShape to PyBullet. Note that tinyrenderer doesn't support rendering it (it would be too slow on CPU)
fix rare getKeyboardEvents threading issue
change texture color to default plane.urdf blue
2019-07-29 20:23:38 -07:00
Erwin Coumans 39a4e8dcd9 Implement faster array versions of PyBullet: getJointStatesMultiDof, getLinkStates, setJointMotorControlMultiDofArray, resetJointStatesMultiDof,
Implement StablePD in C++ through setJointMotorControlMultiDofArray method for pybullet_envs.deep_mimic, see testHumanoid.py and examples/pybullet/examples/humanoidMotionCapture.py
Minor fix in ChromeTraceUtil in case startTime>endTime (why would it happen?)
2019-07-21 13:08:22 -07:00
Erwin Coumans 31688ffb34 fix in multi-endeffector IK, calculate jacobian uses dofs without base, fix premake build of some projects 2019-07-11 22:22:35 -07:00
Erwin Coumans ee9575167d expose PyBullet.calculateInverseKinematics2 that allows to specify multiple IK end effector locations (not multiple orientations)
usage example:
jointPoses = p.calculateInverseKinematics2(bodyUniqueId, [endEffectorLinkIndices], [endEffectorTargetWorldPositions])
2019-07-10 17:21:18 -07:00
Erwin Coumans ed4515ae17 for the GraphicsServer, expose a sync transform interval: only synchronize the transform once the stepSimulation exceeds this time interval.
(for example, run the simulation at 1kHz but sync the graphics transforms to remove graphics server at 30Hz)
2019-06-19 09:45:29 -07:00
Erwin Coumans c3b7f39aaf expose shadowMapResolution (texture resolution) and shadowMapWorldSize (size in meters in world space)
expose pybullet.ConfigureOpenGLVisualizerRequest(lightPosition=[x,y,z], shadowMapWorldSize=10.5, shadowMapResolution=16384)
See examples/pybullet/examples/configureDebugVisualizer.py for an example.
This reimplements https://github.com/bulletphysics/bullet3/pull/2295 but without creating a new command/status and explicitly referring to the debug visualizer
(since the 'getCameraImage' also has a lightPosition)
2019-06-19 09:01:16 -07:00
Erwin Coumans 7e76ee0ad7 make pybullet.getMeshData work for softbody 2019-06-17 21:43:38 -07:00
Chuyuan Fu 229e87c3c9 get mesh data api
fix compile

fix typo
2019-06-17 19:00:53 -07:00
Chuyuan Fu 3fb0a7c19b add set starting position and orientation to softbody 2019-05-01 16:56:40 -07:00
Chuyuan Fu 5b5307cf14 load softbody API
update warning message

format
2019-04-25 15:40:15 -07:00
erwincoumans e97a7d77af only report solver analytics if enabled using setPhysicsEngineParameter(reportSolverAnalytics=1) 2019-04-14 18:20:20 -07:00
erwincoumans 5ff52e47d9 report constraint solver analytics data, currently for each island the number of solver iterations used and remaining residual error. 2019-04-11 22:19:02 -07:00
erwincoumans 6951aaf26a implement PyBullet removeState command. Fixes Issue #2163
https://github.com/bulletphysics/bullet3/issues/2163
2019-04-03 20:06:40 -07:00
Erwin Coumans 4898887265 temporary disable experimental BulletRobotics examples 2019-03-26 15:07:55 -07:00
mbennice 8fcb8d0694 Update to bullet formatting 2019-03-17 11:52:56 -07:00
mbennice d41e449d6f Adds a timestamp as a physics parameter. 2019-03-14 15:32:45 -07:00
erwincoumans 4ea907aacf expose maxJointVelocity through PyBullet.changeDynamics, this Fixes Issue #1890
bump up PyBullet to version 2.4.8
2019-03-09 09:23:16 -08:00