8 #ifndef __RDL_FRAME_VECTOR_PAIR_HPP__ 9 #define __RDL_FRAME_VECTOR_PAIR_HPP__ 114 assert(referenceFrame);
158 assert(referenceFrame);
171 assert(referenceFrame);
184 assert(referenceFrame);
236 template <
typename T>
278 template <
typename T>
285 template <
typename T>
308 #endif // ifndef __RDL_FRAME_VECTOR_HPP__
ReferenceFramePtr getReferenceFrame() const
Get a pointer to the reference frame this FrameObject is expressed in.
void operator*=(const T scale)
ForceVector operator*(const SpatialTransform &X, ForceVector f)
Operator for transforming a ForceVector. Calls the ForceVector::transform method. ...
FrameVectorPair(ReferenceFramePtr referenceFrame)
FrameVector linear() const
Get copy of linear component.
void setAngularPart(const Vector3d &v)
Set the angular vector.
void setIncludingFrame(const SpatialMotion &v)
Set the components and the ReferenceFrame these components are expressed in.
FrameVector angular() const
Get copy of angular component.
void setReferenceFrame(ReferenceFramePtr frame)
Set frame objects internal reference frame.
FramePoint operator+(FramePoint p, const FrameVector &v)
void checkReferenceFramesMatch(const FrameObject *frameObject) const
Check if two ReferenceFrameHolders hold the same ReferenceFrame.
void operator+=(const FrameVectorPair &v)
void setIncludingFrame(ReferenceFramePtr referenceFrame, const MotionVector &v)
Set the components and the ReferenceFrame these components are expressed in.
FrameVectorPair(ReferenceFramePtr referenceFrame, const SpatialVector &v)
Constructor.
std::shared_ptr< ReferenceFrame > ReferenceFramePtr
FrameVectorPair()
Default constructor. Initializes its ReferenceFrame to nullptr.
virtual void changeFrame(ReferenceFramePtr desiredFrame)
Change the ReferenceFrame this FrameObject is expressed in.
void setIncludingFrame(const double x, const double y, const double z, ReferenceFramePtr referenceFrame)
Set the x, y, and z components and the ReferenceFrame these components are expressed in...
A FrameVector is a 3D vector with a ReferenceFrame, and all operations between FrameVectors and other...
A SpatialMotion vector is a MotionVector with a RobotDynamics::ReferenceFrame it is expressed in...
void changeFrame(ReferenceFramePtr referenceFrame)
Change the frame of the two 3d vectors. Equivalent to the following math expression ...
void operator-=(const FrameVectorPair &v)
FrameVectorPair(const SpatialMotion &v)
Constructor.
FrameVectorPair(const FrameVector &linear, const FrameVector &angular)
EIGEN_STRONG_INLINE Vector3d getAngularPart() const
void setLinearPart(const Vector3d &v)
Set the linear vector.
FramePoint operator-(FramePoint p, const FrameVector &v)
void setToZero()
Set x, y, and z components of linear and angular to 0.
FrameVector * angularPtr()
Get pointer to angular vector.
void set(const Eigen::Vector3d &v)
FrameVectorPair changeFrameAndCopy(ReferenceFramePtr referenceFrame) const
copy into new frame vector and change the frame of that
FrameVectorPair(ReferenceFramePtr referenceFrame, const Vector3d &linear, const Vector3d &angular)
Constructor.
A FrameVector is a pair of 3D vector with a ReferenceFrame.
EIGEN_STRONG_INLINE Vector3d getLinearPart() const
virtual ~FrameVectorPair()
Destructor.
void setIncludingFrame(ReferenceFramePtr referenceFrame, const SpatialVector &v)
Set the components and the ReferenceFrame these components are expressed in.
void setReferenceFrame(ReferenceFramePtr referenceFrame)
Set the reference frame.
void setIncludingFrame(ReferenceFramePtr referenceFrame, const Vector3d &linear, const Vector3d &angular)
Set the components and the ReferenceFrame these components are expressed in.
Namespace for all structures of the RobotDynamics library.
FrameVector * linearPtr()
Get pointer to linear vector.