opensurgsim
Public Member Functions | Protected Attributes | List of all members
SurgSim::Math::VerticesShape Class Reference

A Shape that also inherits from Vertices is transformable and carries a member variable of the initial Vertices for transforming. More...

#include <VerticesShape.h>

Inheritance diagram for SurgSim::Math::VerticesShape:
SurgSim::Math::Shape SurgSim::Framework::Accessible SurgSim::Framework::FactoryBase< Shape > SurgSim::Math::MeshShape SurgSim::Math::ParticlesShape SurgSim::Math::SegmentMeshShape SurgSim::Math::SurfaceMeshShape

Public Member Functions

bool isTransformable () const override
 
void setInitialVertices (const DataStructures::Vertices< DataStructures::EmptyData > &vertices)
 Set the initial Vertices. More...
 
void setInitialVertices (DataStructures::Vertices< DataStructures::EmptyData > &&vertices)
 Set the initial Vertices via r-value. More...
 
const DataStructures::Vertices< DataStructures::EmptyData > & getInitialVertices () const
 Get the initial Vertices. More...
 
- Public Member Functions inherited from SurgSim::Math::Shape
 Shape ()
 Constructor.
 
virtual ~Shape ()
 Destructor.
 
virtual int getType () const =0
 
virtual double getVolume () const =0
 Get the volume of the shape. More...
 
virtual Vector3d getCenter () const =0
 Get the volumetric center of the shape. More...
 
virtual Matrix33d getSecondMomentOfVolume () const =0
 Get the second central moment of the volume, commonly used to calculate the moment of inertia matrix. More...
 
virtual std::shared_ptr< ShapegetTransformed (const RigidTransform3d &pose) const
 Get a copy of this shape with an applied rigid transform. More...
 
virtual void setPose (const RigidTransform3d &pose)
 Set the pose on a transformable shape. More...
 
virtual void updateShape ()
 Update the internals of a transformable shape.
 
virtual void updateShapePartial ()
 Update some of the internals of a transformable shape. More...
 
virtual std::string getClassName () const
 Get class name.
 
virtual bool isValid () const =0
 Check if the shape is valid. More...
 
virtual const Math::Aabbd & getBoundingBox () const
 
- Public Member Functions inherited from SurgSim::Framework::Accessible
 Accessible ()
 Default Constructor.
 
 ~Accessible ()
 Destructor.
 
template<class T >
getValue (const std::string &name) const
 Retrieves the value with the name by executing the getter if it is found and tries to convert it to the given type. More...
 
boost::any getValue (const std::string &name) const
 Retrieves the value with the name by executing the getter if it is found. More...
 
template<class T >
bool getValue (const std::string &name, T *value) const
 Retrieves the value with the name by executing the getter if it is found, and converts it to the type of the output parameter. More...
 
void setValue (const std::string &name, const boost::any &value)
 Sets a value of a property that has setter. More...
 
bool isReadable (const std::string &name) const
 Check whether a property is readable. More...
 
bool isWriteable (const std::string &name) const
 Check whether a property is writable. More...
 
void setGetter (const std::string &name, GetterType func)
 Sets a getter for a given property. More...
 
void setSetter (const std::string &name, SetterType func)
 Sets a setter for a given property. More...
 
void setAccessors (const std::string &name, GetterType getter, SetterType setter)
 Sets the accessors getter and setter in one function. More...
 
void removeAccessors (const std::string &name)
 Removes all the accessors (getter and setter) for a given property. More...
 
void forwardProperty (const std::string &name, const Accessible &target, const std::string &targetProperty)
 Adds a property with the given name that uses the targets accessors, in effect forwarding the value to the target. More...
 
void setSerializable (const std::string &name, EncoderType encoder, DecoderType decoder)
 Sets the functions used to convert data from and to a YAML::Node. More...
 
void setDecoder (const std::string &name, DecoderType decoder)
 Sets the functions used to convert data from a YAML::Node. More...
 
YAML::Node encode () const
 Encode this Accessible to a YAML::Node. More...
 
void decode (const YAML::Node &node, const std::vector< std::string > &ignoredProperties=std::vector< std::string >())
 Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot be converted. More...
 
std::vector< std::string > getProperties ()
 
template<>
boost::any getValue (const std::string &name) const
 

Protected Attributes

DataStructures::Vertices< DataStructures::EmptyDatam_initialVertices
 The initial vertex positions.
 
- Protected Attributes inherited from SurgSim::Math::Shape
Math::Aabbd m_aabb
 

Additional Inherited Members

- Public Types inherited from SurgSim::Math::Shape
typedef ::SurgSim::Math::Vector3d Vector3d
 
typedef ::SurgSim::Math::Matrix33d Matrix33d
 
- Public Types inherited from SurgSim::Framework::Accessible
typedef std::function< boost::any(void)> GetterType
 
typedef std::function< void(boost::any)> SetterType
 
typedef std::function< YAML::Node(void)> EncoderType
 
typedef std::function< void(const YAML::Node *)> DecoderType
 
- Public Types inherited from SurgSim::Framework::FactoryBase< Shape >
typedef ObjectFactory< Shape > FactoryType
 
- Static Public Member Functions inherited from SurgSim::Framework::FactoryBase< Shape >
static FactoryTypegetFactory ()
 

Detailed Description

A Shape that also inherits from Vertices is transformable and carries a member variable of the initial Vertices for transforming.

Member Function Documentation

§ getInitialVertices()

const DataStructures::Vertices< DataStructures::EmptyData > & SurgSim::Math::VerticesShape::getInitialVertices ( ) const

Get the initial Vertices.

Returns
The initial Vertices.

§ isTransformable()

bool SurgSim::Math::VerticesShape::isTransformable ( ) const
overridevirtual
Returns
true if the the shape can be transformed

Reimplemented from SurgSim::Math::Shape.

§ setInitialVertices() [1/2]

void SurgSim::Math::VerticesShape::setInitialVertices ( const DataStructures::Vertices< DataStructures::EmptyData > &  vertices)

Set the initial Vertices.

Parameters
verticesThe initial vertices.

§ setInitialVertices() [2/2]

void SurgSim::Math::VerticesShape::setInitialVertices ( DataStructures::Vertices< DataStructures::EmptyData > &&  vertices)

Set the initial Vertices via r-value.

Parameters
verticesThe initial vertices.

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