Control Libraries 7.4.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Friends | List of all members
state_representation::CartesianWrench Class Reference

Class to define wrench in Cartesian space as 3D force and torque vectors. More...

#include <CartesianWrench.hpp>

Inheritance diagram for state_representation::CartesianWrench:
state_representation::CartesianState state_representation::SpatialState state_representation::State

Public Member Functions

const Eigen::Vector3d & get_linear_velocity () const =delete
 
const Eigen::Vector3d & get_angular_velocity () const =delete
 
Eigen::Matrix< double, 6, 1 > get_twist () const =delete
 
const Eigen::Vector3d & get_position () const =delete
 
const Eigen::Quaterniond & get_orientation () const =delete
 
Eigen::Vector4d get_orientation_coefficients () const =delete
 
Eigen::Matrix< double, 7, 1 > get_pose () const =delete
 
Eigen::Matrix4d get_transformation_matrix () const =delete
 
const Eigen::Vector3d & get_linear_acceleration () const =delete
 
const Eigen::Vector3d & get_angular_acceleration () const =delete
 
Eigen::Matrix< double, 6, 1 > get_acceleration () const =delete
 
void set_position (const Eigen::Vector3d &position)=delete
 
void set_position (const std::vector< double > &position)=delete
 
void set_position (const double &x, const double &y, const double &z)=delete
 
void set_orientation (const Eigen::Quaterniond &orientation)=delete
 
void set_orientation (const Eigen::Vector4d &orientation)=delete
 
void set_orientation (const std::vector< double > &orientation)=delete
 
void set_orientation (const double &w, const double &x, const double &y, const double &z)=delete
 
void set_pose (const Eigen::Vector3d &position, const Eigen::Quaterniond &orientation)=delete
 
void set_pose (const Eigen::Matrix< double, 7, 1 > &pose)=delete
 
void set_pose (const std::vector< double > &pose)=delete
 
void set_linear_velocity (const Eigen::Vector3d &linear_velocity)=delete
 
void set_linear_velocity (const std::vector< double > &linear_velocity)=delete
 
void set_linear_velocity (const double &x, const double &y, const double &z)=delete
 
void set_angular_velocity (const Eigen::Vector3d &angular_velocity)=delete
 
void set_angular_velocity (const std::vector< double > &angular_velocity)=delete
 
void set_angular_velocity (const double &x, const double &y, const double &z)=delete
 
void set_twist (const Eigen::Matrix< double, 6, 1 > &twist)=delete
 
void set_twist (const std::vector< double > &twist)=delete
 
void set_linear_acceleration (const Eigen::Vector3d &linear_acceleration)=delete
 
void set_linear_acceleration (const std::vector< double > &linear_acceleration)=delete
 
void set_linear_acceleration (const double &x, const double &y, const double &z)=delete
 
void set_angular_acceleration (const Eigen::Vector3d &angular_acceleration)=delete
 
void set_angular_acceleration (const std::vector< double > &angular_acceleration)=delete
 
void set_angular_acceleration (const double &x, const double &y, const double &z)=delete
 
void set_acceleration (const Eigen::Matrix< double, 6, 1 > &acceleration)=delete
 
void set_acceleration (const std::vector< double > &acceleration)=delete
 
CartesianState inverse () const =delete
 
CartesianStateoperator*= (const CartesianState &state)=delete
 
CartesianState operator* (const CartesianState &state) const =delete
 
Eigen::Vector3d operator* (const Eigen::Vector3d &vector) const =delete
 
CartesianStateoperator+= (const CartesianPose &pose)=delete
 
CartesianStateoperator+= (const CartesianTwist &twist)=delete
 
CartesianStateoperator+= (const CartesianAcceleration &acceleration)=delete
 
CartesianState operator+ (const CartesianPose &pose) const =delete
 
CartesianState operator+ (const CartesianTwist &twist) const =delete
 
CartesianState operator+ (const CartesianAcceleration &acceleration) const =delete
 
CartesianStateoperator-= (const CartesianPose &pose)=delete
 
