Skip to content

Commit faeee1f

Browse files
committed
- extended and modified Python interface
- more Python examples - bugfixes
1 parent dac7a9d commit faeee1f

28 files changed

+731
-430
lines changed

Changelog.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
2.0.1
2+
- extended and modified Python interface
3+
- more Python examples
4+
- bugfixes
5+
16
2.0.0
27
- added Python binding
38
- cleaned up demos

Demos/DistanceFieldDemos/ClothCollisionDemo.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -257,13 +257,13 @@ void buildModel ()
257257
Simulation::getCurrent()->getTimeStep()->setCollisionDetection(*model, &cd);
258258
cd.setTolerance(static_cast<Real>(0.05));
259259

260-
const std::vector<Vector3r> *vertices1 = rb[0]->getGeometry().getVertexDataLocal().getVertices();
261-
const unsigned int nVert1 = static_cast<unsigned int>(vertices1->size());
262-
cd.addCollisionBox(0, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices1)[0], nVert1, Vector3r(100.0, 1.0, 100.0));
260+
const std::vector<Vector3r> &vertices1 = rb[0]->getGeometry().getVertexDataLocal().getVertices();
261+
const unsigned int nVert1 = static_cast<unsigned int>(vertices1.size());
262+
cd.addCollisionBox(0, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices1.data(), nVert1, Vector3r(100.0, 1.0, 100.0));
263263

264-
const std::vector<Vector3r> *vertices2 = rb[1]->getGeometry().getVertexDataLocal().getVertices();
265-
const unsigned int nVert2 = static_cast<unsigned int>(vertices2->size());
266-
cd.addCollisionTorus(1, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices2)[0], nVert2, Vector2r(2.0, 1.0));
264+
const std::vector<Vector3r> &vertices2 = rb[1]->getGeometry().getVertexDataLocal().getVertices();
265+
const unsigned int nVert2 = static_cast<unsigned int>(vertices2.size());
266+
cd.addCollisionTorus(1, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices2.data(), nVert2, Vector2r(2.0, 1.0));
267267

268268
SimulationModel::TriangleModelVector &tm = model->getTriangleModels();
269269
ParticleData &pd = model->getParticles();

Demos/DistanceFieldDemos/DeformableCollisionDemo.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,13 +242,13 @@ void buildModel ()
242242
Simulation::getCurrent()->getTimeStep()->setCollisionDetection(*model, &cd);
243243
cd.setTolerance(static_cast<Real>(0.05));
244244

245-
const std::vector<Vector3r> *vertices1 = rb[0]->getGeometry().getVertexDataLocal().getVertices();
246-
const unsigned int nVert1 = static_cast<unsigned int>(vertices1->size());
247-
cd.addCollisionBox(0, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices1)[0], nVert1, Vector3r(100.0, 1.0, 100.0));
245+
const std::vector<Vector3r> &vertices1 = rb[0]->getGeometry().getVertexDataLocal().getVertices();
246+
const unsigned int nVert1 = static_cast<unsigned int>(vertices1.size());
247+
cd.addCollisionBox(0, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices1.data(), nVert1, Vector3r(100.0, 1.0, 100.0));
248248

249-
const std::vector<Vector3r> *vertices2 = rb[1]->getGeometry().getVertexDataLocal().getVertices();
250-
const unsigned int nVert2 = static_cast<unsigned int>(vertices2->size());
251-
cd.addCollisionTorus(1, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices2)[0], nVert2, Vector2r(3.0, 1.5));
249+
const std::vector<Vector3r> &vertices2 = rb[1]->getGeometry().getVertexDataLocal().getVertices();
250+
const unsigned int nVert2 = static_cast<unsigned int>(vertices2.size());
251+
cd.addCollisionTorus(1, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices2.data(), nVert2, Vector2r(3.0, 1.5));
252252

253253
SimulationModel::TetModelVector &tm = model->getTetModels();
254254
ParticleData &pd = model->getParticles();

Demos/DistanceFieldDemos/RigidBodyCollisionDemo.cpp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,10 @@ void createBodyModel()
260260
vdBox, meshBox, Vector3r(100.0, 1.0, 100.0));
261261
rb[rbIndex]->setMass(0.0);
262262

263-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
264-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
263+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
264+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
265265

266-
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, Vector3r(100.0, 1.0, 100.0));
266+
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, Vector3r(100.0, 1.0, 100.0));
267267
rbIndex++;
268268

269269
Real current_z = startz_piles;
@@ -280,9 +280,9 @@ void createBodyModel()
280280
Vector3r(0.5, 10.0, 0.5));
281281
rb[rbIndex]->setMass(0.0);
282282

283-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
284-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
285-
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, Vector2r(0.5, 10.0));
283+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
284+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
285+
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, Vector2r(0.5, 10.0));
286286
current_x += dx_piles;
287287
rbIndex++;
288288
}
@@ -319,9 +319,9 @@ void createBodyModel()
319319
vdTorus, meshTorus,
320320
Vector3r(2.0, 2.0, 2.0));
321321

