PeriDyno 1.0.0
Loading...
Searching...
No Matches
dyno::RigidBodySystem< TDataType > Class Template Reference

Implementation of a rigid body system containing a variety of rigid bodies with different shapes. More...

#include <RigidBodySystem.h>

Inheritance diagram for dyno::RigidBodySystem< TDataType >:
Collaboration diagram for dyno::RigidBodySystem< TDataType >:

Public Types

typedef TDataType::Real Real
 
typedef TDataType::Coord Coord
 
typedef TDataType::Matrix Matrix
 
typedef dyno::TSphere3D< RealSphere3D
 
typedef dyno::TOrientedBox3D< RealBox3D
 
typedef dyno::Quat< RealTQuat
 
typedef dyno::TContactPair< RealContactPair
 
typedef ::dyno::BallAndSocketJoint< RealBallAndSocketJoint
 
typedef ::dyno::SliderJoint< RealSliderJoint
 
typedef ::dyno::HingeJoint< RealHingeJoint
 
typedef ::dyno::FixedJoint< RealFixedJoint
 
typedef ::dyno::PointJoint< RealPointJoint
 
- Public Types inherited from dyno::Node
template<class T>
using SPtr = std::shared_ptr<T>
 
- Public Types inherited from dyno::OBase
typedef std::vector< FBase * > FieldVector
 
typedef std::map< FieldID, FBase * > FieldMap
 

Public Member Functions

 RigidBodySystem ()
 
 ~RigidBodySystem () override
 
std::shared_ptr< PdActoraddBox (const BoxInfo &box, const RigidBodyInfo &bodyDef, const Real density=Real(100))
 
std::shared_ptr< PdActoraddSphere (const SphereInfo &sphere, const RigidBodyInfo &bodyDef, const Real density=Real(100))
 
std::shared_ptr< PdActoraddTet (const TetInfo &tet, const RigidBodyInfo &bodyDef, const Real density=Real(100))
 
std::shared_ptr< PdActoraddCapsule (const CapsuleInfo &capsule, const RigidBodyInfo &bodyDef, const Real density=Real(100))
 
std::shared_ptr< PdActorcreateRigidBody (const Coord &p, const TQuat &q)
 
std::shared_ptr< PdActorcreateRigidBody (const RigidBodyInfo &bodyDef)
 
void bindBox (const std::shared_ptr< PdActor > actor, const BoxInfo &box, const Real density=Real(100))
 
void bindSphere (const std::shared_ptr< PdActor > actor, const SphereInfo &sphere, const Real density=Real(100))
 
void bindCapsule (const std::shared_ptr< PdActor > actor, const CapsuleInfo &capsule, const Real density=Real(100))
 
BallAndSocketJointcreateBallAndSocketJoint (std::shared_ptr< PdActor > actor1, std::shared_ptr< PdActor > actor2)
 
SliderJointcreateSliderJoint (std::shared_ptr< PdActor > actor1, std::shared_ptr< PdActor > actor2)
 
HingeJointcreateHingeJoint (std::shared_ptr< PdActor > actor1, std::shared_ptr< PdActor > actor2)
 
FixedJointcreateFixedJoint (std::shared_ptr< PdActor > actor1, std::shared_ptr< PdActor > actor2)
 
FixedJointcreateUnilateralFixedJoint (std::shared_ptr< PdActor > actor1)
 
PointJointcreatePointJoint (std::shared_ptr< PdActor > actor1)
 
Mat3f pointInertia (Coord v1)
 
