osgTerrain::Terrain Class Reference

Inheritance diagram for osgTerrain::Terrain:

osg::Group osg::Node osg::Object osg::Referenced

List of all members.

Public Member Functions

 Terrain ()
 Terrain (const Terrain &, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 META_Node (osgTerrain, Terrain)
virtual void traverse (osg::NodeVisitor &nv)
void setSampleRatio (float ratio)
float getSampleRatio () const
void setVerticalScale (float scale)
float getVerticalScale () const
TerrainTilegetTile (const TileID &tileID)
const TerrainTilegetTile (const TileID &tileID) const
void setTerrainTechniquePrototype (TerrainTechnique *technique)
TerrainTechniquegetTerrainTechniquePrototype ()
const TerrainTechniquegetTerrainTechniquePrototype () const

Protected Types

typedef std::map< TileID,
TerrainTile * > 
TerrainTileMap
typedef std::set< TerrainTile * > TerrainTileSet

Protected Member Functions

virtual ~Terrain ()
void dirtyRegisteredTiles ()
void registerTerrainTile (TerrainTile *tile)
void unregisterTerrainTile (TerrainTile *tile)

Protected Attributes

float _sampleRatio
float _verticalScale
OpenThreads::Mutex _mutex
TerrainTileSet _terrainTileSet
TerrainTileMap _terrainTileMap
osg::ref_ptr< TerrainTechnique_terrainTechnique

Friends

class TerrainTile


Detailed Description

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

Member Typedef Documentation

typedef std::map< TileID, TerrainTile* > osgTerrain::Terrain::TerrainTileMap [protected]

typedef std::set< TerrainTile* > osgTerrain::Terrain::TerrainTileSet [protected]


Constructor & Destructor Documentation

osgTerrain::Terrain::Terrain (  ) 

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

Copy constructor using CopyOp to manage deep vs shallow copy.

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


Member Function Documentation

osgTerrain::Terrain::META_Node ( osgTerrain  ,
Terrain   
)

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

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

Reimplemented from osg::Group.

void osgTerrain::Terrain::setSampleRatio ( float  ratio  )  [inline]

Set the sample ratio hint that TerrainTile should use when building geometry. Defaults to 1.0, which means use all original sample points.

float osgTerrain::Terrain::getSampleRatio (  )  const [inline]

Get the sample ratio hint.

void osgTerrain::Terrain::setVerticalScale ( float  scale  )  [inline]

Set the vertical scale hint.

float osgTerrain::Terrain::getVerticalScale (  )  const [inline]

Get the vertical scale hint.

TerrainTile* osgTerrain::Terrain::getTile ( const TileID tileID  ) 

Get the TerrainTile for a given TileID.

const TerrainTile* osgTerrain::Terrain::getTile ( const TileID tileID  )  const

Get the const TerrainTile for a given TileID.

void osgTerrain::Terrain::setTerrainTechniquePrototype ( TerrainTechnique technique  )  [inline]

Set the TerrainTechnique prototype from which TerrainTiles can clone the techniques from.

TerrainTechnique* osgTerrain::Terrain::getTerrainTechniquePrototype (  )  [inline]

Get the TerrainTechnique prototype

const TerrainTechnique* osgTerrain::Terrain::getTerrainTechniquePrototype (  )  const [inline]

Get the const TerrainTechnique protype

void osgTerrain::Terrain::dirtyRegisteredTiles (  )  [protected]

void osgTerrain::Terrain::registerTerrainTile ( TerrainTile tile  )  [protected]

void osgTerrain::Terrain::unregisterTerrainTile ( TerrainTile tile  )  [protected]


Friends And Related Function Documentation

friend class TerrainTile [friend]


Member Data Documentation


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

Generated on Sat Mar 20 12:34:06 2010 for openscenegraph by  doxygen 1.5.6