322-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
323-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
324-
cd.addCollisionTorus(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, Vector2r(2.0, 1.0));
322+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
323+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
324+
cd.addCollisionTorus(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, Vector2r(2.0, 1.0));
325325
}
326326
else if (currentType == 1)
327327
{
@@ -331,9 +331,9 @@ void createBodyModel()
331331
vdCube, meshCube,
332332
Vector3r(4.0, 1.0, 1.0));
333333

334-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
335-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
336-
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, Vector3r(4.0, 1.0, 1.0));
334+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
335+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
336+
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, Vector3r(4.0, 1.0, 1.0));
337337
}
338338
else if (currentType == 2)
339339
{
@@ -342,9 +342,9 @@ void createBodyModel()
342342
q, //Quaternionr(1.0, 0.0, 0.0, 0.0),
343343
vdSphere, meshSphere);
344344

345-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
346-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
347-
cd.addCollisionSphere(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, 2.0);
345+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
346+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
347+
cd.addCollisionSphere(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, 2.0);
348348
}
349349
else if (currentType == 3)
350350
{
@@ -354,9 +354,9 @@ void createBodyModel()
354354
vdCylinder, meshCylinder,
355355
Vector3r(0.75, 5.0, 0.75));
356356

357-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
358-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
359-
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, Vector2r(0.75, 5.0));
357+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
358+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
359+
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, Vector2r(0.75, 5.0));
360360
}
361361
currentType = (currentType + 1) % 4;
362362
current_z += dz_bodies;

Demos/SceneLoaderDemo/SceneLoaderDemo.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -662,29 +662,29 @@ void readScene(const bool readFile)
662662
rb[i]->setRestitutionCoeff(rbd.m_restitutionCoeff);
663663
rb[i]->setFrictionCoeff(rbd.m_frictionCoeff);
664664

665-
const std::vector<Vector3r> *vertices = rb[i]->getGeometry().getVertexDataLocal().getVertices();
666-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
665+
const std::vector<Vector3r> &vertices = rb[i]->getGeometry().getVertexDataLocal().getVertices();
666+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
667667

