16 #ifndef SURGSIM_PHYSICS_FEM3DREPRESENTATION_H 17 #define SURGSIM_PHYSICS_FEM3DREPRESENTATION_H 21 #include <unordered_map> 31 namespace DataStructures
40 class FemPlyReaderDelegate;
59 virtual void addExternalGeneralizedForce(std::shared_ptr<Localization> localization,
67 virtual bool doWakeUp()
override;
72 virtual void transformState(std::shared_ptr<SurgSim::Math::OdeState> state,
76 virtual std::shared_ptr<FemPlyReaderDelegate> getDelegate()
override;
82 std::unordered_map<size_t, size_t> createTriangleIdToElementIdMap(
92 #endif // SURGSIM_PHYSICS_FEM3DREPRESENTATION_H Definition: DriveElementFromInputBehavior.cpp:27
Finite Element Model 3D is a fem built with 3D FemElement.
Definition: Fem3DRepresentation.h:43
RepresentationType
Definition: Representation.h:42
Finite Element Model (a.k.a.
Definition: FemRepresentation.h:38
Definition: Location.h:31
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > Matrix
A dynamic size matrix.
Definition: Matrix.h:65
SURGSIM_STATIC_REGISTRATION(SerializationMockComponent)
std::unordered_map< size_t, size_t > m_triangleIdToElementIdMap
Mapping from collision triangle's id to fem element id.
Definition: Fem3DRepresentation.h:86
string(TOUPPER ${DEVICE}DEVICE_UPPER_CASE) option(BUILD_DEVICE_ $
Definition: CMakeLists.txt:35
Eigen::Matrix< double, Eigen::Dynamic, 1 > Vector
A dynamic size column vector.
Definition: Vector.h:67
#define SURGSIM_CLASSNAME(ClassName)
Declare the class name of a class with the appropriate function header, do not use quotes...
Definition: Macros.h:21
Definitions of small fixed-size square matrix types.
Eigen::Transform< double, 3, Eigen::Isometry > RigidTransform3d
A 3D rigid (isometric) transform, represented as doubles.
Definition: RigidTransform.h:46
A TriangleMesh stores normal information for the triangles.
Definition: TriangleMesh.h:62