std::string getNodeType () override
 
 DEF_VAR (bool, FrictionEnabled, true, "A toggle to control the friction")
 
 DEF_VAR (bool, GravityEnabled, true, "A toggle to control the gravity")
 
 DEF_VAR (Real, GravityValue, 9.8, "")
 
 DEF_VAR (Real, FrictionCoefficient, 200, "")
 
 DEF_VAR (Real, Slop, 0.0001, "")
 
 DEF_INSTANCE_STATE (DiscreteElements< TDataType >, Topology, "Topology")
 
 DEF_ARRAY_STATE (Real, FrictionCoefficients, DeviceType::GPU, "FrictionCoefficients of rigid bodies")
 
 DEF_ARRAY_STATE (Real, Mass, DeviceType::GPU, "Mass of rigid bodies")
 Rigid Mass.
 
 DEF_ARRAY_STATE (Coord, Center, DeviceType::GPU, "Center of rigid bodies")
 Rigid Position.
 
 DEF_ARRAY_STATE (Coord, Velocity, DeviceType::GPU, "Velocity of rigid bodies")
 Rigid Velocity.
 
 DEF_ARRAY_STATE (Coord, AngularVelocity, DeviceType::GPU, "Angular velocity of rigid bodies")
 Rigid Angular Velocity.
 
 DEF_ARRAY_STATE (Matrix, RotationMatrix, DeviceType::GPU, "Rotation matrix of rigid bodies")
 Rigid Rotation.
 
 DEF_ARRAY_STATE (Matrix, Inertia, DeviceType::GPU, "Inertia matrix")
 
 DEF_ARRAY_STATE (TQuat, Quaternion, DeviceType::GPU, "Quaternion")
 
 DEF_ARRAY_STATE (CollisionMask, CollisionMask, DeviceType::GPU, "Collision mask for each rigid body")
 
 DEF_ARRAY_STATE (Attribute, Attribute, DeviceType::GPU, "Rigid body attributes")
 
 DEF_ARRAY_STATE (Matrix, InitialInertia, DeviceType::GPU, "Initial inertia matrix")
 
int getSamplingPointSize ()
 
DArray2D< Vec3fgetSamples ()
 
DArray2D< Vec3fgetNormals ()
 
- Public Member Functions inherited from dyno::Node
 Node ()
 
 ~Node () override
 
void setName (std::string name)
 
std::string getName () override
 
bool isAutoSync ()
 
bool isAutoHidden ()
 
void setAutoSync (bool con)
 Whether the node can be automatically synchronized when its ancestor is updated.
 
void setAutoHidden (bool con)
 
virtual bool isActive ()
 Check the state of dynamics.
 
virtual void setActive (bool active)
 Set the state of dynamics.
 
virtual bool isVisible ()
 Check the visibility of context.
 
virtual void setVisible (bool visible)
 Set the visibility of context.
 
virtual Real getDt ()
 Simulation timestep.
 
void setDt (Real dt)
 
void setSceneGraph (SceneGraph *scn)
 
SceneGraphgetSceneGraph ()
 
std::vector< NodePort * > & getImportNodes ()
 
std::vector< NodePort * > & getExportNodes ()
 
bool addModule (std::shared_ptr< Module > module)
 Add a module to m_module_list and other special module lists.
 
bool deleteModule (std::shared_ptr< Module > module)
 
template<class TModule>
bool addModule (std::shared_ptr< TModule > tModule)
 Add a speical kind of module.
 
template<class TModule>
bool deleteModule (std::shared_ptr< TModule > tModule)
 
std::list< std::shared_ptr< Module > > & getModuleList ()
 
bool hasModule (std::string name)
 
std::shared_ptr< ModulegetModule (std::string name)
 Get a module by its name.
 
template<class TModule>
std::shared_ptr< TModule > getModule ()
 Get the Module by the module class name.
 
template<class TModule>
std::shared_ptr< TModule > getModule (std::string name)
 
std::shared_ptr< PipelineresetPipeline ()
 
std::shared_ptr< AnimationPipelineanimationPipeline ()
 
std::shared_ptr< GraphicsPipelinegraphicsPipeline ()
 
template<class TModule>
std::shared_ptr< TModule > addModule (std::string name)
 
void update ()
 Called every time interval.
 
void updateGraphicsContext ()
 
void reset ()
 
virtual NBoundingBox boundingBox ()
 
bool connect (NodePort *nPort)
 Depth-first tree traversal.
 
bool disconnect (NodePort *nPort)
 
bool attachField (FBase *field, std::string name, std::string desc, bool autoDestroy=true) override
 Attach a field to Node.
 
std::vector< NodePort * > & getAllNodePorts ()
 
uint sizeOfNodePorts ()
 
