15 #ifndef _CS237_TRANSFORM_HXX_
16 #define _CS237_TRANSFORM_HXX_
19 #error "cs237-transform.hxx should not be included directly"
27 __detail::mat4x4<T>
scale (T s);
35 __detail::mat4x4<T>
scale (__detail::mat4x4<T>
const &m, T s);
40 __detail::mat4x4<T>
scale (__detail::vec3<T>
const &s);
48 __detail::mat4x4<T>
scale (__detail::mat4x4<T>
const &m, __detail::vec3<T>
const &s);
53 __detail::mat4x4<T>
rotateX (T theta);
61 __detail::mat4x4<T>
rotateX (__detail::mat4x4<T>
const &m, T theta);
66 __detail::mat4x4<T>
rotateY (T theta);
74 __detail::mat4x4<T>
rotateY (__detail::mat4x4<T>
const &m, T theta);
79 __detail::mat4x4<T>
rotateZ (T theta);
87 __detail::mat4x4<T>
rotateZ (__detail::mat4x4<T>
const &m, T theta);
93 __detail::mat4x4<T>
rotate (T theta, __detail::vec3<T>
const &axis);
100 __detail::mat4x4<T>
rotate (__detail::mat4x4<T>
const &m, T theta, __detail::vec3<T>
const &axis);
104 template <
typename T>
105 __detail::mat4x4<T>
translate (__detail::vec3<T>
const &offset);
112 template <
typename T>
113 __detail::mat4x4<T>
translate (__detail::mat4x4<T>
const &m, __detail::vec3<T>
const &offset);
120 template <
typename T>
121 __detail::mat4x4<T>
lookAt (
122 __detail::vec3<T>
const &eye,
123 __detail::vec3<T>
const ¢er,
124 __detail::vec3<T>
const &up);
135 template <
typename T>
136 __detail::mat4x4<T>
ortho (
137 T
const &left, T
const &right,
138 T
const &bottom, T
const &top,
139 T
const &nearVal, T
const &farVal);
142 template <
typename T>
143 __detail::mat4x4<T>
ortho2D (T
const &left, T
const &right, T
const &bottom, T
const &top);
151 template <
typename T>
152 __detail::mat4x4<T>
perspective (T
const &fov, T
const &aspect, T
const &zNear, T
const &zFar);
155 template <
typename T>
156 __detail::mat4x4<T>
frustum (T
const &left, T
const &right, T
const &bottom, T
const &top, T
const &nearVal, T
const &farVal);
__detail::mat4x4< T > perspective(T const &fov, T const &aspect, T const &zNear, T const &zFar)
specifies a perspective projection matrix
__detail::mat4x4< T > rotateX(T theta)
__detail::mat4x4< T > rotateZ(T theta)
__detail::mat4x4< T > rotate(T theta, __detail::vec3< T > const &axis)
__detail::mat4x4< T > ortho2D(T const &left, T const &right, T const &bottom, T const &top)
set up a transformation matrix that produces two-dimensional orthographic viewing region ...
__detail::mat4x4< T > lookAt(__detail::vec3< T > const &eye, __detail::vec3< T > const ¢er, __detail::vec3< T > const &up)
build a a viewing matrix derived from an eye point, a reference point indicating the center of the sc...
__detail::mat4x4< T > translate(__detail::vec3< T > const &offset)
Definition: cs237-aabb.hxx:18
__detail::mat4x4< T > scale(T s)
__detail::mat4x4< T > frustum(T const &left, T const &right, T const &bottom, T const &top, T const &nearVal, T const &farVal)
specifies a viewing frustum into the world coordinate system
__detail::mat4x4< T > ortho(T const &left, T const &right, T const &bottom, T const &top, T const &nearVal, T const &farVal)
__detail::mat4x4< T > rotateY(T theta)