CartesianStateoperator-= (const CartesianTwist &twist)=delete
 
CartesianStateoperator-= (const CartesianAcceleration &acceleration)=delete
 
CartesianState operator- (const CartesianPose &pose) const =delete
 
CartesianState operator- (const CartesianTwist &twist) const =delete
 
CartesianState operator- (const CartesianAcceleration &acceleration) const =delete
 
 CartesianWrench ()
 Empty constructor.
 
 CartesianWrench (const std::string &name, const std::string &reference="world")
 Constructor with name and reference frame provided.
 
 CartesianWrench (const CartesianWrench &wrench)
 Copy constructor.
 
 CartesianWrench (const CartesianState &state)
 Copy constructor from a Cartesian state.
 
 CartesianWrench (const std::string &name, const Eigen::Vector3d &force, const std::string &reference="world")
 Construct a Cartesian wrench from a force given as a vector.
 
 CartesianWrench (const std::string &name, const Eigen::Vector3d &force, const Eigen::Vector3d &torque, const std::string &reference="world")
 Construct a Cartesian wrench from a force and torque given as vectors.
 
 CartesianWrench (const std::string &name, const Eigen::Matrix< double, 6, 1 > &wrench, const std::string &reference="world")
 Construct a Cartesian wrench from a single 6d wrench vector.
 
CartesianWrenchoperator= (const CartesianWrench &wrench)=default
 Copy assignment operator that has to be defined to the custom assignment operator.
 
Eigen::VectorXd data () const override
 Returns the wrench data as an Eigen vector.
 
void set_data (const Eigen::VectorXd &data) override
 Set the wrench data from an Eigen vector.
 
void set_data (const std::vector< double > &data) override
 Set the wrench data from a std vector.
 
void clamp (double max_force, double max_torque, double force_noise_ratio=0, double torque_noise_ratio=0)
 Clamp inplace the magnitude of the wrench to the values in argument.
 
CartesianWrench clamped (double max_force, double max_torque, double force_noise_ratio=0, double torque_noise_ratio=0) const
 Return the clamped wrench.
 
CartesianWrench copy () const
 Return a copy of the Cartesian wrench.
 
CartesianWrench normalized (const CartesianStateVariable &state_variable_type=CartesianStateVariable::WRENCH) const
 Compute the normalized wrench at the state variable given in argument (default is full wrench)
 
std::vector< double > norms (const CartesianStateVariable &state_variable_type=CartesianStateVariable::WRENCH) const override
 Compute the norms of the state variable specified by the input type (default is full wrench)
 
CartesianWrenchoperator*= (double lambda)
 Scale inplace by a scalar.
 
CartesianWrench operator* (double lambda) const
 Scale a Cartesian wrench by a scalar.
 
CartesianWrenchoperator/= (double lambda)
 Scale inplace by a scalar.
 
CartesianWrench operator/ (double lambda) const
 Scale a Cartesian wrench by a scalar.
 
CartesianWrenchoperator+= (const CartesianWrench &wrench)
 Add inplace another Cartesian wrench.
 
CartesianWrenchoperator+= (const CartesianState &state)
 Add inplace another wrench from a Cartesian state.
 
CartesianWrench operator+ (const CartesianWrench &wrench) const
 Add another Cartesian wrench.
 
CartesianState operator+ (const CartesianState &state) const
 Add another Cartesian state.
 
CartesianWrench operator- () const
 Negate a Cartesian wrench.
 
CartesianWrenchoperator-= (const CartesianWrench &wrench)
 Compute inplace the difference with another Cartesian wrench.
 
CartesianWrenchoperator-= (const CartesianState &state)
 Compute inplace the difference with another Cartesian state.
 
CartesianWrench operator- (const CartesianWrench &wrench) const
 Compute the difference with another Cartesian wrench.
 
CartesianState operator- (const CartesianState &state) const
 Compute the difference with a Cartesian state.
 
