csTextureTrans Class Reference
[Geometry utilities]
This is a static class which encapsulates a few functions that can transform texture information into a texture matrix/vector. More...
#include <csgeom/textrans.h>
Static Public Member Functions | |
static bool | compute_texture_space (csMatrix3 &m, csVector3 &v, const csVector3 &v_orig, const csVector3 &v1, float len1, float A, float B, float C) |
Calculate the matrix using two vertices (which are preferably on the plane of the polygon and are possibly (but not necessarily) two vertices of the polygon). | |
static bool | compute_texture_space (csMatrix3 &m, csVector3 &v, float xo, float yo, float zo, float xu, float yu, float zu, float xv, float yv, float zv, float xw, float yw, float zw) |
The most general function. | |
static bool | compute_texture_space (csMatrix3 &m, csVector3 &v, const csVector3 &v_orig, const csVector3 &v_u, const csVector3 &v_v) |
Similar to the previous function but treat as if the lengths are set to 1. | |
static bool | compute_texture_space (csMatrix3 &m, csVector3 &v, const csVector3 &v_orig, const csVector3 &v1, float len1, const csVector3 &v2, float len2) |
Use 'v1' and 'len1' for the u-axis and 'v2' and 'len2' for the v-axis. |
Detailed Description
This is a static class which encapsulates a few functions that can transform texture information into a texture matrix/vector.
This class makes it easiers to define textures for polygons given various things.
Definition at line 40 of file textrans.h.
Member Function Documentation
static bool csTextureTrans::compute_texture_space | ( | csMatrix3 & | m, | |
csVector3 & | v, | |||
const csVector3 & | v_orig, | |||
const csVector3 & | v1, | |||
float | len1, | |||
float | A, | |||
float | B, | |||
float | C | |||
) | [static] |
Calculate the matrix using two vertices (which are preferably on the plane of the polygon and are possibly (but not necessarily) two vertices of the polygon).
The first vertex is seen as the origin and the second as the u-axis of the texture space coordinate system. The v-axis is calculated on the plane of the polygon and orthogonal to the given u-axis. The length of the u-axis and the v-axis is given as the 'len1' parameter.
For example, if 'len1' is equal to 2 this means that texture will be tiled exactly two times between vertex 'v_orig' and 'v1'. I hope this explanation is clear since I can't seem to make it any clearer :-)
static bool csTextureTrans::compute_texture_space | ( | csMatrix3 & | m, | |
csVector3 & | v, | |||
float | xo, | |||
float | yo, | |||
float | zo, | |||
float | xu, | |||
float | yu, | |||
float | zu, | |||
float | xv, | |||
float | yv, | |||
float | zv, | |||
float | xw, | |||
float | yw, | |||
float | zw | |||
) | [static] |
The most general function.
With these you provide the matrix directly.
static bool csTextureTrans::compute_texture_space | ( | csMatrix3 & | m, | |
csVector3 & | v, | |||
const csVector3 & | v_orig, | |||
const csVector3 & | v_u, | |||
const csVector3 & | v_v | |||
) | [static] |
Similar to the previous function but treat as if the lengths are set to 1.
static bool csTextureTrans::compute_texture_space | ( | csMatrix3 & | m, | |
csVector3 & | v, | |||
const csVector3 & | v_orig, | |||
const csVector3 & | v1, | |||
float | len1, | |||
const csVector3 & | v2, | |||
float | len2 | |||
) | [static] |
Use 'v1' and 'len1' for the u-axis and 'v2' and 'len2' for the v-axis.
Otherwise this function is the same as the previous one.
The documentation for this class was generated from the following file:
- csgeom/textrans.h
Generated for Crystal Space 1.4.1 by doxygen 1.7.1