668668
switch (rbd.m_collisionObjectType)
669669
{
670670
case SceneLoader::No_Collision_Object: break;
671671
case SceneLoader::Sphere:
672-
cd.addCollisionSphere(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale[0], rbd.m_testMesh, rbd.m_invertSDF);
672+
cd.addCollisionSphere(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale[0], rbd.m_testMesh, rbd.m_invertSDF);
673673
break;
674674
case SceneLoader::Box:
675-
cd.addCollisionBox(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
675+
cd.addCollisionBox(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
676676
break;
677677
case SceneLoader::Cylinder:
678-
cd.addCollisionCylinder(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
678+
cd.addCollisionCylinder(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
679679
break;
680680
case SceneLoader::Torus:
681-
cd.addCollisionTorus(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
681+
cd.addCollisionTorus(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
682682
break;
683683
case SceneLoader::HollowSphere:
684-
cd.addCollisionHollowSphere(i, PBD::CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale[0], rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
684+
cd.addCollisionHollowSphere(i, PBD::CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale[0], rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
685685
break;
686686
case SceneLoader::HollowBox:
687-
cd.addCollisionHollowBox(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale, rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
687+
cd.addCollisionHollowBox(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale, rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
688688
break;
689689
case SceneLoader::SDF:
690690
{
@@ -695,10 +695,10 @@ void readScene(const bool readFile)
695695
const string resStr = to_string(rbd.m_resolutionSDF[0]) + "_" + to_string(rbd.m_resolutionSDF[1]) + "_" + to_string(rbd.m_resolutionSDF[2]);
696696
const std::string modelFileName = FileSystem::getFileNameWithExt(rbd.m_modelFile);
697697
const string sdfFileName = FileSystem::normalizePath(cachePath + "/" + modelFileName + "_" + resStr + ".csdf");
698-
cd.addCubicSDFCollisionObject(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, distanceFields[sdfFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
698+
cd.addCubicSDFCollisionObject(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, distanceFields[sdfFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
699699
}
700700
else
701-
cd.addCubicSDFCollisionObject(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, distanceFields[rbd.m_collisionObjectFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
701+
cd.addCubicSDFCollisionObject(i, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, distanceFields[rbd.m_collisionObjectFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
702702
break;
703703
}
704704
}
@@ -1076,7 +1076,7 @@ void exportOBJ()
10761076
{
10771077
const IndexedFaceMesh& mesh = model->getTriangleModels()[i]->getParticleMesh();
10781078
const unsigned int offset = model->getTriangleModels()[i]->getIndexOffset();
1079-
const Vector3r* x = model->getParticles().getVertices()->data();
1079+
const Vector3r* x = model->getParticles().getVertices().data();
10801080

10811081
std::string fileName = "triangle_model";
10821082
fileName = fileName + std::to_string(i) + "_" + std::to_string(frameCounter) + ".obj";
@@ -1089,7 +1089,7 @@ void exportOBJ()
10891089
{
10901090
const IndexedFaceMesh& mesh = model->getTetModels()[i]->getVisMesh();
10911091
const unsigned int offset = model->getTetModels()[i]->getIndexOffset();
1092-
const Vector3r* x = model->getTetModels()[i]->getVisVertices().getVertices()->data();
1092+
const Vector3r* x = model->getTetModels()[i]->getVisVertices().getVertices().data();
10931093

10941094
std::string fileName = "tet_model";
10951095
fileName = fileName + std::to_string(i) + "_" + std::to_string(frameCounter) + ".obj";
@@ -1101,7 +1101,7 @@ void exportOBJ()
11011101
for (unsigned int i = 0; i < model->getRigidBodies().size(); i++)
11021102
{
11031103
const IndexedFaceMesh& mesh = model->getRigidBodies()[i]->getGeometry().getMesh();
1104-
const Vector3r *x = model->getRigidBodies()[i]->getGeometry().getVertexData().getVertices()->data();
1104+
const Vector3r *x = model->getRigidBodies()[i]->getGeometry().getVertexData().getVertices().data();
11051105

11061106
std::string fileName = "rigid_body";
11071107
fileName = fileName + std::to_string(i) + "_" + std::to_string(frameCounter) + ".obj";

Demos/StiffRodsDemos/DirectPositionBasedSolverForStiffRodsDemo.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -701,29 +701,29 @@ void readScene()
701701
rb[rbIndex]->setRestitutionCoeff(rbd.m_restitutionCoeff);
702702
rb[rbIndex]->setFrictionCoeff(rbd.m_frictionCoeff);
703703

704-
const std::vector<Vector3r> *vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
705-
const unsigned int nVert = static_cast<unsigned int>(vertices->size());
704+
const std::vector<Vector3r> &vertices = rb[rbIndex]->getGeometry().getVertexDataLocal().getVertices();
705+
const unsigned int nVert = static_cast<unsigned int>(vertices.size());
706706

707707
switch (rbd.m_collisionObjectType)
708708
{
709709
case SceneLoader::No_Collision_Object: break;
710710
case SceneLoader::Sphere:
711-
cd.addCollisionSphere(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale[0], rbd.m_testMesh, rbd.m_invertSDF);
711+
cd.addCollisionSphere(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale[0], rbd.m_testMesh, rbd.m_invertSDF);
712712
break;
713713
case SceneLoader::Box:
714-
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
714+
cd.addCollisionBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
715715
break;
716716
case SceneLoader::Cylinder:
717-
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
717+
cd.addCollisionCylinder(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
718718
break;
719719
case SceneLoader::Torus:
720-
cd.addCollisionTorus(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
720+
cd.addCollisionTorus(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale.head<2>(), rbd.m_testMesh, rbd.m_invertSDF);
721721
break;
722722
case SceneLoader::HollowSphere:
723-
cd.addCollisionHollowSphere(rbIndex, PBD::CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale[0], rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
723+
cd.addCollisionHollowSphere(rbIndex, PBD::CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale[0], rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
724724
break;
725725
case SceneLoader::HollowBox:
726-
cd.addCollisionHollowBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, rbd.m_collisionObjectScale, rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
726+
cd.addCollisionHollowBox(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, rbd.m_collisionObjectScale, rbd.m_thicknessSDF, rbd.m_testMesh, rbd.m_invertSDF);
727727
break;
728728
case SceneLoader::SDF:
729729
{
@@ -734,10 +734,10 @@ void readScene()
734734
const string resStr = to_string(rbd.m_resolutionSDF[0]) + "_" + to_string(rbd.m_resolutionSDF[1]) + "_" + to_string(rbd.m_resolutionSDF[2]);
735735
const std::string modelFileName = FileSystem::getFileNameWithExt(rbd.m_modelFile);
736736
const string sdfFileName = FileSystem::normalizePath(cachePath + "/" + modelFileName + "_" + resStr + ".csdf");
737-
cd.addCubicSDFCollisionObject(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, distanceFields[sdfFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
737+
cd.addCubicSDFCollisionObject(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, distanceFields[sdfFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
738738
}
739739
else
740-
cd.addCubicSDFCollisionObject(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, &(*vertices)[0], nVert, distanceFields[rbd.m_collisionObjectFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
740+
cd.addCubicSDFCollisionObject(rbIndex, CollisionDetection::CollisionObject::RigidBodyCollisionObjectType, vertices.data(), nVert, distanceFields[rbd.m_collisionObjectFileName], rbd.m_collisionObjectScale, rbd.m_testMesh, rbd.m_invertSDF);
741741
break;
742742
}
743743
}

0 commit comments

Comments
 (0)