Ocular Engine
Ocular::Editor::AxisGizmo Class Reference

#include <AxisGizmo.hpp>

Inheritance diagram for Ocular::Editor::AxisGizmo:
Ocular::Editor::Gizmo Ocular::Core::SceneObject Ocular::Core::Object Ocular::Core::ObjectIO Ocular::Core::Exposable Ocular::Core::Buildable

Public Member Functions

 AxisGizmo (Core::SceneObject *parent=nullptr)
 
virtual void setSelected (bool selected) override
 
virtual Math::Matrix4x4 getModelMatrix (bool local=true) const override
 
void clearDepthBuffer ()
 
- Public Member Functions inherited from Ocular::Editor::Gizmo
 Gizmo (std::string const &name, Core::SceneObject *parent, std::string const &type)
 
bool isSelected () const
 
- Public Member Functions inherited from Ocular::Core::SceneObject
 SceneObject (std::string const &name, SceneObject *parent=nullptr, std::string const &type="SceneObject")
 
 SceneObject ()
 
virtual ~SceneObject ()
 
virtual void onVariableModified (std::string const &varName) override
 
Math::TransformgetTransform ()
 
void setActive (bool active)
 
bool isActive () const
 
void setVisible (bool visible)
 
bool isVisible () const
 
void setForcedVisible (bool forced)
 
bool isForcedVisible () const
 
void setStatic (bool isStatic)
 
bool isStatic () const
 
void setPersistent (bool persists)
 
bool isPersistent () const
 
Graphics::UniformPerObject const & getUniformData (Math::Matrix4x4 const &viewMatrix, Math::Matrix4x4 const &projMatrix)
 
void setPosition (float x, float y, float z)
 
void setPosition (Math::Vector3f const &position)
 
Math::Vector3f getPosition (bool local=true) const
 
void translate (Math::Vector3f const &translation, bool local=true)
 
void rotate (float angle, Math::Vector3f const &axis)
 
void rotate (Math::Quaternion const &rotation)
 
void setRotation (Math::Quaternion const &rotation)
 
void resetRotation ()
 
Math::Quaternion const & getRotation () const
 
void setScale (Math::Vector3f const &scale)
 
void setScale (float xScale, float yScale, float zScale)
 
Math::Vector3f getScale (bool local=true) const
 
void setTransform (Math::Transform const &transform)
 
void lookAt (Math::Vector3f const &point)
 
Math::Transform const & getTransform () const
 
void setParent (SceneObject *parent, bool maintainWorldPos=true)
 
SceneObjectgetParent () const
 
SceneObjectcreateChild (std::string const &name)
 
void addChild (SceneObject *child, bool maintainWorldPos=true)
 
SceneObjectfindChild (std::string const &name)
 
SceneObjectfindChild (UUID const &uuid)
 
SceneObjectremoveChild (std::string const &name)
 
SceneObjectremoveChild (UUID const &uuid)
 
SceneObjectremoveChild (SceneObject const *object)
 
uint32_t getNumChildren () const
 
std::vector< SceneObject * > const & getAllChildren () const
 
ARoutineaddRoutine (std::string const &name)
 
void addRoutine (ARoutine *routine)
 
template<class T >
T * addRoutine ()
 
bool removeRoutine (std::string const &name)
 
bool removeRoutine (ARoutine *routine, bool transferring=false)
 
void removeAllRoutines ()
 
ARoutinegetRoutine (std::string const &name)
 
std::vector< ARoutine * > const & getAllRoutines () const
 
uint32_t getNumRoutines () const
 
ARenderablesetRenderable (std::string const &name)
 
void setRenderable (ARenderable *renderable)
 
template<class T >
T * setRenderable ()
 
void removeRenderable (bool transferring=false)
 
ARenderablegetRenderable () const
 
virtual void onLoad (BuilderNode const *node) override
 
virtual void onSave (BuilderNode *node) const override
 
void forceBoundsRebuild ()
 
Math::BoundsSphere getBoundsSphere (bool local)
 
Math::BoundsAABB getBoundsAABB (bool local)
 
Math::BoundsOBB getBoundsOBB (bool local)
 
- Public Member Functions inherited from Ocular::Core::Object
 Object (std::string name, std::string className)
 Creates a new Object with the specified name and class. More...
 
 Object (std::string name)
 Creates a new Object with the specified name. More...
 
 Object ()
 Creates a new Object with the default name ('Name').
 
std::string const & getName () const
 
void setName (std::string name)
 Sets the name of the Object. More...
 
std::string const & getClass () const
 
void setUUID (std::string const &uuid)
 
UUID const & getUUID () const
 
int64_t getCreationTime () const
 
virtual std::string toString () const
 
template<class T >
bool isType ()
 
- Public Member Functions inherited from Ocular::Core::Exposable
void getAllExposedNames (std::vector< std::string > &names) const
 
bool getVariable (std::string const &name, ExposedVariable &var)
 
template<typename T >
bool getVariableValue (std::string const &name, T &var)
 
template<typename T >
bool setVariableValue (std::string const &name, T const &value)
 

Protected Attributes

Gizmom_AxisX
 
Gizmom_AxisY
 
Gizmom_AxisZ
 
uint32_t m_ClearCount
 
- Protected Attributes inherited from Ocular::Editor::Gizmo
bool m_IsSelected
 Set to TRUE if this Gizmo has been selected. Note that a Gizmo can not be set as the selected object.
 
- Protected Attributes inherited from Ocular::Core::SceneObject
SceneObjectm_Parent
 
uint32_t m_Layer
 The render layer this object is part of.
 
Graphics::UniformPerObject m_UniformData
 
Math::Transform m_Transform
 
Math::BoundsSphere m_BoundsSphereLocal
 
Math::BoundsAABB m_BoundsAABBLocal
 
Math::BoundsOBB m_BoundsOBBLocal
 
Math::BoundsSphere m_BoundsSphereWorld
 
Math::BoundsAABB m_BoundsAABBWorld
 
Math::BoundsOBB m_BoundsOBBWorld
 
- Protected Attributes inherited from Ocular::Core::Object
std::string m_Name
 
std::string m_Class
 
UUID m_UUID
 
const int64_t m_CreationTime
 
- Protected Attributes inherited from Ocular::Core::Exposable
std::unordered_map< std::string, ExposedVariablem_ExposedVariables
 

Additional Inherited Members

- Protected Member Functions inherited from Ocular::Core::SceneObject
void getModelMatrix (Math::Matrix4x4 &matrix)
 
virtual void updateBounds (uint32_t dirtyFlags)
 
- Protected Member Functions inherited from Ocular::Core::Exposable
void exposeVariable (std::string const &name, std::string const &type, bool isPointer, bool isExposed, void *data)
 

Detailed Description

SceneObject that represents the local axis of the object it is attached to.

It is used to both visualize the object axis and to provide a means to perform a translation action from within the render frame.

Composed of this parent object and three children objects (of type AxisComponentGizmo) which represent each individual axis.


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