9 #include "imstkDynamicObject.h" 10 #include "imstkMacros.h" 11 #include "imstkPbdConstraint.h" 44 LOG(FATAL) <<
"Set the PbdModel on the PbdObject before trying to acquire the body";
52 void setDynamicalModel(std::shared_ptr<AbstractDynamicalModel> dynaModel)
override;
72 const std::vector<std::shared_ptr<PbdConstraint>>& getCellConstraints(
int cellId)
74 return m_pbdBody->cellConstraintMap[cellId];
Represents a pbd body in the model. This is a data only object. It does no function. PbdBody can be of different types. The types effect what properties it has.
void setDeformBodyFromGeometry(PbdBody &body, std::shared_ptr< PointSet > geom)
Creates a deformable PbdBody from Geometry.
Base class for scene objects that move and/or deform.
std::shared_ptr< PbdModel > getPbdModel()
std::shared_ptr< PbdBody > m_pbdBody
Handle to this object in the model/system.
bool initialize() override
Initialize the Pbd scene object.
void setBodyFromGeometry()
Sets the PbdBody representing this object given its geometry.
std::shared_ptr< PbdModel > m_pbdModel
Pbd mathematical model.
void computeCellConstraintMap()
Base class for scene objects that move and/or deform under position based dynamics formulation...
std::shared_ptr< PbdBody > getPbdBody()
Returns body in the model.
void setDynamicalModel(std::shared_ptr< AbstractDynamicalModel > dynaModel) override
Sets the model, and creates the body within the model.
void setRigidBody(PbdBody &body)
Creates a rigid PbdBody from values.
void updatePhysicsGeometry() override
Update physics geometry, overrided to set transform should the PbdObject be a rigid body...