17 #ifndef GZ_RENDERING_TRANSFORMCONTROLLER_HH_
18 #define GZ_RENDERING_TRANSFORMCONTROLLER_HH_
22 #include <gz/utils/SuppressWarning.hh>
24 #include <gz/math/Quaternion.hh>
25 #include <gz/math/Plane.hh>
26 #include <gz/math/Vector3.hh>
28 #include "gz/rendering/config.hh"
37 inline namespace GZ_RENDERING_VERSION_NAMESPACE {
40 class TransformControllerPrivate;
56 public:
virtual void Update();
60 public:
virtual void SetCamera(
const CameraPtr &_camera);
73 public:
virtual void Attach(
NodePtr _node);
77 public:
virtual void Detach();
112 public:
virtual void Translate(
const math::Vector3d &_translation,
139 const double _sensitivity = 0.4);
144 public:
virtual void Start();
149 public:
virtual void Stop();
153 public:
virtual bool Active()
const;
212 protected:
bool RayPlaneIntersection(
RayQueryPtr _ray,
216 GZ_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING
218 GZ_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING