16 #ifndef SURGSIM_PHYSICS_REPRESENTATION_H 17 #define SURGSIM_PHYSICS_REPRESENTATION_H 27 namespace DataStructures
71 virtual void resetState();
74 virtual void resetParameters();
78 size_t getNumDof()
const;
82 void setIsGravityEnabled(
bool isGravityEnabled);
86 bool isGravityEnabled()
const;
91 void setIsDrivingSceneElementPose(
bool isDrivingSceneElementPose);
96 bool isDrivingSceneElementPose();
101 virtual void beforeUpdate(
double dt);
105 virtual void update(
double dt);
110 virtual void afterUpdate(
double dt);
124 virtual void applyCorrection(
double dt,
const Eigen::VectorBlock<SurgSim::Math::Vector>& deltaVelocity);
127 std::shared_ptr<SurgSim::Collision::Representation> getCollisionRepresentation()
const;
132 virtual void setCollisionRepresentation(std::shared_ptr<SurgSim::Collision::Representation> representation);
139 void setNumDof(
size_t numDof);
178 #endif // SURGSIM_PHYSICS_REPRESENTATION_H Definition: DriveElementFromInputBehavior.cpp:27
Definition: Representation.h:46
RepresentationType
Definition: Representation.h:42
bool m_isGravityEnabled
Gravity enabled flag.
Definition: Representation.h:167
std::shared_ptr< SurgSim::Collision::Representation > m_collisionRepresentation
This entity's collision representation, these are usually very specific to the physics representation...
Definition: Representation.h:146
Definition: Representation.h:45
The Representation class defines the base class for all physics objects.
Definition: Representation.h:56
Definition: Location.h:31
size_t m_numDof
Number of degrees of freedom for this representation.
Definition: Representation.h:164
Definition: Representation.h:51
Definition: Representation.h:49
Definition: Representation.h:48
string(TOUPPER ${DEVICE}DEVICE_UPPER_CASE) option(BUILD_DEVICE_ $
Definition: CMakeLists.txt:35
Definition: Representation.h:47
bool m_isDrivingSceneElementPose
Is this representation driving the sceneElement pose.
Definition: Representation.h:170
Definition: Representation.h:44
Eigen::Transform< double, 3, Eigen::Isometry > RigidTransform3d
A 3D rigid (isometric) transform, represented as doubles.
Definition: RigidTransform.h:46
Definitions of small fixed-size vector types.
const SurgSim::Math::Vector3d m_gravity
Gravity vector.
Definition: Representation.h:161
Representations are manifestations of a SceneElement.
Definition: Representation.h:33
Definition: Representation.h:52
Definition: Representation.h:50
Eigen::Matrix< double, 3, 1 > Vector3d
A 3D vector of doubles.
Definition: Vector.h:56