Turn off self-collision for FixJointBoxes example
This commit is contained in:
@@ -75,6 +75,7 @@ public:
|
|||||||
if (i > 0)
|
if (i > 0)
|
||||||
{
|
{
|
||||||
m_robotSim.createConstraint(cubeIds[i], -1, cubeIds[i - 1], -1, &jointInfo);
|
m_robotSim.createConstraint(cubeIds[i], -1, cubeIds[i - 1], -1, &jointInfo);
|
||||||
|
m_robotSim.setCollisionFilterGroupMask(cubeIds[i], -1, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_robotSim.loadURDF("plane.urdf");
|
m_robotSim.loadURDF("plane.urdf");
|
||||||
|
|||||||
@@ -2417,3 +2417,25 @@ void b3RobotSimulatorClientAPI_NoDirect::setAdditionalSearchPath(const std::stri
|
|||||||
statusHandle = b3SubmitClientCommandAndWaitStatus(sm, commandHandle);
|
statusHandle = b3SubmitClientCommandAndWaitStatus(sm, commandHandle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void b3RobotSimulatorClientAPI_NoDirect::setCollisionFilterGroupMask(int bodyUniqueIdA, int linkIndexA, int collisionFilterGroup, int collisionFilterMask)
|
||||||
|
{
|
||||||
|
int physicsClientId = 0;
|
||||||
|
b3PhysicsClientHandle sm = m_data->m_physicsClientHandle;
|
||||||
|
if (sm == 0)
|
||||||
|
{
|
||||||
|
b3Warning("Not connected");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
b3SharedMemoryCommandHandle commandHandle;
|
||||||
|
b3SharedMemoryStatusHandle statusHandle;
|
||||||
|
int statusType;
|
||||||
|
|
||||||
|
commandHandle = b3CollisionFilterCommandInit(sm);
|
||||||
|
b3SetCollisionFilterGroupMask(commandHandle, bodyUniqueIdA, linkIndexA, collisionFilterGroup, collisionFilterMask);
|
||||||
|
|
||||||
|
statusHandle = b3SubmitClientCommandAndWaitStatus(sm, commandHandle);
|
||||||
|
statusType = b3GetStatusType(statusHandle);
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -664,6 +664,8 @@ public:
|
|||||||
return SHARED_MEMORY_MAGIC_NUMBER;
|
return SHARED_MEMORY_MAGIC_NUMBER;
|
||||||
}
|
}
|
||||||
void setAdditionalSearchPath(const std::string &path);
|
void setAdditionalSearchPath(const std::string &path);
|
||||||
|
|
||||||
|
void setCollisionFilterGroupMask(int bodyUniqueIdA, int linkIndexA, int collisionFilterGroup, int collisionFilterMask);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //B3_ROBOT_SIMULATOR_CLIENT_API_NO_DIRECT_H
|
#endif //B3_ROBOT_SIMULATOR_CLIENT_API_NO_DIRECT_H
|
||||||
|
|||||||
Reference in New Issue
Block a user