29#ifndef _CEGUIVector_h_
30#define _CEGUIVector_h_
32#include "CEGUI/UDim.h"
64 inline Vector2(
const T x,
const T y):
126 inline Vector2 operator*(
const T
c)
const
131 inline Vector2& operator*=(
const T
c)
139 inline Vector2 operator/(
const T
c)
const
144 inline bool operator==(
const Vector2&
vec)
const
146 return ((d_x ==
vec.d_x) && (d_y ==
vec.d_y));
149 inline bool operator!=(
const Vector2&
vec)
const
151 return !(operator==(
vec));
159 s <<
"CEGUI::Vector2<" <<
typeid(T).name() <<
">(" << v.d_x <<
", " << v.d_y <<
")";
192typedef Vector2<float> Vector2f;
195inline Vector2<UDim> operator * (
const Vector2<UDim>& v,
const float c)
197 return Vector2<UDim>(v.d_x * c, v.d_y * c);
200typedef Vector2<UDim> UVector2;
219 typedef T value_type;
224 inline Vector3(
const T x,
const T y,
const T z):
242 inline bool operator==(
const Vector3&
vec)
const
244 return ((d_x ==
vec.d_x) && (d_y ==
vec.d_y) && (d_z ==
vec.d_z));
247 inline bool operator!=(
const Vector3&
vec)
const
249 return !(operator==(
vec));
252 inline Vector3 operator*(
const T
c)
const
259 return Vector3(d_x + v.d_x, d_y + v.d_y, d_z + v.d_z);
264 return Vector3(d_x - v.d_x, d_y - v.d_y, d_z - v.d_z);
272 s <<
"CEGUI::Vector3<" <<
typeid(T).name() <<
">(" << v.d_x <<
", " << v.d_y <<
", " << v.d_z <<
")";
312typedef Vector3<float> Vector3f;
Definition MemoryAllocatedObject.h:110
base class for properties able to do native set/get
Definition TypedProperty.h:50
Class used as a two dimensional vector (aka a Point)
Definition Vector.h:55
static Vector2 zero()
finger saving alias for Vector2(0, 0)
Definition Vector.h:164
static Vector2 one_x()
finger saving alias for Vector2(1, 0)
Definition Vector.h:176
static Vector2 one()
finger saving alias for Vector2(1, 1)
Definition Vector.h:170
friend std::ostream & operator<<(std::ostream &s, const Vector2 &v)
allows writing the vector2 to std ostream
Definition Vector.h:157
static Vector2 one_y()
finger saving alias for Vector2(0, 1)
Definition Vector.h:182
Class used as a three dimensional vector.
Definition Vector.h:217
static Vector3 one_x()
finger saving alias for Vector3(1, 0, 0)
Definition Vector.h:289
static Vector3 one()
finger saving alias for Vector3(1, 1, 1)
Definition Vector.h:283
static Vector3 one_z()
finger saving alias for Vector3(0, 0, 1)
Definition Vector.h:301
static Vector3 one_y()
finger saving alias for Vector3(0, 1, 0)
Definition Vector.h:295
friend std::ostream & operator<<(std::ostream &s, const Vector3 &v)
allows writing the vector3 to std ostream
Definition Vector.h:270
static Vector3 zero()
finger saving alias for Vector3(0, 0, 0)
Definition Vector.h:277
Main namespace for Crazy Eddie's GUI Library.
Definition arch_overview.dox:1