00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _CEGUICoordConverter_h_
00029 #define _CEGUICoordConverter_h_
00030
00031 #include "CEGUIUDim.h"
00032
00033
00034 namespace CEGUI
00035 {
00042 class CEGUIEXPORT CoordConverter
00043 {
00044 public:
00060 static float windowToScreenX(const Window& window, const UDim& x);
00061
00077 static float windowToScreenX(const Window& window, const float x);
00078
00094 static float windowToScreenY(const Window& window, const UDim& y);
00095
00111 static float windowToScreenY(const Window& window, const float y);
00112
00128 static Vector2 windowToScreen(const Window& window, const UVector2& vec);
00129
00145 static Vector2 windowToScreen(const Window& window, const Vector2& vec);
00146
00158 static Rect windowToScreen(const Window& window, const URect& rect);
00159
00174 static Rect windowToScreen(const Window& window, const Rect& rect);
00175
00191 static float screenToWindowX(const Window& window, const UDim& x);
00192
00208 static float screenToWindowX(const Window& window, const float x);
00209
00225 static float screenToWindowY(const Window& window, const UDim& y);
00226
00242 static float screenToWindowY(const Window& window, const float y);
00243
00259 static Vector2 screenToWindow(const Window& window, const UVector2& vec);
00260
00276 static Vector2 screenToWindow(const Window& window, const Vector2& vec);
00277
00292 static Rect screenToWindow(const Window& window, const URect& rect);
00293
00308 static Rect screenToWindow(const Window& window, const Rect& rect);
00309
00310 private:
00322 static float getBaseXValue(const Window& window);
00323
00335 static float getBaseYValue(const Window& window);
00336
00348 static Vector2 getBaseValue(const Window& window);
00349 };
00350
00351 }
00352
00353
00354 #endif // end of guard _CEGUICoordConverter_h_