- Public Member Functions inherited from state_representation::CartesianState
 CartesianState ()
 Empty constructor.
 
 CartesianState (const std::string &name, const std::string &reference="world")
 Constructor with name and reference frame provided.
 
 CartesianState (const CartesianState &state)
 Copy constructor of a Cartesian state.
 
CartesianStateoperator= (const CartesianState &state)
 Copy assignment operator that has to be defined to the custom assignment operator.
 
const Eigen::Vector3d & get_position () const
 Getter of the position attribute.
 
const Eigen::Quaterniond & get_orientation () const
 Getter of the orientation attribute.
 
Eigen::Vector4d get_orientation_coefficients () const
 Getter of the orientation attribute as Vector4d of coefficients.
 
Eigen::Matrix< double, 7, 1 > get_pose () const
 Getter of the pose from position and orientation attributes.
 
Eigen::Matrix4d get_transformation_matrix () const
 Getter of a pose from position and orientation attributes.
 
const Eigen::Vector3d & get_linear_velocity () const
 Getter of the linear velocity attribute.
 
const Eigen::Vector3d & get_angular_velocity () const
 Getter of the angular velocity attribute.
 
Eigen::Matrix< double, 6, 1 > get_twist () const
 Getter of the 6d twist from linear and angular velocity attributes.
 
const Eigen::Vector3d & get_linear_acceleration () const
 Getter of the linear acceleration attribute.
 
const Eigen::Vector3d & get_angular_acceleration () const
 Getter of the angular acceleration attribute.
 
Eigen::Matrix< double, 6, 1 > get_acceleration () const
 Getter of the 6d acceleration from linear and angular acceleration attributes.
 
const Eigen::Vector3d & get_force () const
 Getter of the force attribute.
 
const Eigen::Vector3d & get_torque () const
 Getter of the torque attribute.
 
Eigen::Matrix< double, 6, 1 > get_wrench () const
 Getter of the 6d wrench from force and torque attributes.
 
Eigen::ArrayXd array () const
 Return the data vector as an Eigen Array.
 
std::vector< double > to_std_vector () const
 Return the state as a std vector.
 
void set_position (const Eigen::Vector3d &position)
 Setter of the position.
 
void set_position (const std::vector< double > &position)
 Setter of the position from a std vector.
 
void set_position (const double &x, const double &y, const double &z)
 Setter of the position from three scalar coordinates.
 
void set_orientation (const Eigen::Quaterniond &orientation)
 Setter of the orientation.
 
void set_orientation (const Eigen::Vector4d &orientation)
 Setter of the orientation from a 4d vector.
 
void set_orientation (const std::vector< double > &orientation)
 Setter of the orientation from a std vector.
 
void set_orientation (const double &w, const double &x, const double &y, const double &z)
 Setter of the orientation from four scalar coefficients (w, x, y, z)
 
void set_pose (const Eigen::Vector3d &position, const Eigen::Quaterniond &orientation)
 Setter of the pose from both position and orientation.
 
void set_pose (const Eigen::Matrix< double, 7, 1 > &pose)
 Setter of the pose from both position and orientation as Eigen 7d vector.
 
void set_pose (const std::vector< double > &pose)
 Setter of the pose from both position and orientation as std vector.
 
void set_linear_velocity (const Eigen::Vector3d &linear_velocity)
 Setter of the linear velocity attribute.
 
void set_linear_velocity (const std::vector< double > &linear_velocity)
 Setter of the linear velocity from a std vector.
 
void set_linear_velocity (const double &x, const double &y, const double &z)
 Setter of the linear velocity from three scalar coordinates.
 
void set_angular_velocity (const Eigen::Vector3d &angular_velocity)
 Setter of the angular velocity attribute.
 
void set_angular_velocity (const std::vector< double > &angular_velocity)
 Setter of the angular velocity from a std vector.
 
void set_angular_velocity (const double &x, const double &y, const double &z)
 Setter of the angular velocity from three scalar coordinates.
 
void set_twist (const Eigen::Matrix< double, 6, 1 > &twist)
 Setter of the linear and angular velocities from a 6d twist vector.
 
