Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Surface Class Reference

#include <Solid.h>

List of all members.

Public Types

enum  {
  HIDDEN = 1, LOCKED = 2, SIMPLE = 4, MAX_VERTS = 64000,
  MAX_POLYS = 16000
}

Public Member Functions

 Surface ()
 ~Surface ()
int operator== (const Surface &s) const
const char * Name () const
int NumVerts () const
int NumSegments () const
int NumPolys () const
int NumIndices () const
bool IsHidden () const
bool IsLocked () const
bool IsSimplified () const
ModelGetModel () const
List< Segment > & GetSegments ()
const PointGetOffset () const
const MatrixGetOrientation () const
double Radius () const
VertexSetGetVertexSet () const
Vec3GetVLoc () const
PolyGetPolys () const
void SetName (const char *n)
void SetHidden (bool b)
void SetLocked (bool b)
void SetSimplified (bool b)
void CreateVerts (int nverts)
void CreatePolys (int npolys)
void AddIndices (int n)
PolyAddPolys (int npolys, int nverts)
VideoPrivateDataGetVideoPrivateData () const
void SetVideoPrivateData (VideoPrivateData *vpd)
void ScaleBy (double factor)
void BuildHull ()
void Normalize ()
void SelectPolys (List< Poly > &, Material *mtl)
void SelectPolys (List< Poly > &, Vec3 loc)
void InitializeCollisionHull ()
void ComputeTangents ()
void CalcGradients (Poly &p, Vec3 &tangent, Vec3 &binormal)
void Copy (Surface &s, Model *m)
void OptimizeMesh ()
void ExplodeMesh ()

Static Public Member Functions

static const char * TYPENAME ()

Public Attributes

OPCODE_dataopcode

Friends

class Solid
class Model

Detailed Description

Definition at line 177 of file Solid.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
HIDDEN 
LOCKED 
SIMPLE 
MAX_VERTS 
MAX_POLYS 

Definition at line 185 of file Solid.h.


Constructor & Destructor Documentation

Surface::Surface ( )

Definition at line 1785 of file Solid.cpp.

Surface::~Surface ( )

Definition at line 1792 of file Solid.cpp.


Member Function Documentation

void Surface::AddIndices ( int  n)
inline

Definition at line 217 of file Solid.h.

Poly * Surface::AddPolys ( int  npolys,
int  nverts 
)

Definition at line 1933 of file Solid.cpp.

void Surface::BuildHull ( )

Definition at line 2183 of file Solid.cpp.

void Surface::CalcGradients ( Poly p,
Vec3 tangent,
Vec3 binormal 
)

Definition at line 2365 of file Solid.cpp.

void Surface::ComputeTangents ( )

Definition at line 2339 of file Solid.cpp.

void Surface::Copy ( Surface s,
Model m 
)

Definition at line 1808 of file Solid.cpp.

void Surface::CreatePolys ( int  npolys)

Definition at line 1920 of file Solid.cpp.

void Surface::CreateVerts ( int  nverts)

Definition at line 1911 of file Solid.cpp.

void Surface::ExplodeMesh ( )

Definition at line 1969 of file Solid.cpp.

Model* Surface::GetModel ( ) const
inline

Definition at line 201 of file Solid.h.

const Point& Surface::GetOffset ( ) const
inline

Definition at line 203 of file Solid.h.

const Matrix& Surface::GetOrientation ( ) const
inline

Definition at line 204 of file Solid.h.

Poly* Surface::GetPolys ( ) const
inline

Definition at line 208 of file Solid.h.

List<Segment>& Surface::GetSegments ( )
inline

Definition at line 202 of file Solid.h.

VertexSet* Surface::GetVertexSet ( ) const
inline

Definition at line 206 of file Solid.h.

VideoPrivateData* Surface::GetVideoPrivateData ( ) const
inline

Definition at line 220 of file Solid.h.

Vec3* Surface::GetVLoc ( ) const
inline

Definition at line 207 of file Solid.h.

void Surface::InitializeCollisionHull ( )

Definition at line 2404 of file Solid.cpp.

bool Surface::IsHidden ( ) const
inline

Definition at line 197 of file Solid.h.

bool Surface::IsLocked ( ) const
inline

Definition at line 198 of file Solid.h.

bool Surface::IsSimplified ( ) const
inline

Definition at line 199 of file Solid.h.

const char* Surface::Name ( ) const
inline

Definition at line 192 of file Solid.h.

void Surface::Normalize ( )

Definition at line 2237 of file Solid.cpp.

int Surface::NumIndices ( ) const
inline

Definition at line 196 of file Solid.h.

int Surface::NumPolys ( ) const
inline

Definition at line 195 of file Solid.h.

int Surface::NumSegments ( ) const
inline

Definition at line 194 of file Solid.h.

int Surface::NumVerts ( ) const
inline

Definition at line 193 of file Solid.h.

int Surface::operator== ( const Surface s) const
inline

Definition at line 190 of file Solid.h.

void Surface::OptimizeMesh ( )

Definition at line 2075 of file Solid.cpp.

double Surface::Radius ( ) const
inline

Definition at line 205 of file Solid.h.

void Surface::ScaleBy ( double  factor)

Definition at line 2169 of file Solid.cpp.

void Surface::SelectPolys ( List< Poly > &  selection,
Material mtl 
)

Definition at line 2326 of file Solid.cpp.

void Surface::SelectPolys ( List< Poly > &  selection,
Vec3  loc 
)

Definition at line 2294 of file Solid.cpp.

void Surface::SetHidden ( bool  b)

Definition at line 1881 of file Solid.cpp.

void Surface::SetLocked ( bool  b)

Definition at line 1891 of file Solid.cpp.

void Surface::SetName ( const char *  n)

Definition at line 1872 of file Solid.cpp.

void Surface::SetSimplified ( bool  b)

Definition at line 1901 of file Solid.cpp.

void Surface::SetVideoPrivateData ( VideoPrivateData vpd)
inline

Definition at line 221 of file Solid.h.

static const char* Surface::TYPENAME ( )
inlinestatic

Definition at line 183 of file Solid.h.


Friends And Related Function Documentation

friend class Model
friend

Definition at line 180 of file Solid.h.

friend class Solid
friend

Definition at line 179 of file Solid.h.


Member Data Documentation

OPCODE_data* Surface::opcode

Definition at line 256 of file Solid.h.


The documentation for this class was generated from the following files: