candlewick 0.9.0
A tiny cross-platform renderer based on SDL3
Loading...
Searching...
No Matches
candlewick::multibody::RobotDebugSystem Struct Referencefinal

A debug system for use with Pinocchio models and geometries. More...

#include <candlewick/multibody/RobotDebug.h>

Inheritance diagram for candlewick::multibody::RobotDebugSystem:
candlewick::IDebugSubSystem

Public Member Functions

 RobotDebugSystem (DebugScene &scene, const pin::Model &model, const pin::Data &data)
 
entt::entity addFrameTriad (pin::FrameIndex frame_id, const Float3 &scale=DEFAULT_TRIAD_SCALE)
 
entt::entity addFrameVelocityArrow (pin::FrameIndex frame_id, float scale=DEFAULT_VEL_SCALE)
 
void update () override
 Update the transform components for the debug visual entities, according to their frame placements and velocities.
 
void destroyEntities ()
 
 ~RobotDebugSystem ()
 
void reload (const pin::Model &model, const pin::Data &data)
 
- Public Member Functions inherited from candlewick::IDebugSubSystem
virtual ~IDebugSubSystem ()=default
 

Static Public Attributes

static Float3 DEFAULT_TRIAD_SCALE = Float3::Constant(0.33333f)
 
static float DEFAULT_VEL_SCALE = 0.5f
 

Additional Inherited Members

- Protected Member Functions inherited from candlewick::IDebugSubSystem
 IDebugSubSystem (DebugScene &scene)
 
- Protected Attributes inherited from candlewick::IDebugSubSystem
DebugScenem_scene
 

Detailed Description

A debug system for use with Pinocchio models and geometries.

Supports drawing a triad for a frame. Member pinData must refer to an existing pinocchio::Data object at all times.

Constructor & Destructor Documentation

◆ RobotDebugSystem()

candlewick::multibody::RobotDebugSystem::RobotDebugSystem ( DebugScene & scene,
const pin::Model & model,
const pin::Data & data )
inline

◆ ~RobotDebugSystem()

candlewick::multibody::RobotDebugSystem::~RobotDebugSystem ( )
inline

Member Function Documentation

◆ addFrameTriad()

entt::entity candlewick::multibody::RobotDebugSystem::addFrameTriad ( pin::FrameIndex frame_id,
const Float3 & scale = DEFAULT_TRIAD_SCALE )

◆ addFrameVelocityArrow()

entt::entity candlewick::multibody::RobotDebugSystem::addFrameVelocityArrow ( pin::FrameIndex frame_id,
float scale = DEFAULT_VEL_SCALE )

◆ destroyEntities()

void candlewick::multibody::RobotDebugSystem::destroyEntities ( )

◆ reload()

void candlewick::multibody::RobotDebugSystem::reload ( const pin::Model & model,
const pin::Data & data )
inline

◆ update()

void candlewick::multibody::RobotDebugSystem::update ( )
overridevirtual

Update the transform components for the debug visual entities, according to their frame placements and velocities.

Warning
We expect pinocchio::updateFramePlacements() or pinocchio::framesForwardKinematics() to be called first!

Implements candlewick::IDebugSubSystem.

Member Data Documentation

◆ DEFAULT_TRIAD_SCALE

Float3 candlewick::multibody::RobotDebugSystem::DEFAULT_TRIAD_SCALE = Float3::Constant(0.33333f)
inlinestatic

◆ DEFAULT_VEL_SCALE

float candlewick::multibody::RobotDebugSystem::DEFAULT_VEL_SCALE = 0.5f
inlinestatic

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