void set_twist (const std::vector< double > &twist)
 Setter of the linear and angular velocities from a std vector.
 
void set_linear_acceleration (const Eigen::Vector3d &linear_acceleration)
 Setter of the linear acceleration attribute.
 
void set_linear_acceleration (const std::vector< double > &linear_acceleration)
 Setter of the linear acceleration from a std vector.
 
void set_linear_acceleration (const double &x, const double &y, const double &z)
 Setter of the linear acceleration from three scalar coordinates.
 
void set_angular_acceleration (const Eigen::Vector3d &angular_acceleration)
 Setter of the angular velocity attribute.
 
void set_angular_acceleration (const std::vector< double > &angular_acceleration)
 Setter of the angular acceleration from a std vector.
 
void set_angular_acceleration (const double &x, const double &y, const double &z)
 Setter of the angular acceleration from three scalar coordinates.
 
void set_acceleration (const Eigen::Matrix< double, 6, 1 > &acceleration)
 Setter of the linear and angular acceleration from a 6d acceleration vector.
 
void set_acceleration (const std::vector< double > &acceleration)
 Setter of the linear and angular acceleration from a std vector.
 
void set_force (const Eigen::Vector3d &force)
 Setter of the force attribute.
 
void set_force (const std::vector< double > &force)
 Setter of the force from a std vector.
 
void set_force (const double &x, const double &y, const double &z)
 Setter of the force from three scalar coordinates.
 
void set_torque (const Eigen::Vector3d &torque)
 Setter of the torque attribute.
 
void set_torque (const std::vector< double > &torque)
 Setter of the torque from a std vector.
 
void set_torque (const double &x, const double &y, const double &z)
 Setter of the torque from three scalar coordinates.
 
void set_wrench (const Eigen::Matrix< double, 6, 1 > &wrench)
 Setter of the force and torque from a 6d wrench vector.
 
void set_wrench (const std::vector< double > &wrench)
 Setter of the force and torque from a std vector.
 
void set_zero ()
 Set the State to a zero value.
 
void clamp_state_variable (double max_norm, const CartesianStateVariable &state_variable_type, double noise_ratio=0)
 Clamp inplace the norm of the a specific state variable.
 
CartesianState copy () const
 Return a copy of the Cartesian state.
 
double dist (const CartesianState &state, const CartesianStateVariable &state_variable_type=CartesianStateVariable::ALL) const
 Compute the distance to another state as the sum of distances between each features.
 
void reset () override
 Reset the object to a post-construction state.
 
CartesianState inverse () const
 Compute the inverse of the current Cartesian state.
 
void normalize (const CartesianStateVariable &state_variable_type=CartesianStateVariable::ALL)
 Normalize inplace the state at the state variable given in argument. Default is full state.
 
CartesianState normalized (const CartesianStateVariable &state_variable_type=CartesianStateVariable::ALL) const
 Compute the normalized state at the state variable given in argument. Default is full state.
 
CartesianStateoperator*= (const CartesianState &state)
 Transform inplace a Cartesian state into the current reference frame.
 
CartesianState operator* (const CartesianState &state) const
 Transform a Cartesian state into the left operand state reference frame.
 
CartesianStateoperator*= (double lambda)
 Scale inplace by a scalar.
 
CartesianState operator* (double lambda) const
 Scale a Cartesian pose by a scalar.
 
Eigen::Vector3d operator* (const Eigen::Vector3d &vector) const
 Transform a vector into the state reference frame.
 
CartesianStateoperator/= (double lambda)
 Scale inplace by a scalar.
 
CartesianState operator/ (double lambda) const
 Scale a Cartesian state by a scalar.
 
CartesianStateoperator+= (const CartesianState &state)
 Add inplace another Cartesian state.
 
CartesianState operator+ (const CartesianState &state) const
 Add another Cartesian state.
 
CartesianState operator- () const
 Negate a Cartesian state.
 
CartesianStateoperator-= (const CartesianState &state)
 Compute inplace the difference with another Cartesian state.
 