uint sizeOfImportNodes () const
 
uint sizeOfExportNodes () const
 
void setForceUpdate (bool b)
 
 DEF_VAR_STATE (Real, ElapsedTime, 0, "Elapsed Time")
 
 DEF_VAR_STATE (Real, TimeStep, Real(0.033), "Time step size")
 
 DEF_VAR_STATE (uint, FrameNumber, 0, "Frame number")
 
- Public Member Functions inherited from dyno::OBase
 OBase ()
 
 ~OBase () override
 
virtual std::string caption ()
 Return the caption.
 
virtual bool captionVisible ()
 Whether to hide the caption in the GUI.
 
virtual std::string description ()
 Return a description for the node or module, override this function to support user-defined description.
 
bool addField (FBase *data)
 Add a field to Base FieldID will be set to the name of Field by default.
 
bool addField (FieldID name, FBase *data)
 Add a field to Base.
 
bool addFieldAlias (FieldID name, FBase *data)
 
bool addFieldAlias (FieldID name, FBase *data, FieldMap &fieldAlias)
 
bool findField (FBase *data)
 Find a field by its pointer.
 
bool findFieldAlias (const FieldID name)
 Find a field by its name.
 
bool findFieldAlias (const FieldID name, FieldMap &fieldAlias)
 Find a field in fieldAlias by its name This function is typically called by other functions.
 
bool removeField (FBase *data)
 Remove a field by its pointer.
 
bool removeFieldAlias (const FieldID name)
 Remove a field by its name.
 
bool removeFieldAlias (const FieldID name, FieldMap &fieldAlias)
 
FBasegetField (const FieldID name)
 Return a field by its name.
 
std::vector< FBase * > & getAllFields ()
 
template<typename T>
TgetField (FieldID name)
 
bool isAllFieldsReady ()
 Check the completeness of all required fields.
 
std::vector< FieldIDgetFieldAlias (FBase *data)
 
int getFieldAliasCount (FBase *data)
 
void setBlockCoord (float x, float y)
 
float bx ()
 
float by ()
 
bool findInputField (FBase *field)
 
bool addInputField (FBase *field)
 
bool removeInputField (FBase *field)
 
std::vector< FBase * > & getInputFields ()
 
bool findOutputField (FBase *field)
 
bool addOutputField (FBase *field)
 
bool addToOutput (FBase *field)
 
bool removeOutputField (FBase *field)
 
bool removeFromOutput (FBase *field)
 
std::vector< FBase * > & getOutputFields ()
 
bool findParameter (FBase *field)
 
bool addParameter (FBase *field)
 
bool removeParameter (FBase *field)
 
std::vector< FBase * > & getParameters ()
 
- Public Member Functions inherited from dyno::Object
 Object ()
 
virtual ~Object ()
 
ObjectId objectId ()
 

Public Attributes

int m_numOfSamples
 
DArray2D< Vec3fm_deviceSamples
 
DArray2D< Vec3fm_deviceNormals
 
std::vector< Vec3fsamples
 
std::vector< Vec3fnormals
 
- Public Attributes inherited from dyno::Node
std::string m_node_name
 

Protected Member Functions

void resetStates () override
 
void postUpdateStates () override
 
void clearRigidBodySystem ()
 
- Protected Member Functions inherited from dyno::Node
bool appendExportNode (NodePort *nodePort)
 
bool removeExportNode (NodePort *nodePort)
 
virtual void preUpdateStates ()
 
virtual void updateStates ()
 
virtual void updateTopology ()
 
virtual bool validateInputs ()
 
virtual bool requireUpdate ()
 
void tick ()
 notify all state and output fields are updated
 

Private Member Functions

void setupShape2RigidBodyMapping ()
 

Private Attributes

std::vector< RigidBodyInfomHostRigidBodyStates
 
std::vector< SphereInfomHostSpheres
 
std::vector< BoxInfomHostBoxes
 
std::vector< TetInfomHostTets
 
std::vector< CapsuleInfomHostCapsules
 
DArray< RigidBodyInfomDeviceRigidBodyStates
 
DArray< SphereInfomDeviceSpheres
 
