pybullet fix: accidently enable self-collision

This commit is contained in:
Erwin Coumans
2017-09-07 14:27:00 -07:00
parent 2d0d285377
commit cbe0d0aff2
5 changed files with 7 additions and 4 deletions

View File

@@ -393,7 +393,7 @@ void ConvertURDF2BulletInternal(
btGeneric6DofSpring2Constraint* dof6 = 0; btGeneric6DofSpring2Constraint* dof6 = 0;
//backward compatibility //backward compatibility
if (flags & URDF_ORDER_TYPED_CONSTRAINT ) if (flags & CUF_RESERVED )
{ {
dof6 = creation.createFixedJoint(urdfLinkIndex,*parentRigidBody, *linkRigidBody, offsetInA, offsetInB); dof6 = creation.createFixedJoint(urdfLinkIndex,*parentRigidBody, *linkRigidBody, offsetInA, offsetInB);
} else } else
@@ -427,7 +427,7 @@ void ConvertURDF2BulletInternal(
btGeneric6DofSpring2Constraint* dof6 = 0; btGeneric6DofSpring2Constraint* dof6 = 0;
//backwards compatibility //backwards compatibility
if (flags & URDF_ORDER_TYPED_CONSTRAINT ) if (flags & CUF_RESERVED )
{ {
dof6 = creation.createRevoluteJoint(urdfLinkIndex,*parentRigidBody, *linkRigidBody, offsetInA, offsetInB,jointAxisInJointSpace,jointLowerLimit, jointUpperLimit); dof6 = creation.createRevoluteJoint(urdfLinkIndex,*parentRigidBody, *linkRigidBody, offsetInA, offsetInB,jointAxisInJointSpace,jointLowerLimit, jointUpperLimit);
} else } else

View File

@@ -22,6 +22,7 @@ enum ConvertURDFFlags {
CUF_USE_SELF_COLLISION=8, CUF_USE_SELF_COLLISION=8,
CUF_USE_SELF_COLLISION_EXCLUDE_PARENT=16, CUF_USE_SELF_COLLISION_EXCLUDE_PARENT=16,
CUF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS=32, CUF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS=32,
CUF_RESERVED=64,
}; };
void ConvertURDF2Bullet(const URDFImporterInterface& u2b, void ConvertURDF2Bullet(const URDFImporterInterface& u2b,

View File

@@ -61,7 +61,6 @@ enum UrdfCollisionFlags
URDF_FORCE_CONCAVE_TRIMESH=1, URDF_FORCE_CONCAVE_TRIMESH=1,
URDF_HAS_COLLISION_GROUP=2, URDF_HAS_COLLISION_GROUP=2,
URDF_HAS_COLLISION_MASK=4, URDF_HAS_COLLISION_MASK=4,
URDF_ORDER_TYPED_CONSTRAINT=8,
}; };
struct UrdfMaterialColor struct UrdfMaterialColor

View File

@@ -2416,7 +2416,8 @@ bool PhysicsServerCommandProcessor::processImportedObjects(const char* fileName,
MyMultiBodyCreator creation(m_data->m_guiHelper); MyMultiBodyCreator creation(m_data->m_guiHelper);
u2b.getRootTransformInWorld(rootTrans); u2b.getRootTransformInWorld(rootTrans);
flags |= URDF_ORDER_TYPED_CONSTRAINT; //CUF_RESERVED is a temporary flag, for backward compatibility purposes
flags |= CUF_RESERVED;
ConvertURDF2Bullet(u2b,creation, rootTrans,m_data->m_dynamicsWorld,useMultiBody,u2b.getPathPrefix(),flags); ConvertURDF2Bullet(u2b,creation, rootTrans,m_data->m_dynamicsWorld,useMultiBody,u2b.getPathPrefix(),flags);

View File

@@ -589,6 +589,8 @@ enum eURDF_Flags
URDF_USE_SELF_COLLISION=8,//see CUF_USE_SELF_COLLISION URDF_USE_SELF_COLLISION=8,//see CUF_USE_SELF_COLLISION
URDF_USE_SELF_COLLISION_EXCLUDE_PARENT=16, URDF_USE_SELF_COLLISION_EXCLUDE_PARENT=16,
URDF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS=32, URDF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS=32,
URDF_RESERVED=64,
}; };
enum eUrdfGeomTypes //sync with UrdfParser UrdfGeomTypes enum eUrdfGeomTypes //sync with UrdfParser UrdfGeomTypes