CartesianState operator- (const CartesianState &state) const
 Compute the difference with another Cartesian state.
 
- Public Member Functions inherited from state_representation::SpatialState
 SpatialState ()
 Empty constructor.
 
 SpatialState (const std::string &name, const std::string &reference_frame="world")
 Constructor with name and reference frame specification.
 
 SpatialState (const SpatialState &state)
 Copy constructor from another spatial state.
 
SpatialStateoperator= (const SpatialState &state)
 Copy assignment operator that has to be defined to the custom assignment operator.
 
const std::string & get_reference_frame () const
 Getter of the reference frame as const reference.
 
virtual void set_reference_frame (const std::string &reference_frame)
 Setter of the reference frame.
 
bool is_incompatible (const State &state) const override
 Check if the spatial state is incompatible for operations with the state given as argument.
 
- Public Member Functions inherited from state_representation::State
 State ()
 Empty constructor.
 
 State (const std::string &name)
 Constructor with name specification.
 
 State (const State &state)
 Copy constructor from another state.
 
virtual ~State ()=default
 Virtual destructor.
 
Stateoperator= (const State &state)
 Copy assignment operator that has to be defined to the custom assignment operator.
 
const StateTypeget_type () const
 Getter of the type attribute.
 
const std::string & get_name () const
 Getter of the name attribute.
 
bool is_empty () const
 Getter of the empty attribute.
 
const std::chrono::time_point< std::chrono::steady_clock > & get_timestamp () const
 Getter of the timestamp attribute.
 
virtual void set_name (const std::string &name)
 Setter of the name attribute.
 
void reset_timestamp ()
 Reset the timestamp attribute to now.
 
virtual void set_data (const Eigen::MatrixXd &data)
 Set the data of the state from an Eigen matrix.
 
double get_age () const
 Get the age of the state, i.e. the time since the last modification.
 
bool is_deprecated (double time_delay) const
 Check if the state is deprecated given a certain time delay.
 
template<typename DurationT >
bool is_deprecated (const std::chrono::duration< int64_t, DurationT > &time_delay) const
 Check if the state is deprecated given a certain time delay.
 
 operator bool () const noexcept
 Boolean operator for the truthiness of a state.
 

Static Public Member Functions

static CartesianWrench Zero (const std::string &name, const std::string &reference="world")
 Constructor for the zero wrench.
 
static CartesianWrench Random (const std::string &name, const std::string &reference="world")
 Constructor for a random wrench.
 
- Static Public Member Functions inherited from state_representation::CartesianState
static CartesianState Identity (const std::string &name, const std::string &reference="world")
 Constructor for the identity Cartesian state (identity pose and 0 for the rest)
 
static CartesianState Random (const std::string &name, const std::string &reference="world")
 Constructor for a random Cartesian state.
 

Friends

CartesianWrench operator* (double lambda, const CartesianWrench &wrench)
 Scale a Cartesian wrench by a scalar.
 
CartesianWrench operator* (const Eigen::Matrix< double, 6, 6 > &lambda, const CartesianWrench &wrench)
 Scale a Cartesian wrench in all dimensions by a matrix.
 
std::ostream & operator<< (std::ostream &os, const CartesianWrench &wrench)
 Overload the ostream operator for printing.
 

Additional Inherited Members

- Protected Member Functions inherited from state_representation::CartesianState
Eigen::VectorXd get_state_variable (const CartesianStateVariable &state_variable_type) const
 Getter of the variable value corresponding to the input.
 
void set_state_variable (const Eigen::VectorXd &new_value, const CartesianStateVariable &state_variable_type)
 Setter of the variable value corresponding to the input.
 
void set_state_variable (const std::vector< double > &new_value, const CartesianStateVariable &state_variable_type)
 Setter of the variable value corresponding to the input.
 
std::string to_string () const override
 Convert the state to its string representation.
 
- Protected Member Functions inherited from state_representation::SpatialState
std::string to_string () const override
 Convert the state to its string representation.
 
