CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

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 <textrans.h>

List of all members.

Static Public Methods

void 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).

void 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.

void 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.

void 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.


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 38 of file textrans.h.


Member Function Documentation

void 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.

void 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.

void 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.

void 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 :-)


The documentation for this class was generated from the following file:
Generated for Crystal Space by doxygen 1.2.18