22BulletPersistentManifold::
23BulletPersistentManifold(btPersistentManifold *manifold) : _manifold(manifold) {
30PN_stdfloat BulletPersistentManifold::
31get_contact_breaking_threshold()
const {
32 LightMutexHolder holder(BulletWorld::get_global_lock());
34 return (PN_stdfloat)_manifold->getContactBreakingThreshold();
40PN_stdfloat BulletPersistentManifold::
41get_contact_processing_threshold()
const {
42 LightMutexHolder holder(BulletWorld::get_global_lock());
44 return (PN_stdfloat)_manifold->getContactProcessingThreshold();
50void BulletPersistentManifold::
52 nassertv_always(_manifold !=
nullptr);
54 LightMutexHolder holder(BulletWorld::get_global_lock());
56 _manifold->clearManifold();
64 nassertr_always(_manifold !=
nullptr,
nullptr);
66 LightMutexHolder holder(BulletWorld::get_global_lock());
68#if BT_BULLET_VERSION >= 281
69 const btCollisionObject *obj = _manifold->getBody0();
71 const btCollisionObject *obj = (btCollisionObject *)_manifold->getBody0();
74 return (obj) ? (PandaNode *)obj->getUserPointer():
nullptr;
82 nassertr_always(_manifold !=
nullptr,
nullptr);
84 LightMutexHolder holder(BulletWorld::get_global_lock());
86#if BT_BULLET_VERSION >= 281
87 const btCollisionObject *obj = _manifold->getBody1();
89 const btCollisionObject *obj = (btCollisionObject *)_manifold->getBody1();
92 return (obj) ? (PandaNode *)obj->getUserPointer():
nullptr;
98int BulletPersistentManifold::
99get_num_manifold_points()
const {
100 nassertr_always(_manifold !=
nullptr, 0);
102 LightMutexHolder holder(BulletWorld::get_global_lock());
104 return _manifold->getNumContacts();
111get_manifold_point(
int idx)
const {
112 LightMutexHolder holder(BulletWorld::get_global_lock());
114 nassertr(idx < _manifold->getNumContacts(),
nullptr)
116 return new BulletManifoldPoint(_manifold->getContactPoint(idx));
122BulletManifoldPoint BulletPersistentManifold::
123__get_manifold_point(
int idx)
const {
124 LightMutexHolder holder(BulletWorld::get_global_lock());
125 return BulletManifoldPoint(_manifold->getContactPoint(idx));
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A basic node of the scene graph or data graph.