DArray< BoxInfomDeviceBoxes
 
DArray< TetInfomDeviceTets
 
DArray< CapsuleInfomDeviceCapsules
 
std::vector< BallAndSocketJointmHostJointsBallAndSocket
 
std::vector< SliderJointmHostJointsSlider
 
std::vector< HingeJointmHostJointsHinge
 
std::vector< FixedJointmHostJointsFixed
 
std::vector< PointJointmHostJointsPoint
 
std::vector< Pair< uint, uint > > mHostShape2RigidBodyMapping
 

Additional Inherited Members

- Static Public Member Functions inherited from dyno::Object
static bool registerClass (ClassInfo *ci)
 
static ObjectcreateObject (std::string name)
 
static std::map< std::string, ClassInfo * > * getClassMap ()
 
static ObjectId baseId ()
 Base Id.
 
- Protected Attributes inherited from dyno::OBase
std::vector< FBase * > fields_input
 
std::vector< FBase * > fields_output
 
std::vector< FBase * > fields_param
 

Detailed Description

template<typename TDataType>
class dyno::RigidBodySystem< TDataType >

Implementation of a rigid body system containing a variety of rigid bodies with different shapes.

Definition at line 33 of file RigidBodySystem.h.

Member Typedef Documentation

◆ BallAndSocketJoint

template<typename TDataType>
typedef ::dyno::BallAndSocketJoint<Real> dyno::RigidBodySystem< TDataType >::BallAndSocketJoint

Definition at line 46 of file RigidBodySystem.h.

◆ Box3D

template<typename TDataType>
typedef dyno::TOrientedBox3D<Real> dyno::RigidBodySystem< TDataType >::Box3D

Definition at line 41 of file RigidBodySystem.h.

◆ ContactPair

template<typename TDataType>
typedef dyno::TContactPair<Real> dyno::RigidBodySystem< TDataType >::ContactPair

Definition at line 44 of file RigidBodySystem.h.

◆ Coord

template<typename TDataType>
typedef TDataType::Coord dyno::RigidBodySystem< TDataType >::Coord

Definition at line 37 of file RigidBodySystem.h.

◆ FixedJoint

template<typename TDataType>
typedef ::dyno::FixedJoint<Real> dyno::RigidBodySystem< TDataType >::FixedJoint

Definition at line 49 of file RigidBodySystem.h.

◆ HingeJoint

template<typename TDataType>
typedef ::dyno::HingeJoint<Real> dyno::RigidBodySystem< TDataType >::HingeJoint

Definition at line 48 of file RigidBodySystem.h.

◆ Matrix

template<typename TDataType>
typedef TDataType::Matrix dyno::RigidBodySystem< TDataType >::Matrix

Definition at line 38 of file RigidBodySystem.h.

◆ PointJoint

template<typename TDataType>
typedef ::dyno::PointJoint<Real> dyno::RigidBodySystem< TDataType >::PointJoint

Definition at line 50 of file RigidBodySystem.h.

◆ Real

template<typename TDataType>
typedef TDataType::Real dyno::RigidBodySystem< TDataType >::Real

Definition at line 36 of file RigidBodySystem.h.

◆ SliderJoint

template<typename TDataType>
typedef ::dyno::SliderJoint<Real> dyno::RigidBodySystem< TDataType >::SliderJoint

Definition at line 47 of file RigidBodySystem.h.

◆ Sphere3D

template<typename TDataType>
typedef dyno::TSphere3D<Real> dyno::RigidBodySystem< TDataType >::Sphere3D

Definition at line 40 of file RigidBodySystem.h.

◆ TQuat

template<typename TDataType>
typedef dyno::Quat<Real> dyno::RigidBodySystem< TDataType >::TQuat

Definition at line 42 of file RigidBodySystem.h.

Constructor & Destructor Documentation

◆ RigidBodySystem()

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::RigidBodySystem ( )
Here is the caller graph for this function:

◆ ~RigidBodySystem()

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::~RigidBodySystem ( )
override

Member Function Documentation

◆ addBox()

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::addBox ( const BoxInfo & box,
const RigidBodyInfo & bodyDef,
const Real density = Real(100) )
Here is the caller graph for this function:

