Base implementation of an inertia visual. More...
#include <BaseInertiaVisual.hh>
Public Member Functions | |
virtual | ~BaseInertiaVisual () |
Destructor. More... | |
virtual VisualPtr | BoxVisual () const override |
Get the box visual. More... | |
virtual void | Load (const gz::math::Pose3d &, const gz::math::Vector3d &) override |
Load the Inertia visual from its pose and scale. More... | |
virtual void | SetInertial (const gz::math::Inertiald &_inertial) override |
Set the inertial component of the visual. More... | |
Public Member Functions inherited from InertiaVisual | |
virtual | ~InertiaVisual () |
Destructor. More... | |
Public Member Functions inherited from Visual | |
virtual | ~Visual () |
Destructor. More... | |
virtual void | AddGeometry (GeometryPtr _geometry)=0 |
Add the given geometry to this visual. If the given node is already attached, no work will be done. More... | |
virtual void | AddVisibilityFlags (uint32_t _flags)=0 |
Add visibility flags. More... | |
virtual gz::math::AxisAlignedBox | BoundingBox () const =0 |
Get the bounding box in world frame coordinates. More... | |
virtual VisualPtr | Clone (const std::string &_name, NodePtr _newParent) const =0 |
Clone the visual (and its children) with a new name. More... | |
virtual GeometryPtr | GeometryByIndex (unsigned int _index) const =0 |
Get geometry at given index. If no geometry exists at given index, NULL will be returned. More... | |
virtual unsigned int | GeometryCount () const =0 |
Get the number of geometries attached to this visual. More... | |
virtual bool | HasGeometry (ConstGeometryPtr _geometry) const =0 |
Determine if given geometry is attached to this visual. More... | |
virtual gz::math::AxisAlignedBox | LocalBoundingBox () const =0 |
Get the local bounding box of the visual. More... | |
virtual MaterialPtr | Material () const =0 |
Get the material assigned to attached visuals and geometries. More... | |
virtual void | RemoveGeometries ()=0 |
Remove all attached geometries from this visual. More... | |
virtual GeometryPtr | RemoveGeometry (GeometryPtr _geometry)=0 |
Remove the given geometry from this visual. If the given node is not a child of this visual, no work will be done. More... | |
virtual GeometryPtr | RemoveGeometryByIndex (unsigned int _index)=0 |
Remove the geometry at the given index from this visual. If the specified node is not attached this visual, no work will be done. More... | |
virtual void | RemoveVisibilityFlags (uint32_t _flags)=0 |
Remove visibility flags. More... | |
virtual void | SetChildMaterial (MaterialPtr _material, bool _unique=true)=0 |
Set the material for all attached visuals only. More... | |
virtual void | SetGeometryMaterial (MaterialPtr _material, bool _unique=true)=0 |
Set the material for all attached geometries only. More... | |
virtual void | SetMaterial (const std::string &_name, bool _unique=true)=0 |
Set the material for all attached visuals and geometries. The specified material will be retrieved from Scene::Material using the given material name. If no material is registered with the given name, no work will be done. More... | |
virtual void | SetMaterial (MaterialPtr _material, bool _unique=true)=0 |
Set the material for all attached visuals and geometries. More... | |
virtual void | SetStatic (bool _static)=0 |
Tells Render Engine this Visual will be static (i.e. won't move, rotate or scale) You can still move, rotate or scale the Visual; however doing so has a performance impact. How much of an impact will depend on the rendering backend being used. More... | |
virtual void | SetVisibilityFlags (uint32_t _flags)=0 |
Set visibility flags. More... | |
virtual void | SetVisible (bool _visible)=0 |
Specify if this visual is visible. More... | |
virtual void | SetWireframe (bool _show)=0 |
Enable or disable wireframe. More... | |
virtual bool | Static () const =0 |
Get whether the visual is static. More... | |
virtual uint32_t | VisibilityFlags () const =0 |
Get visibility flags. More... | |
virtual bool | Wireframe () const =0 |
Get whether wireframe is enabled for this visual. More... | |
Public Member Functions inherited from Node | |
virtual | ~Node () |
Destructor. More... | |
virtual void | AddChild (NodePtr _child)=0 |
Add the given node to this node. If the given node is already a child, no work will be done. More... | |
virtual NodePtr | ChildById (unsigned int _id) const =0 |
Get node with given ID. If no child exists with given ID, NULL will be returned. More... | |
virtual NodePtr | ChildByIndex (unsigned int _index) const =0 |
Get node at given index. If no child exists at given index, NULL will be returned. More... | |
virtual NodePtr | ChildByName (const std::string &_name) const =0 |
Get node with given name. If no child exists with given name, NULL will be returned. More... | |
virtual unsigned int | ChildCount () const =0 |
Get number of child nodes. More... | |
virtual bool | HasChild (ConstNodePtr _child) const =0 |
Determine if given node is an attached child. More... | |
virtual bool | HasChildId (unsigned int _id) const =0 |
Determine if node with given ID is an attached child. More... | |
virtual bool | HasChildName (const std::string &_name) const =0 |
Determine if node with given name is an attached child. More... | |
virtual bool | HasParent () const =0 |
Determine if this Node is attached to another Node. More... | |
virtual bool | HasUserData (const std::string &_key) const =0 |
Check if node has custom data. More... | |
virtual bool | InheritScale () const =0 |
Determine if this node inherits scale from this parent. More... | |
virtual math::Pose3d | InitialLocalPose () const =0 |
Get the initial local pose. More... | |
virtual math::Pose3d | LocalPose () const =0 |
Get the local pose. More... | |
virtual math::Vector3d | LocalPosition () const =0 |
Get the local position. More... | |
virtual math::Quaterniond | LocalRotation () const =0 |
Get the local rotation. More... | |
virtual math::Vector3d | LocalScale () const =0 |
Get the local scale. More... | |
virtual math::Vector3d | Origin () const =0 |
Get position of origin. More... | |
virtual NodePtr | Parent () const =0 |
Get the parent Node. More... | |
virtual NodePtr | RemoveChild (NodePtr _child)=0 |
Remove (detach) the given node from this node. If the given node is not a child of this node, no work will be done. More... | |
virtual NodePtr | RemoveChildById (unsigned int _id)=0 |
Remove (detach) the node with the given ID from this node. If the specified node is not a child of this node, no work will be done. More... | |
virtual NodePtr | RemoveChildByIndex (unsigned int _index)=0 |
Remove (detach) the node at the given index from this node. If the specified node is not a child of this node, no work will be done. More... | |
virtual NodePtr | RemoveChildByName (const std::string &_name)=0 |
Remove (detach) the node with the given name from this node. If the specified node is not a child of this node, no work will be done. More... | |
virtual void | RemoveChildren ()=0 |
Remove all child nodes from this node This detaches all the child nodes but does not destroy them. More... | |
virtual void | RemoveParent ()=0 |
Detach this Node from its parent. If this Node does not have a parent, no work will be done. More... | |
virtual void | Scale (const math::Vector3d &_scale)=0 |
Scale the current scale by the given scalars. More... | |
virtual void | Scale (double _scale)=0 |
Scale the current scale by the given scalar. The given scalar will be assigned to the x, y, and z coordinates. More... | |
virtual void | Scale (double _x, double _y, double _z)=0 |
Scale the current scale by the given scalars. More... | |
virtual void | SetInheritScale (bool _inherit)=0 |
Specify if this node inherits scale from its parent. More... | |
virtual void | SetLocalPose (const math::Pose3d &_pose)=0 |
Set the local pose. More... | |
virtual void | SetLocalPosition (const math::Vector3d &_position)=0 |
Set the local position. More... | |
virtual void | SetLocalPosition (double _x, double _y, double _z)=0 |
Set the local position. More... | |
virtual void | SetLocalRotation (const math::Quaterniond &_rotation)=0 |
Set the local rotation. More... | |
virtual void | SetLocalRotation (double _r, double _p, double _y)=0 |
Set the local rotation. More... | |
virtual void | SetLocalRotation (double _w, double _x, double _y, double _z)=0 |
Set the local rotation. More... | |
virtual void | SetLocalScale (const math::Vector3d &_scale)=0 |
Set the local scale. More... | |
virtual void | SetLocalScale (double _scale)=0 |
Set the local scale. The given scale will be assigned to the x, y, and z coordinates. More... | |
virtual void | SetLocalScale (double _x, double _y, double _z)=0 |
Set the local scale. More... | |
virtual void | SetOrigin (const math::Vector3d &_origin)=0 |
Set position of origin. The position should be relative to the original origin of the geometry. More... | |
virtual void | SetOrigin (double _x, double _y, double _z)=0 |
Set position of origin. The position should be relative to the original origin of the geometry. More... | |
virtual void | SetUserData (const std::string &_key, Variant _value)=0 |
Store any custom data associated with this node. More... | |
virtual void | SetWorldPose (const math::Pose3d &_pose)=0 |
Set the world pose. More... | |
virtual void | SetWorldPosition (const math::Vector3d &_position)=0 |
Set the world position. More... | |
virtual void | SetWorldPosition (double _x, double _y, double _z)=0 |
Set the world position. More... | |
virtual void | SetWorldRotation (const math::Quaterniond &_rotation)=0 |
Set the world rotation. More... | |
virtual void | SetWorldRotation (double _r, double _p, double _y)=0 |
Set the world rotation. More... | |
virtual void | SetWorldRotation (double _w, double _x, double _y, double _z)=0 |
Set the world rotation. More... | |
virtual void | SetWorldScale (const math::Vector3d &_scale)=0 |
Set the world scale. More... | |
virtual void | SetWorldScale (double _scale)=0 |
Set the world scale. The given scale will be assigned to the x, y, and z coordinates. More... | |
virtual void | SetWorldScale (double _x, double _y, double _z)=0 |
Set the world scale. More... | |
virtual Variant | UserData (const std::string &_key) const =0 |
Get custom data stored in this node. More... | |
virtual math::Pose3d | WorldPose () const =0 |
Get the world pose. More... | |
virtual math::Vector3d | WorldPosition () const =0 |
Get the world position. More... | |
virtual math::Quaterniond | WorldRotation () const =0 |
Get the world rotation. More... | |
virtual math::Vector3d | WorldScale () const =0 |
Get the world scale. More... | |
virtual math::Pose3d | WorldToLocal (const math::Pose3d &_pose) const =0 |
Convert given world pose to local pose. More... | |
Public Member Functions inherited from Object | |
virtual | ~Object () |
Destructor. More... | |
virtual void | Destroy ()=0 |
Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior. More... | |
virtual unsigned int | Id () const =0 |
Get the object ID. This ID will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More... | |
virtual std::string | Name () const =0 |
Get the object name. This name will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More... | |
virtual void | PostRender ()=0 |
Post process this object and any of its children after rendering. More... | |
virtual ScenePtr | Scene () const =0 |
Get the Scene that created this object. More... | |
Protected Member Functions | |
BaseInertiaVisual () | |
Constructor. More... | |
virtual void | Init () override |
virtual void | PreRender () override |
Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender. More... | |
Detailed Description
template<class T>
class gz::rendering::BaseInertiaVisual< T >
Base implementation of an inertia visual.
Constructor & Destructor Documentation
◆ BaseInertiaVisual()
|
protected |
Constructor.
◆ ~BaseInertiaVisual()
|
virtual |
Destructor.
Member Function Documentation
◆ BoxVisual()
|
overridevirtual |
Get the box visual.
- Returns
- Pointer to the box visual
Implements InertiaVisual.
Reimplemented in Ogre2InertiaVisual, and OgreInertiaVisual.
◆ Init()
|
overrideprotectedvirtual |
Reimplemented in Ogre2InertiaVisual, and OgreInertiaVisual.
◆ Load()
|
overridevirtual |
Load the Inertia visual from its pose and scale.
- Parameters
-
[in] _pose Pose of the Inertia visual [in] _scale Scale factor of the box visual
Implements InertiaVisual.
Reimplemented in Ogre2InertiaVisual, and OgreInertiaVisual.
◆ PreRender()
|
overrideprotectedvirtual |
Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.
Implements Object.
Reimplemented in Ogre2InertiaVisual, and OgreInertiaVisual.
◆ SetInertial()
|
overridevirtual |
Set the inertial component of the visual.
- Parameters
-
[in] _inertial Inertial component of the visual
Implements InertiaVisual.
References gzlog, Inertial< class >::MassMatrix(), and Inertial< class >::Pose().
The documentation for this class was generated from the following file: