vmath  vmath-0.13
Intro

Vector mathematics for computer graphics

# Features

• basic arithmetic operations - using operators
• basic linear algebra operations - such as transpose, dot product, etc.
• aliases for vertex coordinates - it means:

``` Vector3f v;
// use vertex coordinates
v.x = 1; v.y = 2; v.z = -1;```
``` // use texture coordinates
v.s = 0; v.t = 1; v.u = 0.5;
// use color coordinates
v.r = 1; v.g = 0.5; v.b = 0;
```
• conversion constructor and assign operators - so you can assign a value of Vector3<T1> type to a variable of Vector3<T2> type for any convertible T1, T2 type pairs. In other words, you can do this:

``` Vector3f f3; Vector3d d3 = f3;
...
f3 = d3;
```

# types

• Vector2 Two dimensional vector
• float — Vector2f
• double — Vector2d
• int — Vector2i
• Vector3 Three dimensional vector
• float — Vector3f
• double — Vector3d
• int — Vector3i
• Vector4 Four dimensional vector
• float — Vector4f
• double — Vector4d
• int — Vector4i
• Matrix3 Matrix 3x3
• float — Matrix3f
• double — Matrix3d
• int — Matrix3i
• Matrix4 Matrix 4x4
• float — Matrix4f
• double — Matrix4d
• int — Matrix4i
• Quaternion
• float — Quatf
• double — Quatd
• Aabb3 axes-aligned bounding-box
• float — Aabb3f
• double — Aabb3d