16 #ifndef SURGSIM_MATH_SHAPE_H 17 #define SURGSIM_MATH_SHAPE_H 94 virtual bool isValid()
const = 0;
100 #endif // SURGSIM_MATH_SHAPE_H virtual double getVolume() const =0
Get the volume of the shape.
Definition: DriveElementFromInputBehavior.cpp:27
virtual Vector3d getCenter() const =0
Get the volumetric center of the shape.
::SurgSim::Math::Vector3d Vector3d
Definition: Shape.h:62
ShapeDirection
Type defining the shape direction for certain templatized shape (i.e.
Definition: Shape.h:32
An object factory, once a class is registered with the factory it can be used to create instances of ...
Definition: ObjectFactory.h:40
virtual ~Shape()
Definition: Shape.cpp:26
ShapeType
Fixed List of enums for the available Shape types, do not explicitly assign values, ShapeCount is used to determine the number of actual shape types.
Definition: Shape.h:41
string(TOUPPER ${DEVICE}DEVICE_UPPER_CASE) option(BUILD_DEVICE_ $
Definition: CMakeLists.txt:35
virtual Matrix33d getSecondMomentOfVolume() const =0
Get the second central moment of the volume, commonly used to calculate the moment of inertia matrix...
static FactoryType & getFactory()
Definition: Shape.cpp:30
Definitions of small fixed-size square matrix types.
Definitions of small fixed-size vector types.
Mixin class for enabling a property system on OSS classes, the instance still needs to initialize pro...
Definition: Accessible.h:36
::SurgSim::Math::Matrix33d Matrix33d
Definition: Shape.h:63
virtual std::string getClassName() const
Get class name.
Definition: Shape.cpp:37
Eigen::Matrix< double, 3, 3, Eigen::RowMajor > Matrix33d
A 3x3 matrix of doubles.
Definition: Matrix.h:51
SurgSim::Framework::ObjectFactory< SurgSim::Math::Shape > FactoryType
Definition: Shape.h:84
Eigen::Matrix< double, 3, 1 > Vector3d
A 3D vector of doubles.
Definition: Vector.h:56
virtual bool isValid() const =0
Check if the shape is valid.
Generic rigid shape class defining a shape.
Definition: Shape.h:59