◆ addCapsule()

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::addCapsule ( const CapsuleInfo & capsule,
const RigidBodyInfo & bodyDef,
const Real density = Real(100) )
Here is the caller graph for this function:

◆ addSphere()

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::addSphere ( const SphereInfo & sphere,
const RigidBodyInfo & bodyDef,
const Real density = Real(100) )
Here is the caller graph for this function:

◆ addTet()

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::addTet ( const TetInfo & tet,
const RigidBodyInfo & bodyDef,
const Real density = Real(100) )

◆ bindBox()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::bindBox ( const std::shared_ptr< PdActor > actor,
const BoxInfo & box,
const Real density = Real(100) )
Here is the caller graph for this function:

◆ bindCapsule()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::bindCapsule ( const std::shared_ptr< PdActor > actor,
const CapsuleInfo & capsule,
const Real density = Real(100) )
Here is the caller graph for this function:

◆ bindSphere()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::bindSphere ( const std::shared_ptr< PdActor > actor,
const SphereInfo & sphere,
const Real density = Real(100) )

◆ clearRigidBodySystem()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::clearRigidBodySystem ( )
protected
Here is the caller graph for this function:

◆ createBallAndSocketJoint()

template<typename TDataType>
BallAndSocketJoint & dyno::RigidBodySystem< TDataType >::createBallAndSocketJoint ( std::shared_ptr< PdActor > actor1,
std::shared_ptr< PdActor > actor2 )
inline

Definition at line 97 of file RigidBodySystem.h.

Here is the caller graph for this function:

◆ createFixedJoint()

template<typename TDataType>
FixedJoint & dyno::RigidBodySystem< TDataType >::createFixedJoint ( std::shared_ptr< PdActor > actor1,
std::shared_ptr< PdActor > actor2 )
inline

Definition at line 127 of file RigidBodySystem.h.

Here is the caller graph for this function:

◆ createHingeJoint()

template<typename TDataType>
HingeJoint & dyno::RigidBodySystem< TDataType >::createHingeJoint ( std::shared_ptr< PdActor > actor1,
std::shared_ptr< PdActor > actor2 )
inline

Definition at line 117 of file RigidBodySystem.h.

Here is the caller graph for this function:

◆ createPointJoint()

template<typename TDataType>
PointJoint & dyno::RigidBodySystem< TDataType >::createPointJoint ( std::shared_ptr< PdActor > actor1)
inline

Definition at line 146 of file RigidBodySystem.h.

Here is the caller graph for this function:

◆ createRigidBody() [1/2]

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::createRigidBody ( const Coord & p,
const TQuat & q )
Here is the caller graph for this function:

◆ createRigidBody() [2/2]

template<typename TDataType>
std::shared_ptr< PdActor > dyno::RigidBodySystem< TDataType >::createRigidBody ( const RigidBodyInfo & bodyDef)

◆ createSliderJoint()

template<typename TDataType>
SliderJoint & dyno::RigidBodySystem< TDataType >::createSliderJoint ( std::shared_ptr< PdActor > actor1,
std::shared_ptr< PdActor > actor2 )
inline

Definition at line 107 of file RigidBodySystem.h.

Here is the caller graph for this function:

◆ createUnilateralFixedJoint()

template<typename TDataType>
FixedJoint & dyno::RigidBodySystem< TDataType >::createUnilateralFixedJoint ( std::shared_ptr< PdActor > actor1)
inline

Definition at line 137 of file RigidBodySystem.h.

◆ DEF_ARRAY_STATE() [1/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Attribute ,
Attribute ,
DeviceType::GPU ,
"Rigid body attributes"  )