- Protected Member Functions inherited from state_representation::State
void set_type (const StateType &type)
 Setter of the state type attribute.
 
void set_empty (bool empty=true)
 Setter of the empty attribute.
 
void assert_not_empty () const
 Throw an exception if the state is empty.
 

Detailed Description

Class to define wrench in Cartesian space as 3D force and torque vectors.

Definition at line 18 of file CartesianWrench.hpp.

Constructor & Destructor Documentation

◆ CartesianWrench() [1/7]

state_representation::CartesianWrench::CartesianWrench ( )
explicit

Empty constructor.

Definition at line 8 of file CartesianWrench.cpp.

◆ CartesianWrench() [2/7]

state_representation::CartesianWrench::CartesianWrench ( const std::string &  name,
const std::string &  reference = "world" 
)
explicit

Constructor with name and reference frame provided.

Parameters
nameThe name of the state
referenceThe name of the reference frame (default is "world")

Definition at line 12 of file CartesianWrench.cpp.

◆ CartesianWrench() [3/7]

state_representation::CartesianWrench::CartesianWrench ( const CartesianWrench wrench)

Copy constructor.

Definition at line 46 of file CartesianWrench.cpp.

◆ CartesianWrench() [4/7]

state_representation::CartesianWrench::CartesianWrench ( const CartesianState state)

Copy constructor from a Cartesian state.

Definition at line 38 of file CartesianWrench.cpp.

◆ CartesianWrench() [5/7]

state_representation::CartesianWrench::CartesianWrench ( const std::string &  name,
const Eigen::Vector3d &  force,
const std::string &  reference = "world" 
)
explicit

Construct a Cartesian wrench from a force given as a vector.

Definition at line 17 of file CartesianWrench.cpp.

◆ CartesianWrench() [6/7]

state_representation::CartesianWrench::CartesianWrench ( const std::string &  name,
const Eigen::Vector3d &  force,
const Eigen::Vector3d &  torque,
const std::string &  reference = "world" 
)
explicit

Construct a Cartesian wrench from a force and torque given as vectors.

Definition at line 23 of file CartesianWrench.cpp.

◆ CartesianWrench() [7/7]

state_representation::CartesianWrench::CartesianWrench ( const std::string &  name,
const Eigen::Matrix< double, 6, 1 > &  wrench,
const std::string &  reference = "world" 
)
explicit

Construct a Cartesian wrench from a single 6d wrench vector.

Definition at line 31 of file CartesianWrench.cpp.

Member Function Documentation

◆ clamp()

void state_representation::CartesianWrench::clamp ( double  max_force,
double  max_torque,
double  force_noise_ratio = 0,
double  torque_noise_ratio = 0 
)

Clamp inplace the magnitude of the wrench to the values in argument.

Parameters
max_forceThe maximum magnitude of the force
max_torqueThe maximum magnitude of the torque
force_noise_ratioIf provided, this value will be used to apply a deadzone under which the force will be set to 0
torque_noise_ratioIf provided, this value will be used to apply a deadzone under which the torque will be set to 0

Definition at line 75 of file CartesianWrench.cpp.

◆ clamped()

CartesianWrench state_representation::CartesianWrench::clamped ( double  max_force,
double  max_torque,
double  force_noise_ratio = 0,
double  torque_noise_ratio = 0 
) const

Return the clamped wrench.

Parameters
max_forceThe maximum magnitude of the force
max_torqueThe maximum magnitude of the torque
force_noise_ratioIf provided, this value will be used to apply a deadzone under which the force will be set to 0
torque_noise_ratioIf provided, this value will be used to apply a deadzone under which the torque will be set to 0
Returns
The clamped wrench

Definition at line 82 of file CartesianWrench.cpp.

◆ copy()

CartesianWrench state_representation::CartesianWrench::copy ( ) const

Return a copy of the Cartesian wrench.

Definition at line 90 of file CartesianWrench.cpp.

◆ data()

Eigen::VectorXd state_representation::CartesianWrench::data ( ) const
overridevirtual

Returns the wrench data as an Eigen vector.

