X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fdesigner%2Fcameracontroller.h;h=6d5270c1056039271c5f63d5fa9a3577b1ebd505;hb=4236c30c0a7a48854e9634e9ad7d8d6e0fd243a3;hp=b39b3d5a59a6d0f173e69905888d17c849514510;hpb=61da962442ae528bba9c66fa0c09427b53a4cbe0;p=r2c2.git diff --git a/source/designer/cameracontroller.h b/source/designer/cameracontroller.h index b39b3d5..6d5270c 100644 --- a/source/designer/cameracontroller.h +++ b/source/designer/cameracontroller.h @@ -1,17 +1,9 @@ -/* $Id$ - -This file is part of the MSP Märklin suite -Copyright © 2010 Mikkosoft Productions, Mikko Rasa -Distributed under the GPL -*/ - #ifndef CAMERACONTROLLER_H_ #define CAMERACONTROLLER_H_ -#include +#include #include - -class Designer; +#include "3d/view.h" /** Moves the camera based on keyboard and mouse events. Controls are as follows: @@ -38,7 +30,7 @@ private: DISTANCE }; - Designer &designer; + R2C2::View3D &view; Msp::Graphics::EventSource &event_source; Msp::GL::Camera &camera; int move_x; @@ -48,7 +40,7 @@ private: DragMode drag_mode; public: - CameraController(Designer &, Msp::Graphics::EventSource &, Msp::GL::Camera &); + CameraController(R2C2::View3D &, Msp::Graphics::EventSource &); void top_down(); void set_look_direction(const Msp::GL::Vector3 &); @@ -67,6 +59,7 @@ private: void key_press(unsigned, unsigned, wchar_t); void key_release(unsigned, unsigned); +public: /** Return the focus point, i.e. where the look ray intersects with ground. */ Msp::GL::Vector3 get_focus() const;