38 #ifndef H_OGF_SCENE_GRAPH_GFX_TRANSFORMS_ARCBALL_H
39 #define H_OGF_SCENE_GRAPH_GFX_TRANSFORMS_ARCBALL_H
41 #include <OGF/scene_graph_gfx/common/common.h>
52 class RenderingContext;
86 const mat4& get_value()
const {
87 return impl_.get_value();
96 impl_.set_value(value);
106 return impl_.get_x_constraint();
115 impl_.set_x_constraint(value);
124 return impl_.get_y_constraint();
133 impl_.set_y_constraint(value);
142 return impl_.grabbed();
151 void grab(
const vec2& value);
173 void value_changed(
const mat4& value);
Enables to interactively define a rotation.
Enables to interactively define a rotation.
ArcBall()
ArcBall constructor.
~ArcBall() override
ArcBall destructor.
bool get_y_constraint() const
Tests whether the Y axis is constrained.
bool get_grabbed() const
Tests whether this ArcBall is grabbed.
bool get_x_constraint() const
Tests whether the X axis is constrained.
void set_value(const mat4 &value)
Sets the value of the rotation.
void set_x_constraint(bool value)
Specifies whether the X axis is constrained.
void release(const vec2 &value)
Callback called when the mouse button is released.
void drag(const vec2 &value)
Callback called when the mouse is moved.
void set_y_constraint(bool value)
Specifies whether the Y axis is constrained.
Base class for all objects in the GOM system.
Controls a 3d rotation from user mouse input.
Global Graphite namespace.
SmartPointer< ArcBall > ArcBall_var
An automatic reference-counted pointer to an ArcBall.
The base class for all objects in the GOM system.