SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
Public Member Functions | Public Attributes | Private Member Functions | List of all members
scl_ext::CRepCreator3d Class Reference

#include <CRepCreator3d.hpp>

Public Member Functions

 CRepCreator3d ()
 CRepCreator3d (const CRepCreator3d &arg)
 ~CRepCreator3d ()
cDynamicBase * c3dRootRepCreator (const scl::SRobotParsed &arg_robot)

Public Attributes

cDynamicWorld * cdw

Private Member Functions

bool createChild3dNodes (const scl::SRigidBody *arg_link, cDynamicLink *arg_parent_node, cDynamicBase *arg_base)
cDynamicLink * create3dNonRootNode (const scl::SRigidBody *arg_link, cDynamicLink *arg_parent_node, cDynamicBase *base_obj)

Detailed Description

This class translates a scl database entry for a robot into a 3d tree. It does not store any data.

This class will ideally be used once at the start of the program to initialize the 3d branching representation.

Constructor & Destructor Documentation

scl_ext::CRepCreator3d::CRepCreator3d ( )

Constructor : Does nothing. Use static function above.

scl_ext::CRepCreator3d::~CRepCreator3d ( )

Destructor : Does nothing

Member Function Documentation

cDynamicBase * scl_ext::CRepCreator3d::c3dRootRepCreator ( const scl::SRobotParsed arg_robot)

Creates a 3d root structure out of a set of robot definitions. Does not manage the returned memory.

input : Robot name output : TODORoot*

Returns, NULL : failure Valid TODORoot pointer : success

NOTE : Remember to dereference the vectors in TODORoot

Creates a 3d root structure out of a set of robot definitions

Also assigns ids to the SRigidBody objects

input : Robot name output : 3dNodeRoot*

Returns, NULL : failure Valid 3dNodeRoot pointer : success

NOTE : Remember to dereference the vectors in 3dNodeRoot

cDynamicLink * scl_ext::CRepCreator3d::create3dNonRootNode ( const scl::SRigidBody arg_link,
cDynamicLink *  arg_parent_node,
cDynamicBase *  base_obj 

Creates a 3d node for a non-root link given an initialized home frame The node is added to the SRigidBody* structure.

bool scl_ext::CRepCreator3d::createChild3dNodes ( const scl::SRigidBody arg_link,
cDynamicLink *  arg_parent,
cDynamicBase *  arg_base 

Creates a child 3d node given a robot link with all the required information to initialize the node.

This function creates child 3d nodes for a given link in the robot's definition.

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