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

#include <TerrainApron.h>

Inheritance diagram for TerrainApron:
Solid Graphic

List of all members.

Public Member Functions

 TerrainApron (Terrain *terrain, const Bitmap *patch, const Rect &rect, const Point &p1, const Point &p2)
virtual ~TerrainApron ()
virtual void Render (Video *video, DWORD flags)
virtual void Update ()
virtual int CollidesWith (Graphic &o)
virtual bool Luminous () const
virtual bool Translucent () const
double Scale () const
double MountainScale () const
double SeaLevel () const
void SetScales (double scale, double mtnscale, double base)
void Illuminate (Color ambient, List< Light > &lights)
virtual int CheckRayIntersection (Point pt, Point vpn, double len, Point &ipt, bool treat_translucent_polys_as_solid=true)
- Public Member Functions inherited from Solid
 Solid ()
virtual ~Solid ()
virtual void SelectDetail (Projector *p)
virtual void ProjectScreenRect (Projector *p)
ModelGetModel () const
void GetAllTextures (List< Bitmap > &textures)
virtual bool IsDynamic () const
virtual void SetDynamic (bool d)
virtual void SetLuminous (bool l)
virtual void SetOrientation (const Matrix &o)
virtual void SetOrientation (const Solid &match)
const MatrixOrientation () const
float Roll () const
float Pitch () const
float Yaw () const
virtual bool IsSolid () const
virtual void CreateShadows (int nlights=1)
virtual void UpdateShadows (List< Light > &lights)
List< Shadow > & GetShadows ()
bool Load (const char *mag_file, double scale=1.0)
bool Load (ModelFile *loader, double scale=1.0)
void UseModel (Model *model)
void ClearModel ()
bool Rescale (double scale)
virtual PolyGetIntersectionPoly () const
virtual void DeletePrivateData ()
virtual void InvalidateSurfaceData ()
virtual void InvalidateSegmentData ()
- Public Member Functions inherited from Graphic
 Graphic ()
virtual ~Graphic ()
int operator== (const Graphic &g) const
int operator< (const Graphic &g) const
int operator<= (const Graphic &g) const
int Identity () const
const char * Name () const
bool IsVisible () const
void SetVisible (bool v)
float Radius () const
Point Location () const
virtual void MoveTo (const Point &p)
virtual void TranslateBy (const Point &ref)
virtual float Depth () const
virtual void SetDepth (float d)
virtual int IsInfinite () const
virtual void SetInfinite (bool b)
virtual int IsForeground () const
virtual void SetForeground (bool f)
virtual int IsBackground () const
virtual void SetBackground (bool b)
virtual int Hidden () const
virtual int Life () const
virtual void Destroy ()
virtual void Hide ()
virtual void Show ()
virtual bool CastsShadow () const
virtual void SetShadow (bool s)
virtual bool IsSprite () const
virtual bool IsBolt () const
virtual bool IsQuad () const
const RectScreenRect () const
virtual SceneGetScene () const
virtual void SetScene (Scene *s)
virtual bool CheckVisibility (Projector &projector)

Protected Member Functions

virtual bool BuildApron ()

Protected Attributes

Terrainterrain
int nverts
int npolys
int terrain_width
Rect rect
float * heights
double scale
double mtnscale
double base
double size
- Protected Attributes inherited from Solid
Modelmodel
bool own_model
float roll
float pitch
float yaw
Matrix orientation
Polyintersection_poly
List< Shadowshadows
- Protected Attributes inherited from Graphic
int id
Point loc
float depth
float radius
int life
bool visible
bool infinite
bool foreground
bool background
bool hidden
bool trans
bool shadow
bool luminous
Rect screen_rect
Scenescene
char name [32]

Additional Inherited Members

- Public Types inherited from Solid
enum  { NAMELEN = 64 }
- Public Types inherited from Graphic
enum  TYPE {
  OTHER, SOLID, SPRITE, BOLT,
  QUAD
}
enum  RENDER_FLAGS {
  RENDER_SOLID = 0x0001, RENDER_ALPHA = 0x0002, RENDER_ADDITIVE = 0x0004, RENDER_FIRST_LIGHT = 0x1000,
  RENDER_ADD_LIGHT = 0x2000
}
- Static Public Member Functions inherited from Solid
static const char * TYPENAME ()
static bool IsCollisionEnabled ()
static void EnableCollision (bool enable)
- Static Public Member Functions inherited from Graphic
static int Nearer (Graphic *a, Graphic *b)
static int Farther (Graphic *a, Graphic *b)

Detailed Description

Definition at line 27 of file TerrainApron.h.


Constructor & Destructor Documentation

TerrainApron::TerrainApron ( Terrain terrain,
const Bitmap patch,
const Rect rect,
const Point p1,
const Point p2 
)

Definition at line 35 of file TerrainApron.cpp.

TerrainApron::~TerrainApron ( )
virtual

Definition at line 81 of file TerrainApron.cpp.


Member Function Documentation

bool TerrainApron::BuildApron ( )
protectedvirtual

Definition at line 99 of file TerrainApron.cpp.

int TerrainApron::CheckRayIntersection ( Point  pt,
Point  vpn,
double  len,
Point ipt,
bool  treat_translucent_polys_as_solid = true 
)
virtual

Reimplemented from Solid.

Definition at line 327 of file TerrainApron.cpp.

int TerrainApron::CollidesWith ( Graphic o)
virtual

Reimplemented from Solid.

Definition at line 225 of file TerrainApron.cpp.

void TerrainApron::Illuminate ( Color  ambient,
List< Light > &  lights 
)

Definition at line 240 of file TerrainApron.cpp.

virtual bool TerrainApron::Luminous ( ) const
inlinevirtual

Reimplemented from Graphic.

Definition at line 39 of file TerrainApron.h.

double TerrainApron::MountainScale ( ) const
inline

Definition at line 44 of file TerrainApron.h.

void TerrainApron::Render ( Video video,
DWORD  flags 
)
virtual

Reimplemented from Solid.

Definition at line 297 of file TerrainApron.cpp.

double TerrainApron::Scale ( ) const
inline

Definition at line 43 of file TerrainApron.h.

double TerrainApron::SeaLevel ( ) const
inline

Definition at line 45 of file TerrainApron.h.

void TerrainApron::SetScales ( double  scale,
double  mtnscale,
double  base 
)

Definition at line 89 of file TerrainApron.cpp.

virtual bool TerrainApron::Translucent ( ) const
inlinevirtual

Reimplemented from Graphic.

Definition at line 40 of file TerrainApron.h.

void TerrainApron::Update ( )
virtual

Reimplemented from Solid.

Definition at line 233 of file TerrainApron.cpp.


Member Data Documentation

double TerrainApron::base
protected

Definition at line 65 of file TerrainApron.h.

float* TerrainApron::heights
protected

Definition at line 61 of file TerrainApron.h.

double TerrainApron::mtnscale
protected

Definition at line 64 of file TerrainApron.h.

int TerrainApron::npolys
protected

Definition at line 57 of file TerrainApron.h.

int TerrainApron::nverts
protected

Definition at line 56 of file TerrainApron.h.

Rect TerrainApron::rect
protected

Definition at line 60 of file TerrainApron.h.

double TerrainApron::scale
protected

Definition at line 63 of file TerrainApron.h.

double TerrainApron::size
protected

Definition at line 66 of file TerrainApron.h.

Terrain* TerrainApron::terrain
protected

Definition at line 55 of file TerrainApron.h.

int TerrainApron::terrain_width
protected

Definition at line 58 of file TerrainApron.h.


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