opensurgsim
Public Member Functions | List of all members
SurgSim::Physics::FemLocalization Class Reference

Implementation of Localization for Fem3DRepresentation. More...

#include <FemLocalization.h>

Inheritance diagram for SurgSim::Physics::FemLocalization:
SurgSim::Physics::Localization SurgSim::Physics::Fem1DLocalization SurgSim::Physics::Fem2DLocalization SurgSim::Physics::Fem3DLocalization

Public Member Functions

 FemLocalization (std::shared_ptr< Representation > representation, const SurgSim::DataStructures::IndexedLocalCoordinate &localPosition)
 Constructor. More...
 
virtual ~FemLocalization ()
 Destructor.
 
void setLocalPosition (const SurgSim::DataStructures::IndexedLocalCoordinate &localPosition)
 Sets the local position. More...
 
const SurgSim::DataStructures::IndexedLocalCoordinategetLocalPosition () const
 Gets the local position. More...
 
- Public Member Functions inherited from SurgSim::Physics::Localization
 Localization ()
 Default constructor.
 
 Localization (std::shared_ptr< Representation > representation)
 Constructor. More...
 
virtual ~Localization ()
 Destructor.
 
void setRepresentation (std::shared_ptr< Representation > representation)
 Sets the representation. More...
 
std::shared_ptr< RepresentationgetRepresentation () const
 Gets the representation. More...
 
SurgSim::Math::Vector3d calculatePosition (double time=1.0) const
 Calculates the global position of this localization. More...
 
SurgSim::Math::Vector3d calculateVelocity (double time=1.0) const
 Calculates the global velocity of this localization. More...
 
virtual bool isValidRepresentation (std::shared_ptr< Representation > representation)
 
virtual Math::RigidTransform3d getElementPose ()
 Find a pose that the localization is represented with respect to. More...
 
virtual bool moveClosestTo (const Math::Vector3d &point, bool *hasReachedEnd)
 
std::shared_ptr< Localizationcopy () const
 

Detailed Description

Implementation of Localization for Fem3DRepresentation.

FemLocalization tracks the global coordinates of an IndexedLocalCoordinate associated with an FemRepresentation. The IndexedLocalCoordinate must be related to an FemElement (the index is an FemElement id and the local coordinates are the barycentric coordinates of the nodes in this FemElement). It is used, for example, as a helper class for filling out the MlcpPhysicsProblem in Fem3DRepresentationContact::doBuild, which constrains the motion of Fem3DRepresentation at a frictionless contact.

Constructor & Destructor Documentation

§ FemLocalization()

SurgSim::Physics::FemLocalization::FemLocalization ( std::shared_ptr< Representation representation,
const SurgSim::DataStructures::IndexedLocalCoordinate localPosition 
)

Constructor.

Parameters
representationThe representation to assign to this localization.
localPositionThe local position to set the localization at.

Member Function Documentation

§ getLocalPosition()

const SurgSim::DataStructures::IndexedLocalCoordinate & SurgSim::Physics::FemLocalization::getLocalPosition ( ) const

Gets the local position.

Returns
The local position set for this localization.

§ setLocalPosition()

void SurgSim::Physics::FemLocalization::setLocalPosition ( const SurgSim::DataStructures::IndexedLocalCoordinate localPosition)

Sets the local position.

Parameters
localPositionThe local position to set the localization at.

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