Tesseract
Motion Planning Environment
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
tesseract_scene_graph::OFKTNode Class Referenceabstract

The OFKT node is contains multiple trasformation which are described below. More...

#include <ofkt_node.h>

Inheritance diagram for tesseract_scene_graph::OFKTNode:
Inheritance graph
[legend]

Public Types

using UPtr = std::unique_ptr< OFKTNode >
 
using Ptr = std::shared_ptr< OFKTNode >
 
using ConstPtr = std::shared_ptr< const OFKTNode >
 

Public Member Functions

 OFKTNode ()=default
 
virtual ~OFKTNode ()=default
 
 OFKTNode (const OFKTNode &)=delete
 
OFKTNodeoperator= (const OFKTNode &)=delete
 
 OFKTNode (OFKTNode &&)=delete
 
OFKTNodeoperator= (OFKTNode &&)=delete
 
virtual JointType getType () const =0
 Get the type of joint associated with the node. More...
 
virtual void setParent (OFKTNode *parent)=0
 Set the parent node. More...
 
virtual OFKTNodegetParent ()=0
 Get the parent node. More...
 
virtual const OFKTNodegetParent () const =0
 Get the parent node (const) More...
 
virtual const std::string & getLinkName () const =0
 Get the link name associated with the node. More...
 
virtual const std::string & getJointName () const =0
 Get the joint name associated with the node. More...
 
virtual void storeJointValue (double joint_value)=0
 Set the nodes joint value if it has one. More...
 
virtual double getJointValue () const =0
 Get the current joint value. More...
 
virtual bool hasJointValueChanged () const =0
 Indicates that the joint value has changed and that local and world transformation need to be recomputed. More...
 
virtual void setStaticTransformation (Eigen::Isometry3d static_tf)=0
 Set the static transformation. More...
 
virtual const Eigen::Isometry3d & getStaticTransformation () const =0
 Get the nodes static transformation. More...
 
virtual void computeAndStoreLocalTransformation ()=0
 Compute and save the local transformation 'L = S * J(Joint Value)'. More...
 
virtual const Eigen::Isometry3d & getLocalTransformation () const =0
 Get the local transformation: 'L = S * J'. More...
 
virtual Eigen::Isometry3d computeLocalTransformation (double joint_value) const =0
 Compute the local tranformation but do not save. More...
 
virtual void computeAndStoreWorldTransformation ()=0
 Compute and store the nodes world transformation. More...
 
virtual const Eigen::Isometry3d & getWorldTransformation () const =0
 Get the nodes world transformation. More...
 
virtual bool updateWorldTransformationRequired () const =0
 Indicates if an update of the world transformation is required. More...
 
virtual Eigen::Matrix< double, 6, 1 > getLocalTwist () const =0
 Return the twist of the node in its local frame. More...
 
virtual void addChild (OFKTNode *node)=0
 Add a child node. More...
 
virtual void removeChild (const OFKTNode *node)=0
 Remove a child node assiciated with this node. More...
 
virtual std::vector< OFKTNode * > & getChildren ()=0
 Get a vector of child nodes associated with this node. More...
 
virtual const std::vector< const OFKTNode * > & getChildren () const =0
 Get a vector of child nodes associated with this node (Const) More...
 

Detailed Description

The OFKT node is contains multiple trasformation which are described below.

Member Typedef Documentation

◆ ConstPtr

using tesseract_scene_graph::OFKTNode::ConstPtr = std::shared_ptr<const OFKTNode>

◆ Ptr

◆ UPtr

Constructor & Destructor Documentation

◆ OFKTNode() [1/3]

tesseract_scene_graph::OFKTNode::OFKTNode ( )
default

◆ ~OFKTNode()

virtual tesseract_scene_graph::OFKTNode::~OFKTNode ( )
virtualdefault

◆ OFKTNode() [2/3]

tesseract_scene_graph::OFKTNode::OFKTNode ( const OFKTNode )
delete

◆ OFKTNode() [3/3]

tesseract_scene_graph::OFKTNode::OFKTNode ( OFKTNode &&  )
delete

Member Function Documentation

◆ addChild()

virtual void tesseract_scene_graph::OFKTNode::addChild ( OFKTNode node)
pure virtual

Add a child node.

Parameters
nodeThe node which is a child of this node

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ computeAndStoreLocalTransformation()

virtual void tesseract_scene_graph::OFKTNode::computeAndStoreLocalTransformation ( )
pure virtual

Compute and save the local transformation 'L = S * J(Joint Value)'.

This should reset the flag such that hasJointValueChanged() returns false

Implemented in tesseract_scene_graph::OFKTRootNode, tesseract_scene_graph::OFKTFixedNode, tesseract_scene_graph::OFKTRevoluteNode, tesseract_scene_graph::OFKTContinuousNode, and tesseract_scene_graph::OFKTPrismaticNode.

◆ computeAndStoreWorldTransformation()

virtual void tesseract_scene_graph::OFKTNode::computeAndStoreWorldTransformation ( )
pure virtual

Compute and store the nodes world transformation.

This should reset the flag such that updateWorldTransformationRequired() returns false

Implemented in tesseract_scene_graph::OFKTBaseNode, and tesseract_scene_graph::OFKTRootNode.

◆ computeLocalTransformation()

virtual Eigen::Isometry3d tesseract_scene_graph::OFKTNode::computeLocalTransformation ( double  joint_value) const
pure virtual

Compute the local tranformation but do not save.

This provides a const method for computing the local transform.

Parameters
joint_valueThe joint value for calculating the local transformation
Returns
The local transformation for the provided joint value

