#pragma once #include "Mat3.h" #include "Welt2D.h" #include "Zeichnung.h" namespace Framework { class Welt2D; class Object2D; class Kamera2D : public ZeichnungHintergrund { protected: Welt2D* welt; bool tickWelt; Vertex wPos; float rotation; float zoom; Mat3 matrix; Text* name; public: __declspec(dllexport) Kamera2D(); __declspec(dllexport) virtual ~Kamera2D(); __declspec(dllexport) void setName(const char* name); __declspec(dllexport) void setName(Text* name); __declspec(dllexport) void lookAtWorldPos(Vertex pos); __declspec(dllexport) void lookAtWorldPos(float x, float y); __declspec(dllexport) void lookAtWorldArea(float width, float height); __declspec(dllexport) void setDrehung(float rotation); __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) Vertex getWorldPosition(); __declspec(dllexport) float getRotation(); __declspec(dllexport) float getZoom(); __declspec(dllexport) const Mat3& getMatrix(); __declspec(dllexport) Text* getName(); __declspec(dllexport) Text* zName(); }; class TestKamera2D : public Kamera2D { public: __declspec(dllexport) bool tick(double time); }; } // namespace Framework