#pragma once #include "Zeichnung.h" #include "Mat3.h" #include "Welt2D.h" namespace Framework { class Welt2D; class Object2D; class Kamera2D : public ZeichnungHintergrund { protected: Welt2D *welt; bool tickWelt; Vertex wPos; float rotation; float zoom; Mat3< float > matrix; int ref; public: __declspec( dllexport ) Kamera2D(); __declspec( dllexport ) virtual ~Kamera2D(); __declspec( dllexport ) void lookAtWorldPos( int x, int y ); __declspec( dllexport ) void lookAtWorldArea( int width, int height ); __declspec( dllexport ) void setZoom( float zoom ); __declspec( dllexport ) void setWelt( Welt2D *welt, bool tick ); __declspec( dllexport ) bool tick( double time ); __declspec( dllexport ) void render( Bild &zRObj ); __declspec( dllexport ) Vertex getWorldCoordinates( Punkt screenPos ); __declspec( dllexport ) Vertex getWorldDirection( Vertex dir ); __declspec( dllexport ) Kamera2D *getThis(); __declspec( dllexport ) Kamera2D *release(); }; class TestKamera2D : public Kamera2D { public: __declspec( dllexport ) bool tick( double time ); }; }