Reimplemented from state_representation::CartesianState.

Definition at line 59 of file CartesianWrench.cpp.

◆ normalized()

CartesianWrench state_representation::CartesianWrench::normalized ( const CartesianStateVariable &  state_variable_type = CartesianStateVariable::WRENCH) const

Compute the normalized wrench at the state variable given in argument (default is full wrench)

Parameters
state_variable_typeThe type of state variable to compute the norms on
Returns
The normalized wrench

Definition at line 95 of file CartesianWrench.cpp.

◆ norms()

std::vector< double > state_representation::CartesianWrench::norms ( const CartesianStateVariable &  state_variable_type = CartesianStateVariable::WRENCH) const
overridevirtual

Compute the norms of the state variable specified by the input type (default is full wrench)

Parameters
state_variable_typeThe type of state variable to compute the norms on
Returns
The norms of the state variables as a vector

Reimplemented from state_representation::CartesianState.

Definition at line 99 of file CartesianWrench.cpp.

◆ operator*()

CartesianWrench state_representation::CartesianWrench::operator* ( double  lambda) const

Scale a Cartesian wrench by a scalar.

: All state variables in all their dimensions are scaled by the same factor.

Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian state
Parameters
lambdaThe scaling factor
Returns
The scaled Cartesian wrench

Definition at line 112 of file CartesianWrench.cpp.

◆ operator*=()

CartesianWrench & state_representation::CartesianWrench::operator*= ( double  lambda)

Scale inplace by a scalar.

: All state variables in all their dimensions are scaled by the same factor.

Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian state
Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian wrench

Definition at line 103 of file CartesianWrench.cpp.

◆ operator+() [1/2]

CartesianState state_representation::CartesianWrench::operator+ ( const CartesianState state) const

Add another Cartesian state.

Parameters
stateA Cartesian state in the same reference frame
Returns
The combined Cartesian state

Definition at line 145 of file CartesianWrench.cpp.

◆ operator+() [2/2]

CartesianWrench state_representation::CartesianWrench::operator+ ( const CartesianWrench wrench) const

Add another Cartesian wrench.

Parameters
wrenchA Cartesian wrench in the same reference frame
Returns
The combined Cartesian wrench

Definition at line 141 of file CartesianWrench.cpp.

◆ operator+=() [1/2]

CartesianWrench & state_representation::CartesianWrench::operator+= ( const CartesianState state)

Add inplace another wrench from a Cartesian state.

Parameters
stateA Cartesian state in the same reference frame
Returns
The reference to the combined Cartesian wrench

Definition at line 136 of file CartesianWrench.cpp.

◆ operator+=() [2/2]

CartesianWrench & state_representation::CartesianWrench::operator+= ( const CartesianWrench wrench)

Add inplace another Cartesian wrench.

Parameters
wrenchA Cartesian wrench in the same reference frame
Returns
The reference to the combined Cartesian wrench

Definition at line 131 of file CartesianWrench.cpp.

◆ operator-() [1/3]

CartesianWrench state_representation::CartesianWrench::operator- ( ) const

Negate a Cartesian wrench.

Returns
The negative value of the Cartesian wrench

Definition at line 149 of file CartesianWrench.cpp.

◆ operator-() [2/3]

CartesianState state_representation::CartesianWrench::operator- ( const CartesianState state) const

Compute the difference with a Cartesian state.

Parameters
stateA Cartesian state in the same reference frame
Returns
The difference in all the state variables

Definition at line 167 of file CartesianWrench.cpp.

◆ operator-() [3/3]

CartesianWrench state_representation::CartesianWrench::operator- ( const CartesianWrench wrench) const

Compute the difference with another Cartesian wrench.

Parameters
wrenchA Cartesian wrench in the same reference frame
Returns
The difference in wrench

Definition at line 163 of file CartesianWrench.cpp.

◆ operator-=() [1/2]

CartesianWrench & state_representation::CartesianWrench::operator-= ( const CartesianState state)

Compute inplace the difference with another Cartesian state.

