NL3D::CZoneLighter::CTriangle Class Reference

#include <zone_lighter.h>


Public Types

enum  TFlags { Landscape = 1, DoubleSided = 2, ClampU = 4, ClampV = 8 }

Public Member Functions

 CTriangle (const NLMISC::CTriangle &triangle)
 CTriangle (const NLMISC::CTriangle &triangle, bool doubleSided, const NLMISC::CBitmap *texture, bool clampU, bool clampV, float *u, float *v, uint8 alphaTestThreshold)
const CPlanegetPlane () const

Data Fields

uint8 AlphaTestThreshold
uint8 Flags
const NLMISC::CBitmapTexture
NLMISC::CTriangle Triangle
float U [3]
float V [3]

Private Attributes

NLMISC::CPlane _Plane

Friends

class CZoneLighter


Member Enumeration Documentation

enum NL3D::CZoneLighter::CTriangle::TFlags
 

Enumeration values:
Landscape 
DoubleSided 
ClampU 
ClampV 

Definition at line 169 of file zone_lighter.h.

00170                 {
00171                         Landscape = 1,
00172                         DoubleSided = 2,
00173                         ClampU = 4,
00174                         ClampV = 8,
00175                 };


Constructor & Destructor Documentation

NL3D::CZoneLighter::CTriangle::CTriangle const NLMISC::CTriangle triangle,
bool  doubleSided,
const NLMISC::CBitmap texture,
bool  clampU,
bool  clampV,
float *  u,
float *  v,
uint8  alphaTestThreshold
[inline]
 

Definition at line 178 of file zone_lighter.h.

References AlphaTestThreshold, ClampU, ClampV, uint, uint8, and v.

00179                 {
00180                         // Copy the triangle
00181                         Triangle=triangle;
00182 
00183                         // Draw it in the heightmap
00184                         Flags = 0;
00185 
00186                         // Double sided
00187                         Flags |= doubleSided ? DoubleSided : 0;
00188                         
00189                         // Texture
00190                         Texture = texture;
00191 
00192                         // Texture used ?
00193                         if (Texture)
00194                         {
00195                                 // Alpha test threshold
00196                                 AlphaTestThreshold = alphaTestThreshold;
00197 
00198                                 // Flags
00199                                 Flags |= clampU ? ClampU : 0;
00200                                 Flags |= clampV ? ClampV : 0;
00201 
00202                                 // Copy U and V
00203                                 for (uint i=0; i<3; i++)
00204                                 {
00205                                         U[i] = u[i];
00206                                         V[i] = v[i];
00207                                 }
00208                         }
00209                 }

NL3D::CZoneLighter::CTriangle::CTriangle const NLMISC::CTriangle triangle  )  [inline]
 

Definition at line 212 of file zone_lighter.h.

00213                 {
00214                         // Copy the triangle
00215                         Triangle=triangle;
00216 
00217                         // Draw it in the heightmap
00218                         Flags = Landscape;
00219                         
00220                         // Texture
00221                         Texture = NULL;
00222                 }


Member Function Documentation

const CPlane& NL3D::CZoneLighter::CTriangle::getPlane  )  const [inline]
 

Definition at line 239 of file zone_lighter.h.

References _Plane.

Referenced by NL3D::CZoneLighter::compilePointLightRT(), NL3D::CRenderZBuffer::run(), and NL3D::CZoneLighter::CPointLightRT::testRaytrace().

00239 {return _Plane;}


Friends And Related Function Documentation

friend class CZoneLighter [friend]
 

Definition at line 167 of file zone_lighter.h.


Field Documentation

NLMISC::CPlane NL3D::CZoneLighter::CTriangle::_Plane [private]
 

Definition at line 241 of file zone_lighter.h.

Referenced by getPlane(), and NL3D::CZoneLighter::light().

uint8 NL3D::CZoneLighter::CTriangle::AlphaTestThreshold
 

Definition at line 229 of file zone_lighter.h.

Referenced by CTriangle(), and RenderTriangle().

uint8 NL3D::CZoneLighter::CTriangle::Flags
 

Definition at line 228 of file zone_lighter.h.

Referenced by NL3D::CZoneLighter::light(), RenderTriangle(), and NL3D::CRenderZBuffer::run().

const NLMISC::CBitmap* NL3D::CZoneLighter::CTriangle::Texture
 

Definition at line 236 of file zone_lighter.h.

Referenced by RenderTriangle().

NLMISC::CTriangle NL3D::CZoneLighter::CTriangle::Triangle
 

Definition at line 225 of file zone_lighter.h.

Referenced by NL3D::CZoneLighter::compilePointLightRT(), NL3D::CZoneLighter::light(), RenderTriangle(), and NL3D::CZoneLighter::CPointLightRT::testRaytrace().

float NL3D::CZoneLighter::CTriangle::U[3]
 

Definition at line 232 of file zone_lighter.h.

Referenced by RenderTriangle().

float NL3D::CZoneLighter::CTriangle::V[3]
 

Definition at line 233 of file zone_lighter.h.

Referenced by RenderTriangle().


The documentation for this class was generated from the following file:
Generated on Tue Mar 16 08:35:55 2004 for NeL by doxygen 1.3.6