TankMesh Class Reference

#include <TankMesh.h>

Inheritance diagram for TankMesh:

ModelRendererMesh ModelRenderer

List of all members.

Public Member Functions

 TankMesh (Model &tank)
virtual ~TankMesh ()
void draw (float frame, bool drawS, float *rotMatrix, Vector &position, float fireOffSet, float rotXY, float rotXZ, bool absCenter=false, float scale=1.0f, float fade=1.0f, bool setState=true)
int getNoTris ()

Static Public Member Functions

static void drawSight ()

Protected Types

enum  MeshType { eNone, eTurret, eGun }

Protected Member Functions

virtual void drawMesh (unsigned int m, Mesh *mesh, float currentFrame, bool setState)
void setupTankMesh ()

Protected Attributes

bool drawS_
float fireOffSet_
float scale_
float rotXY_
float rotXZ_
Vector gunOffset_
Vector turretCenter_
std::vector< MeshTypemeshTypes_


Detailed Description

Definition at line 28 of file TankMesh.h.


Member Enumeration Documentation

enum TankMesh::MeshType [protected]

Enumerator:
eNone 
eTurret 
eGun 

Definition at line 42 of file TankMesh.h.


Constructor & Destructor Documentation

TankMesh::TankMesh ( Model tank  ) 

Definition at line 28 of file TankMesh.cpp.

References setupTankMesh().

TankMesh::~TankMesh (  )  [virtual]

Definition at line 35 of file TankMesh.cpp.


Member Function Documentation

void TankMesh::draw ( float  frame,
bool  drawS,
float *  rotMatrix,
Vector position,
float  fireOffSet,
float  rotXY,
float  rotXZ,
bool  absCenter = false,
float  scale = 1.0f,
float  fade = 1.0f,
bool  setState = true 
)

Definition at line 119 of file TankMesh.cpp.

References ModelRendererMesh::draw(), ModelRendererMesh::drawBottomAligned(), drawS_, fireOffSet_, glMultMatrixf(), glPopMatrix(), glPushMatrix(), glScalef(), glTranslatef(), rotXY_, rotXZ_, and scale_.

Referenced by GLWTankModel::draw(), GLWTankViewer::drawItem(), TargetRendererImplTank::render(), and TargetRendererImplTank::renderShadow().

int TankMesh::getNoTris (  ) 

Definition at line 39 of file TankMesh.cpp.

References Model::getNumberTriangles(), and ModelRendererMesh::model_.

void TankMesh::drawSight (  )  [static]

Definition at line 174 of file TankMesh.cpp.

References GLState::BLEND_OFF, GL_COMPILE, GL_QUAD_STRIP, glBegin(), glCallList(), glColor3f(), glEnd(), glEndList(), glGenLists(), glNewList(), glVertex3f(), GLState::LIGHTING_OFF, and GLState::TEXTURE_OFF.

Referenced by drawMesh(), and TargetRendererImplTank::drawSight().

void TankMesh::drawMesh ( unsigned int  m,
Mesh mesh,
float  currentFrame,
bool  setState 
) [protected, virtual]

Reimplemented from ModelRendererMesh.

Definition at line 138 of file TankMesh.cpp.

References ModelRendererMesh::drawMesh(), drawS_, drawSight(), eGun, eTurret, fireOffSet_, glPopMatrix(), glPushMatrix(), glRotatef(), glScalef(), glTranslatef(), gunOffset_, OptionsDisplay::instance(), meshTypes_, rotXY_, rotXZ_, scale_, turretCenter_, ModelRendererMesh::vertexTranslation_, and Vector::zero().

void TankMesh::setupTankMesh (  )  [protected]

Definition at line 44 of file TankMesh.cpp.

References eGun, eNone, eTurret, Mesh::getMax(), Model::getMax(), Model::getMeshes(), Mesh::getMin(), Model::getMin(), Mesh::getName(), gunOffset_, meshTypes_, ModelRendererMesh::model_, scale_, LangStringUtil::strstr(), and turretCenter_.

Referenced by TankMesh().


Member Data Documentation

bool TankMesh::drawS_ [protected]

Definition at line 49 of file TankMesh.h.

Referenced by draw(), and drawMesh().

float TankMesh::fireOffSet_ [protected]

Definition at line 50 of file TankMesh.h.

Referenced by draw(), and drawMesh().

float TankMesh::scale_ [protected]

Definition at line 51 of file TankMesh.h.

Referenced by draw(), drawMesh(), and setupTankMesh().

float TankMesh::rotXY_ [protected]

Definition at line 52 of file TankMesh.h.

Referenced by draw(), and drawMesh().

float TankMesh::rotXZ_ [protected]

Definition at line 53 of file TankMesh.h.

Referenced by draw(), and drawMesh().

Vector TankMesh::gunOffset_ [protected]

Definition at line 54 of file TankMesh.h.

Referenced by drawMesh(), and setupTankMesh().

Vector TankMesh::turretCenter_ [protected]

Definition at line 55 of file TankMesh.h.

Referenced by drawMesh(), and setupTankMesh().

std::vector<MeshType> TankMesh::meshTypes_ [protected]

Definition at line 56 of file TankMesh.h.

Referenced by drawMesh(), and setupTankMesh().


The documentation for this class was generated from the following files:
Generated on Mon Feb 16 15:15:07 2009 for Scorched3D by  doxygen 1.5.3