opensurgsim
|
Implementation of Localization for Fem3DRepresentation. More...
#include <FemLocalization.h>
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::IndexedLocalCoordinate & | getLocalPosition () const |
Gets the local position. More... | |
![]() | |
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< Representation > | getRepresentation () 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< Localization > | copy () const |
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.
SurgSim::Physics::FemLocalization::FemLocalization | ( | std::shared_ptr< Representation > | representation, |
const SurgSim::DataStructures::IndexedLocalCoordinate & | localPosition | ||
) |
Constructor.
representation | The representation to assign to this localization. |
localPosition | The local position to set the localization at. |
const SurgSim::DataStructures::IndexedLocalCoordinate & SurgSim::Physics::FemLocalization::getLocalPosition | ( | ) | const |
Gets the local position.
void SurgSim::Physics::FemLocalization::setLocalPosition | ( | const SurgSim::DataStructures::IndexedLocalCoordinate & | localPosition | ) |
Sets the local position.
localPosition | The local position to set the localization at. |