Implemented in tesseract_scene_graph::OFKTBaseNode, tesseract_scene_graph::OFKTRootNode, tesseract_scene_graph::OFKTFixedNode, tesseract_scene_graph::OFKTRevoluteNode, tesseract_scene_graph::OFKTContinuousNode, and tesseract_scene_graph::OFKTPrismaticNode.

◆ getChildren() [1/2]

virtual const std::vector< const OFKTNode * > & tesseract_scene_graph::OFKTNode::getChildren ( ) const
pure virtual

Get a vector of child nodes associated with this node (Const)

Returns
A vector of child nodes

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getChildren() [2/2]

virtual std::vector< OFKTNode * > & tesseract_scene_graph::OFKTNode::getChildren ( )
pure virtual

Get a vector of child nodes associated with this node.

Returns
A vector of child nodes

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getJointName()

virtual const std::string & tesseract_scene_graph::OFKTNode::getJointName ( ) const
pure virtual

Get the joint name associated with the node.

Returns
The link name

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getJointValue()

virtual double tesseract_scene_graph::OFKTNode::getJointValue ( ) const
pure virtual

Get the current joint value.

Returns
The current joint value

Implemented in tesseract_scene_graph::OFKTBaseNode, and tesseract_scene_graph::OFKTFixedNode.

◆ getLinkName()

virtual const std::string & tesseract_scene_graph::OFKTNode::getLinkName ( ) const
pure virtual

Get the link name associated with the node.

Returns
The link name

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getLocalTransformation()

virtual const Eigen::Isometry3d & tesseract_scene_graph::OFKTNode::getLocalTransformation ( ) const
pure virtual

Get the local transformation: 'L = S * J'.

Returns
The nodes local transformation

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getLocalTwist()

virtual Eigen::Matrix< double, 6, 1 > tesseract_scene_graph::OFKTNode::getLocalTwist ( ) const
pure virtual

Return the twist of the node in its local frame.

Returns
The node twist

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getParent() [1/2]

virtual const OFKTNode * tesseract_scene_graph::OFKTNode::getParent ( ) const
pure virtual

Get the parent node (const)

Returns
The parent node

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getParent() [2/2]

virtual OFKTNode * tesseract_scene_graph::OFKTNode::getParent ( )
pure virtual

Get the parent node.

Returns
The parent node

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getStaticTransformation()

virtual const Eigen::Isometry3d & tesseract_scene_graph::OFKTNode::getStaticTransformation ( ) const
pure virtual

Get the nodes static transformation.

Returns
The static transformation

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getType()

virtual JointType tesseract_scene_graph::OFKTNode::getType ( ) const
pure virtual

Get the type of joint associated with the node.

Returns
The Joint Type

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ getWorldTransformation()

virtual const Eigen::Isometry3d & tesseract_scene_graph::OFKTNode::getWorldTransformation ( ) const
pure virtual

Get the nodes world transformation.

Returns
The nodes world transformation

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ hasJointValueChanged()

virtual bool tesseract_scene_graph::OFKTNode::hasJointValueChanged ( ) const
pure virtual

Indicates that the joint value has changed and that local and world transformation need to be recomputed.

Returns
If true, local and world transformation need to be recompute

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ operator=() [1/2]

OFKTNode & tesseract_scene_graph::OFKTNode::operator= ( const OFKTNode )
delete

◆ operator=() [2/2]

OFKTNode & tesseract_scene_graph::OFKTNode::operator= ( OFKTNode &&  )
delete

◆ removeChild()

virtual void tesseract_scene_graph::OFKTNode::removeChild ( const OFKTNode node)
pure virtual

Remove a child node assiciated with this node.

Parameters
nodeThe child node to be removed

Implemented in tesseract_scene_graph::OFKTBaseNode.

◆ setParent()

virtual void tesseract_scene_graph::OFKTNode::setParent ( OFKTNode parent)
pure virtual

Set the parent node.

This should indicate that updateWorldTransformationRequired() = true

Parameters
parentThe parent node

Implemented in tesseract_scene_graph::OFKTBaseNode, and tesseract_scene_graph::OFKTRootNode.

◆ setStaticTransformation()

virtual void tesseract_scene_graph::OFKTNode::setStaticTransformation ( Eigen::Isometry3d  static_tf)
pure virtual

Set the static transformation.

This should recompute the local transformation and updateWorldTransformationRequired() = true.

Parameters
static_tfThe new static transformation

Implemented in tesseract_scene_graph::OFKTBaseNode, tesseract_scene_graph::OFKTRootNode, and tesseract_scene_graph::OFKTFixedNode.

◆ storeJointValue()

virtual void tesseract_scene_graph::OFKTNode::storeJointValue ( double  joint_value)
pure virtual

Set the nodes joint value if it has one.

This should indicate hasJointValueChanged() = true

Parameters
joint_valueThe joint value

Implemented in tesseract_scene_graph::OFKTBaseNode, tesseract_scene_graph::OFKTRootNode, tesseract_scene_graph::OFKTFixedNode, and tesseract_scene_graph::OFKTRevoluteNode.

◆ updateWorldTransformationRequired()

virtual bool tesseract_scene_graph::OFKTNode::updateWorldTransformationRequired ( ) const
pure virtual

Indicates if an update of the world transformation is required.

This should get set to true when either of the following happen.

Note: setJointValue() is not handle here because that is captured by hasJointValueChanged()

Returns
If true, the world transformation need to be recalculated.

Implemented in tesseract_scene_graph::OFKTBaseNode, and tesseract_scene_graph::OFKTRootNode.


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