Exotica
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
exotica::EffAxisAlignment Class Reference

#include <eff_axis_alignment.h>

Inheritance diagram for exotica::EffAxisAlignment:
Inheritance graph
Collaboration diagram for exotica::EffAxisAlignment:
Collaboration graph

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW void AssignScene (ScenePtr scene) override
 
void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi) override
 
void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian) override
 
int TaskSpaceDim () override
 
void SetDirection (const std::string &frame_name, const Eigen::Vector3d &dir_in)
 
Eigen::Vector3d GetDirection (const std::string &frame_name) const
 
void SetAxis (const std::string &frame_name, const Eigen::Vector3d &axis_in)
 
Eigen::Vector3d GetAxis (const std::string &frame_name) const
 
- Public Member Functions inherited from exotica::TaskMap
virtual void InstantiateBase (const Initializer &init)
 
virtual void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian, HessianRef hessian)
 
virtual void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi)
 
virtual void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du)
 
virtual void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du, HessianRef ddphi_ddx, HessianRef ddphi_ddu, HessianRef ddphi_dxdu)
 
virtual int TaskSpaceJacobianDim ()
 
virtual void PreUpdate ()
 
virtual std::vector< TaskVectorEntryGetLieGroupIndices ()
 
std::vector< KinematicFrameRequestGetFrames () const
 
- Public Member Functions inherited from exotica::Object
 Object ()
 
virtual ~Object ()
 
virtual std::string type () const
 Type Information wrapper: must be virtual so that it is polymorphic... More...
 
std::string GetObjectName ()
 
void InstantiateObject (const Initializer &init)
 
virtual std::string Print (const std::string &prepend) const
 
- Public Member Functions inherited from exotica::InstantiableBase
 InstantiableBase ()=default
 
virtual ~InstantiableBase ()=default
 
virtual std::vector< InitializerGetAllTemplates () const =0
 
- Public Member Functions inherited from exotica::Instantiable< EffAxisAlignmentInitializer >
void InstantiateInternal (const Initializer &init) override
 
Initializer GetInitializerTemplate () override
 
std::vector< InitializerGetAllTemplates () const override
 
virtual void Instantiate (const EffAxisAlignmentInitializer &init)
 
const EffAxisAlignmentInitializer & GetParameters () const
 

Public Attributes

int N
 
- Public Attributes inherited from exotica::TaskMap
std::vector< KinematicSolutionkinematics = std::vector<KinematicSolution>(1)
 
int id = -1
 
int start = -1
 
int length = -1
 
int start_jacobian = -1
 
int length_jacobian = -1
 
bool is_used = false
 
- Public Attributes inherited from exotica::Object
std::string ns_
 
std::string object_name_
 
bool debug_
 

Private Member Functions

void Initialize ()
 

Private Attributes

ros::Publisher pub_debug_
 
visualization_msgs::MarkerArray msg_debug_
 
int n_frames_
 
Eigen::Matrix3Xd axis_
 
Eigen::Matrix3Xd dir_
 
Eigen::Vector3d link_position_in_base_
 
Eigen::Vector3d link_axis_position_in_base_
 

Additional Inherited Members

- Protected Attributes inherited from exotica::TaskMap
std::vector< KinematicFrameRequestframes_
 
ScenePtr scene_ = nullptr
 
- Protected Attributes inherited from exotica::Instantiable< EffAxisAlignmentInitializer >
EffAxisAlignmentInitializer parameters_
 

Member Function Documentation

◆ AssignScene()

EIGEN_MAKE_ALIGNED_OPERATOR_NEW void exotica::EffAxisAlignment::AssignScene ( ScenePtr  scene)
overridevirtual

Reimplemented from exotica::TaskMap.

◆ GetAxis()

Eigen::Vector3d exotica::EffAxisAlignment::GetAxis ( const std::string &  frame_name) const

◆ GetDirection()

Eigen::Vector3d exotica::EffAxisAlignment::GetDirection ( const std::string &  frame_name) const

◆ Initialize()

void exotica::EffAxisAlignment::Initialize ( )
private

◆ SetAxis()

void exotica::EffAxisAlignment::SetAxis ( const std::string &  frame_name,
const Eigen::Vector3d &  axis_in 
)

◆ SetDirection()

void exotica::EffAxisAlignment::SetDirection ( const std::string &  frame_name,
const Eigen::Vector3d &  dir_in 
)

◆ TaskSpaceDim()

int exotica::EffAxisAlignment::TaskSpaceDim ( )
overridevirtual

Implements exotica::TaskMap.

◆ Update() [1/2]

void exotica::EffAxisAlignment::Update ( Eigen::VectorXdRefConst  q,
Eigen::VectorXdRef  phi 
)
overridevirtual

Implements exotica::TaskMap.

◆ Update() [2/2]

void exotica::EffAxisAlignment::Update ( Eigen::VectorXdRefConst  q,
Eigen::VectorXdRef  phi,
Eigen::MatrixXdRef  jacobian 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Member Data Documentation

◆ axis_

Eigen::Matrix3Xd exotica::EffAxisAlignment::axis_
private

◆ dir_

Eigen::Matrix3Xd exotica::EffAxisAlignment::dir_
private

◆ link_axis_position_in_base_

Eigen::Vector3d exotica::EffAxisAlignment::link_axis_position_in_base_
private

◆ link_position_in_base_

Eigen::Vector3d exotica::EffAxisAlignment::link_position_in_base_
private

◆ msg_debug_

visualization_msgs::MarkerArray exotica::EffAxisAlignment::msg_debug_
private

◆ N

int exotica::EffAxisAlignment::N

◆ n_frames_

int exotica::EffAxisAlignment::n_frames_
private

◆ pub_debug_

ros::Publisher exotica::EffAxisAlignment::pub_debug_
private

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