Parameters
stateA Cartesian state in the same reference frame
Returns
The reference to the difference in wrench

Definition at line 158 of file CartesianWrench.cpp.

◆ operator-=() [2/2]

CartesianWrench & state_representation::CartesianWrench::operator-= ( const CartesianWrench wrench)

Compute inplace the difference with another Cartesian wrench.

Parameters
wrenchA Cartesian wrench in the same reference frame
Returns
The reference to the difference in wrench

Definition at line 153 of file CartesianWrench.cpp.

◆ operator/()

CartesianWrench state_representation::CartesianWrench::operator/ ( double  lambda) const

Scale a Cartesian wrench by a scalar.

: All state variables in all their dimensions are scaled by the same factor.

Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian state
Parameters
lambdaThe scaling factor
Returns
The scaled Cartesian wrench

Definition at line 127 of file CartesianWrench.cpp.

◆ operator/=()

CartesianWrench & state_representation::CartesianWrench::operator/= ( double  lambda)

Scale inplace by a scalar.

: All state variables in all their dimensions are scaled by the same factor.

Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian state
Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian wrench

Definition at line 122 of file CartesianWrench.cpp.

◆ operator=()

CartesianWrench & state_representation::CartesianWrench::operator= ( const CartesianWrench wrench)
default

Copy assignment operator that has to be defined to the custom assignment operator.

Parameters
wrenchThe wrench with value to assign
Returns
Reference to the current wrench with new values

◆ Random()

CartesianWrench state_representation::CartesianWrench::Random ( const std::string &  name,
const std::string &  reference = "world" 
)
static

Constructor for a random wrench.

Parameters
nameThe name of the state
referenceThe name of the reference frame (default is "world)
Returns
The random Cartesian wrench

Definition at line 53 of file CartesianWrench.cpp.

◆ set_data() [1/2]

void state_representation::CartesianWrench::set_data ( const Eigen::VectorXd &  data)
overridevirtual

Set the wrench data from an Eigen vector.

Reimplemented from state_representation::CartesianState.

Definition at line 63 of file CartesianWrench.cpp.

◆ set_data() [2/2]

void state_representation::CartesianWrench::set_data ( const std::vector< double > &  data)
overridevirtual

Set the wrench data from a std vector.

Reimplemented from state_representation::CartesianState.

Definition at line 71 of file CartesianWrench.cpp.

◆ Zero()

CartesianWrench state_representation::CartesianWrench::Zero ( const std::string &  name,
const std::string &  reference = "world" 
)
static

Constructor for the zero wrench.

Parameters
nameThe name of the state
referenceThe name of the reference frame (default is "world)
Returns
The zero Cartesian wrench

Definition at line 49 of file CartesianWrench.cpp.

Friends And Related Symbol Documentation

◆ operator* [1/2]

CartesianWrench operator* ( const Eigen::Matrix< double, 6, 6 > &  lambda,
const CartesianWrench wrench 
)
friend

Scale a Cartesian wrench in all dimensions by a matrix.

Parameters
lambdaThe scaling factors in all the dimensions
wrenchThe Cartesian wrench to be scaled
Returns
The scaled Cartesian wrench

Definition at line 116 of file CartesianWrench.cpp.

◆ operator* [2/2]

CartesianWrench operator* ( double  lambda,
const CartesianWrench wrench 
)
friend

Scale a Cartesian wrench by a scalar.

: All state variables in all their dimensions are scaled by the same factor.

Parameters
lambdaThe scaling factor
Returns
The reference to the scaled Cartesian state
Parameters
lambdaThe scaling factor
wrenchThe Cartesian wrench to be scaled
Returns
The scaled Cartesian wrench

Definition at line 108 of file CartesianWrench.cpp.

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const CartesianWrench wrench 
)
friend

Overload the ostream operator for printing.

Parameters
osThe ostream to append the string representing the Cartesian wrench to
CartesianWrenchThe Cartesian wrench to print
Returns
The appended ostream

Definition at line 171 of file CartesianWrench.cpp.


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