◆ DEF_ARRAY_STATE() [2/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( CollisionMask ,
CollisionMask ,
DeviceType::GPU ,
"Collision mask for each rigid body"  )

◆ DEF_ARRAY_STATE() [3/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Coord ,
AngularVelocity ,
DeviceType::GPU ,
"Angular velocity of rigid bodies"  )

Rigid Angular Velocity.

◆ DEF_ARRAY_STATE() [4/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Coord ,
Center ,
DeviceType::GPU ,
"Center of rigid bodies"  )

Rigid Position.

◆ DEF_ARRAY_STATE() [5/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Coord ,
Velocity ,
DeviceType::GPU ,
"Velocity of rigid bodies"  )

Rigid Velocity.

◆ DEF_ARRAY_STATE() [6/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Matrix ,
Inertia ,
DeviceType::GPU ,
"Inertia matrix"  )

◆ DEF_ARRAY_STATE() [7/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Matrix ,
InitialInertia ,
DeviceType::GPU ,
"Initial inertia matrix"  )

◆ DEF_ARRAY_STATE() [8/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Matrix ,
RotationMatrix ,
DeviceType::GPU ,
"Rotation matrix of rigid bodies"  )

Rigid Rotation.

◆ DEF_ARRAY_STATE() [9/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Real ,
FrictionCoefficients ,
DeviceType::GPU ,
"FrictionCoefficients of rigid bodies"  )

◆ DEF_ARRAY_STATE() [10/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( Real ,
Mass ,
DeviceType::GPU ,
"Mass of rigid bodies"  )

Rigid Mass.

◆ DEF_ARRAY_STATE() [11/11]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_ARRAY_STATE ( TQuat ,
Quaternion ,
DeviceType::GPU ,
"Quaternion"  )

◆ DEF_INSTANCE_STATE()

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_INSTANCE_STATE ( DiscreteElements< TDataType > ,
Topology ,
"Topology"  )

◆ DEF_VAR() [1/5]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_VAR ( bool ,
FrictionEnabled ,
true ,
"A toggle to control the friction"  )

◆ DEF_VAR() [2/5]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_VAR ( bool ,
GravityEnabled ,
true ,
"A toggle to control the gravity"  )

◆ DEF_VAR() [3/5]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_VAR ( Real ,
FrictionCoefficient ,
200 ,
""  )

◆ DEF_VAR() [4/5]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_VAR ( Real ,
GravityValue ,
9. 8,
""  )

◆ DEF_VAR() [5/5]

template<typename TDataType>
dyno::RigidBodySystem< TDataType >::DEF_VAR ( Real ,
Slop ,
0. 0001,
""  )

◆ getNodeType()

template<typename TDataType>
std::string dyno::RigidBodySystem< TDataType >::getNodeType ( )
inlineoverridevirtual

Reimplemented from dyno::Node.

Definition at line 157 of file RigidBodySystem.h.

◆ getNormals()

template<typename TDataType>
DArray2D< Vec3f > dyno::RigidBodySystem< TDataType >::getNormals ( )
inline

Definition at line 252 of file RigidBodySystem.h.

◆ getSamples()

template<typename TDataType>
DArray2D< Vec3f > dyno::RigidBodySystem< TDataType >::getSamples ( )
inline

Definition at line 251 of file RigidBodySystem.h.

◆ getSamplingPointSize()

template<typename TDataType>
int dyno::RigidBodySystem< TDataType >::getSamplingPointSize ( )
inline

Definition at line 249 of file RigidBodySystem.h.

◆ pointInertia()

template<typename TDataType>
Mat3f dyno::RigidBodySystem< TDataType >::pointInertia ( Coord v1)

◆ postUpdateStates()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::postUpdateStates ( )
overrideprotectedvirtual

Reimplemented from dyno::Node.

Here is the caller graph for this function:

◆ resetStates()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::resetStates ( )
overrideprotectedvirtual

◆ setupShape2RigidBodyMapping()

template<typename TDataType>
void dyno::RigidBodySystem< TDataType >::setupShape2RigidBodyMapping ( )
private

Member Data Documentation

◆ m_deviceNormals

template<typename TDataType>
DArray2D<Vec3f> dyno::RigidBodySystem< TDataType >::m_deviceNormals

Definition at line 244 of file RigidBodySystem.h.

◆ m_deviceSamples

template<typename TDataType>
DArray2D<Vec3f> dyno::RigidBodySystem< TDataType >::m_deviceSamples

Definition at line 243 of file RigidBodySystem.h.

◆ m_numOfSamples

template<typename TDataType>
int dyno::RigidBodySystem< TDataType >::m_numOfSamples

Definition at line 242 of file RigidBodySystem.h.

◆ mDeviceBoxes

template<typename TDataType>
DArray<BoxInfo> dyno::RigidBodySystem< TDataType >::mDeviceBoxes
private

Definition at line 229 of file RigidBodySystem.h.

◆ mDeviceCapsules

template<typename TDataType>
DArray<CapsuleInfo> dyno::RigidBodySystem< TDataType >::mDeviceCapsules
private

Definition at line 231 of file RigidBodySystem.h.

◆ mDeviceRigidBodyStates

template<typename TDataType>
DArray<RigidBodyInfo> dyno::RigidBodySystem< TDataType >::mDeviceRigidBodyStates
private

Definition at line 226 of file RigidBodySystem.h.

◆ mDeviceSpheres

template<typename TDataType>
DArray<SphereInfo> dyno::RigidBodySystem< TDataType >::mDeviceSpheres
private

Definition at line 228 of file RigidBodySystem.h.

◆ mDeviceTets

template<typename TDataType>
DArray<TetInfo> dyno::RigidBodySystem< TDataType >::mDeviceTets
private

Definition at line 230 of file RigidBodySystem.h.

◆ mHostBoxes

template<typename TDataType>
std::vector<BoxInfo> dyno::RigidBodySystem< TDataType >::mHostBoxes
private

Definition at line 222 of file RigidBodySystem.h.

◆ mHostCapsules

template<typename TDataType>
std::vector<CapsuleInfo> dyno::RigidBodySystem< TDataType >::mHostCapsules
private

Definition at line 224 of file RigidBodySystem.h.

◆ mHostJointsBallAndSocket

template<typename TDataType>
std::vector<BallAndSocketJoint> dyno::RigidBodySystem< TDataType >::mHostJointsBallAndSocket
private

Definition at line 233 of file RigidBodySystem.h.

◆ mHostJointsFixed

template<typename TDataType>
std::vector<FixedJoint> dyno::RigidBodySystem< TDataType >::mHostJointsFixed
private

Definition at line 236 of file RigidBodySystem.h.

◆ mHostJointsHinge

template<typename TDataType>
std::vector<HingeJoint> dyno::RigidBodySystem< TDataType >::mHostJointsHinge
private

Definition at line 235 of file RigidBodySystem.h.

◆ mHostJointsPoint

template<typename TDataType>
std::vector<PointJoint> dyno::RigidBodySystem< TDataType >::mHostJointsPoint
private

Definition at line 237 of file RigidBodySystem.h.

◆ mHostJointsSlider

template<typename TDataType>
std::vector<SliderJoint> dyno::RigidBodySystem< TDataType >::mHostJointsSlider
private

Definition at line 234 of file RigidBodySystem.h.

◆ mHostRigidBodyStates

template<typename TDataType>
std::vector<RigidBodyInfo> dyno::RigidBodySystem< TDataType >::mHostRigidBodyStates
private

Definition at line 219 of file RigidBodySystem.h.

◆ mHostShape2RigidBodyMapping

template<typename TDataType>
std::vector<Pair<uint, uint> > dyno::RigidBodySystem< TDataType >::mHostShape2RigidBodyMapping
private

Definition at line 239 of file RigidBodySystem.h.

◆ mHostSpheres

template<typename TDataType>
std::vector<SphereInfo> dyno::RigidBodySystem< TDataType >::mHostSpheres
private

Definition at line 221 of file RigidBodySystem.h.

◆ mHostTets

template<typename TDataType>
std::vector<TetInfo> dyno::RigidBodySystem< TDataType >::mHostTets
private

Definition at line 223 of file RigidBodySystem.h.

◆ normals

template<typename TDataType>
std::vector<Vec3f> dyno::RigidBodySystem< TDataType >::normals

Definition at line 247 of file RigidBodySystem.h.

◆ samples

template<typename TDataType>
std::vector<Vec3f> dyno::RigidBodySystem< TDataType >::samples

Definition at line 246 of file RigidBodySystem.h.


The documentation for this class was generated from the following file: