DART  6.10.1
dart::gui::osg::ShapeFrameNode Class Reference

#include <ShapeFrameNode.hpp>

Inheritance diagram for dart::gui::osg::ShapeFrameNode:

Public Member Functions

 ShapeFrameNode (dart::dynamics::ShapeFrame *frame, WorldNode *worldNode)
 Create a ShapeFrameNode. More...
 
dart::dynamics::ShapeFramegetShapeFrame (bool checkUtilization=false)
 Pointer to the ShapeFrame associated with this ShapeFrameNode. More...
 
const dart::dynamics::ShapeFramegetShapeFrame (bool checkUtilization=false) const
 Pointer to the ShapeFrame associated with this ShapeFrameNode. More...
 
WorldNodegetWorldNode ()
 
const WorldNodegetWorldNode () const
 
void refresh (bool shortCircuitIfUtilized=false)
 Update all rendering data for this ShapeFrame. More...
 
bool wasUtilized () const
 True iff this ShapeFrameNode has been utilized on the latest update. More...
 
void clearUtilization ()
 Set mUtilized to false. More...
 

Protected Member Functions

virtual ~ShapeFrameNode ()
 
void refreshShapeNode (const std::shared_ptr< dart::dynamics::Shape > &shape)
 
void createShapeNode (const std::shared_ptr< dart::dynamics::Shape > &shape)
 

Protected Attributes

dart::dynamics::ShapeFramemShapeFrame
 Pointer to the ShapeFrame that this ShapeFrameNode is associated with. More...
 
WorldNodemWorldNode
 Pointer to the WorldNode that this ShapeFrameNode belongs to. More...
 
render::ShapeNodemRenderShapeNode
 
bool mUtilized
 True iff this ShapeFrameNode has been utilized on the latest update. More...
 

Constructor & Destructor Documentation

◆ ShapeFrameNode()

dart::gui::osg::ShapeFrameNode::ShapeFrameNode ( dart::dynamics::ShapeFrame frame,
WorldNode worldNode 
)

Create a ShapeFrameNode.

If recursive is set to true, it will also create nodes for all child Entities and child Frames

◆ ~ShapeFrameNode()

dart::gui::osg::ShapeFrameNode::~ShapeFrameNode ( )
protectedvirtual

Member Function Documentation

◆ clearUtilization()

void dart::gui::osg::ShapeFrameNode::clearUtilization ( )

Set mUtilized to false.

◆ createShapeNode()

void dart::gui::osg::ShapeFrameNode::createShapeNode ( const std::shared_ptr< dart::dynamics::Shape > &  shape)
protected

◆ getShapeFrame() [1/2]

dart::dynamics::ShapeFrame * dart::gui::osg::ShapeFrameNode::getShapeFrame ( bool  checkUtilization = false)

Pointer to the ShapeFrame associated with this ShapeFrameNode.

◆ getShapeFrame() [2/2]

const dart::dynamics::ShapeFrame * dart::gui::osg::ShapeFrameNode::getShapeFrame ( bool  checkUtilization = false) const

Pointer to the ShapeFrame associated with this ShapeFrameNode.

◆ getWorldNode() [1/2]

WorldNode * dart::gui::osg::ShapeFrameNode::getWorldNode ( )

◆ getWorldNode() [2/2]

const WorldNode * dart::gui::osg::ShapeFrameNode::getWorldNode ( ) const

◆ refresh()

void dart::gui::osg::ShapeFrameNode::refresh ( bool  shortCircuitIfUtilized = false)

Update all rendering data for this ShapeFrame.

If shortCircuitIfUtilized is true, this will skip the refresh process if mUtilized is set to true. clearUtilization() needs to be called before this function if short circuiting is going to be used.

◆ refreshShapeNode()

void dart::gui::osg::ShapeFrameNode::refreshShapeNode ( const std::shared_ptr< dart::dynamics::Shape > &  shape)
protected

◆ wasUtilized()

bool dart::gui::osg::ShapeFrameNode::wasUtilized ( ) const

True iff this ShapeFrameNode has been utilized on the latest update.

Member Data Documentation

◆ mRenderShapeNode

render::ShapeNode* dart::gui::osg::ShapeFrameNode::mRenderShapeNode
protected

◆ mShapeFrame

dart::dynamics::ShapeFrame* dart::gui::osg::ShapeFrameNode::mShapeFrame
protected

Pointer to the ShapeFrame that this ShapeFrameNode is associated with.

◆ mUtilized

bool dart::gui::osg::ShapeFrameNode::mUtilized
protected

True iff this ShapeFrameNode has been utilized on the latest update.

If it has not, that is an indication that it is no longer being used and should be deleted.

◆ mWorldNode

WorldNode* dart::gui::osg::ShapeFrameNode::mWorldNode
protected

Pointer to the WorldNode that this ShapeFrameNode belongs to.