osgTerrain::TerrainTile Class Reference

Inheritance diagram for osgTerrain::TerrainTile:
osg::Group osg::Node osg::Object osg::Referenced

List of all members.

Classes

struct  TileLoadedCallback

Public Member Functions

 TerrainTile ()
 TerrainTile (const TerrainTile &, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 META_Node (osgTerrain, TerrainTile)
virtual void traverse (osg::NodeVisitor &nv)
void init ()
void setTerrain (Terrain *ts)
TerraingetTerrain ()
const TerraingetTerrain () const
void setTileID (const TileID &tileID)
const TileIDgetTileID () const
void setTerrainTechnique (TerrainTechnique *terrainTechnique)
TerrainTechniquegetTerrainTechnique ()
const TerrainTechniquegetTerrainTechnique () const
void setLocator (Locator *locator)
LocatorgetLocator ()
const LocatorgetLocator () const
void setElevationLayer (Layer *layer)
LayergetElevationLayer ()
const LayergetElevationLayer () const
void setColorLayer (unsigned int i, Layer *layer)
LayergetColorLayer (unsigned int i)
const LayergetColorLayer (unsigned int i) const
unsigned int getNumColorLayers () const
void setRequiresNormals (bool flag)
bool getRequiresNormals () const
void setTreatBoundariesToValidDataAsDefaultValue (bool flag)
bool getTreatBoundariesToValidDataAsDefaultValue () const
void setDirty (bool dirty)
bool getDirty () const
virtual osg::BoundingSphere computeBound () const

Static Public Member Functions

static void setTileLoadedCallback (TileLoadedCallback *lc)
static osg::ref_ptr
< TileLoadedCallback > & 
getTileLoadedCallback ()

Protected Types

typedef std::vector
< osg::ref_ptr< Layer > > 
Layers

Protected Member Functions

virtual ~TerrainTile ()

Protected Attributes

Terrain_terrain
bool _dirty
bool _hasBeenTraversal
TileID _tileID
osg::ref_ptr< TerrainTechnique_terrainTechnique
osg::ref_ptr< Locator_locator
osg::ref_ptr< Layer_elevationLayer
Layers _colorLayers
bool _requiresNormals
bool _treatBoundariesToValidDataAsDefaultValue

Friends

class Terrain

Detailed Description

Terrain provides a framework for loosely coupling height field data with height rendering algorithms. This allows TerrainTechnique's to be plugged in at runtime.


Member Typedef Documentation

typedef std::vector< osg::ref_ptr<Layer> > osgTerrain::TerrainTile::Layers [protected]

Constructor & Destructor Documentation

osgTerrain::TerrainTile::TerrainTile (  ) 
osgTerrain::TerrainTile::TerrainTile ( const TerrainTile ,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
)

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osgTerrain::TerrainTile::~TerrainTile (  )  [protected, virtual]

Member Function Documentation

virtual osg::BoundingSphere osgTerrain::TerrainTile::computeBound (  )  const [virtual]

Compute the bounding volume of the terrain by computing the union of the bounding volumes of all layers.

Reimplemented from osg::Group.

const Layer* osgTerrain::TerrainTile::getColorLayer ( unsigned int  i  )  const [inline]

Set const color layer with specified layer number.

Layer* osgTerrain::TerrainTile::getColorLayer ( unsigned int  i  )  [inline]

Get color layer with specified layer number.

bool osgTerrain::TerrainTile::getDirty (  )  const [inline]

return true if the tile is dirty and needs to be updated,

const Layer* osgTerrain::TerrainTile::getElevationLayer (  )  const [inline]

Get the const layer to use to define the elevations of the terrain.

Layer* osgTerrain::TerrainTile::getElevationLayer (  )  [inline]

Get the layer to use to define the elevations of the terrain.

const Locator* osgTerrain::TerrainTile::getLocator (  )  const [inline]

Get the coordinate frame locator of the terrain node.

Locator* osgTerrain::TerrainTile::getLocator (  )  [inline]

Get the coordinate frame locator of the terrain node.

unsigned int osgTerrain::TerrainTile::getNumColorLayers (  )  const [inline]

Get the number of colour layers.

bool osgTerrain::TerrainTile::getRequiresNormals (  )  const [inline]

Get whether the TerrainTechnique should create per vertex normals for lighting purposes.

const Terrain* osgTerrain::TerrainTile::getTerrain (  )  const [inline]

Get the const Terrain that this Terrain tile is a member of.

Terrain* osgTerrain::TerrainTile::getTerrain (  )  [inline]

Get the Terrain that this Terrain tile is a member of.

const TerrainTechnique* osgTerrain::TerrainTile::getTerrainTechnique (  )  const [inline]

Get the const TerrainTechnique

TerrainTechnique* osgTerrain::TerrainTile::getTerrainTechnique (  )  [inline]
const TileID& osgTerrain::TerrainTile::getTileID (  )  const [inline]

Get the TileID (layer, x,y) of the TerrainTile.

static osg::ref_ptr<TileLoadedCallback>& osgTerrain::TerrainTile::getTileLoadedCallback (  )  [static]
bool osgTerrain::TerrainTile::getTreatBoundariesToValidDataAsDefaultValue (  )  const [inline]

Get whether the TeatBoundariesToValidDataAsDefaultValue hint.

void osgTerrain::TerrainTile::init (  ) 

Call init on any attached TerrainTechnique.

osgTerrain::TerrainTile::META_Node ( osgTerrain  ,
TerrainTile   
)
void osgTerrain::TerrainTile::setColorLayer ( unsigned int  i,
Layer layer 
)

Set a color layer with specified layer number.

void osgTerrain::TerrainTile::setDirty ( bool  dirty  ) 

Set the dirty flag on/off.

void osgTerrain::TerrainTile::setElevationLayer ( Layer layer  ) 

Set the layer to use to define the elevations of the terrain.

void osgTerrain::TerrainTile::setLocator ( Locator locator  )  [inline]

Set the coordinate frame locator of the terrain node. The locator takes non-dimensional s,t coordinates into the X,Y,Z world coords and back.

void osgTerrain::TerrainTile::setRequiresNormals ( bool  flag  )  [inline]

Set hint to whether the TerrainTechnique should create per vertex normals for lighting purposes.

void osgTerrain::TerrainTile::setTerrain ( Terrain ts  ) 

Set the Terrain that this Terrain tile is a member of.

void osgTerrain::TerrainTile::setTerrainTechnique ( TerrainTechnique terrainTechnique  ) 
void osgTerrain::TerrainTile::setTileID ( const TileID tileID  ) 

Set the TileID (layer, x,y) of the TerrainTile. The TileID is used so it can be located by its neighbours via the enclosing Terrain node that manages a map of TileID to TerraiTiles.

static void osgTerrain::TerrainTile::setTileLoadedCallback ( TileLoadedCallback lc  )  [static]
void osgTerrain::TerrainTile::setTreatBoundariesToValidDataAsDefaultValue ( bool  flag  )  [inline]

Set the hint to whether the TerrainTechnique should treat the invalid Layer entries that at are neigbours to valid entries with the default value.

virtual void osgTerrain::TerrainTile::traverse ( osg::NodeVisitor  )  [virtual]

Traverse downwards : calls children's accept method with NodeVisitor.

Reimplemented from osg::Group.


Friends And Related Function Documentation

friend class Terrain [friend]

Member Data Documentation


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

Generated by  doxygen 1.6.2