Go to the documentation of this file.
5 #ifndef __pinocchio_extra_base_visualizer_hpp__
6 #define __pinocchio_extra_base_visualizer_hpp__
9 #include "pinocchio/visualizers/config.hpp"
13 #include <boost/optional.hpp>
80 virtual void loadViewerModel() = 0;
83 virtual void rebuildData();
87 virtual void display(
const boost::optional<ConstVectorRef> &
q = boost::none);
93 boost::optional<ConstVectorRef> q_(
q);
99 virtual void play(
const std::vector<ConstVectorRef> &
qs,
Scalar dt);
128 this->setCameraPose(pose.toHomogeneousMatrix());
154 return *m_visualModel;
160 hasCollisionModel(), std::logic_error,
"No collision model in the visualizer.");
161 return *m_collisionModel;
166 return m_collisionModel !=
nullptr;
186 return *m_visualData;
190 return *m_visualData;
196 hasCollisionModel(), std::logic_error,
"No collision model in the visualizer.");
197 return *m_collisionData;
203 hasCollisionModel(), std::logic_error,
"No collision model in the visualizer.");
204 return *m_collisionData;
221 virtual void displayImpl() = 0;
228 #endif // ifndef __pinocchio_extra_base_visualizer_hxx__
virtual void setCameraPose(const Eigen::Ref< const Matrix4 > &)
Set the active camera 6D pose.
virtual void clean()
Delete all objects from the scene.
virtual void enableCameraControl(bool)
Enable/disable controlling the camera from keyboard and mouse.
#define PINOCCHIO_THROW(condition, exception_type, message)
Generic macro to throw an exception in Pinocchio if the condition is not met with a given input messa...
Eigen::Ref< const MatrixXs > ConstMatrixRef
virtual void setCameraPosition(const Eigen::Ref< const Vector3 > &)
Set the active camera position.
virtual bool forceRedraw()
Override this in child class when the scene has to be redrawn. Useful for play().
void display(const Eigen::MatrixBase< D > &q)
Display configuration q (if an actual value is given) or update the Pinocchio frames.
virtual void setCameraZoom(Scalar)
Set camera zoom level; what this means depends on the implementation (FOV zoom or moving forwards).
std::reference_wrapper< Model const > m_model
GeometryData * m_visualData
context::VectorXs VectorXs
virtual void initViewer()
Initialize the viewer.
PINOCCHIO_SCALAR_TYPE_DEFAULT Scalar
const Model & model() const
const GeometryModel * m_visualModel
const GeometryData & collisionData() const
bool hasCollisionModel() const
bool hasExternalData() const
Whether the internal data pointers are borrowed (external), or owned.
const GeometryData & visualData() const
GeometryData & collisionData()
const GeometryModel * m_collisionModel
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > & q
const Data & data() const
virtual void displayPrecall()
This method is called at the beginning of display().
const GeometryModel & visualModel() const
#define PINOCCHIO_OPTIONS_DEFAULT
GeometryData & visualData()
virtual void setCameraTarget(const Eigen::Ref< const Vector3 > &)
Set the active camera target.
#define PINOCCHIO_SCALAR_TYPE_DEFAULT
#define PINOCCHIO_COMMON_TYPEDEF(Scalar, Options)
void setCameraPose(const SE3 &pose)
Set the active camera 6D pose.
Eigen::Ref< const VectorXs > ConstVectorRef
const GeometryModel & collisionModel() const
JointCollectionTpl & model
GeometryData * m_collisionData
Main pinocchio namespace.
A base class for defining visualizers for Pinocchio in C++. This provides basic building blocks (a ba...
pinocchio
Author(s):
autogenerated on Sat Apr 19 2025 02:41:29