OpenSceneGraph 2.8.4
|
Terrain provides a framework for loosely coupling height field data with height rendering algorithms. More...
Classes | |
struct | TileLoadedCallback |
Callback for post processing loaded TerrainTile, and for filling in missing elements such as external external imagery. More... | |
Public Member Functions | |
TerrainTile () | |
TerrainTile (const TerrainTile &, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. | |
META_Node (osgTerrain, TerrainTile) | |
virtual void | traverse (osg::NodeVisitor &nv) |
Traverse downwards : calls children's accept method with NodeVisitor. | |
void | init () |
Call init on any attached TerrainTechnique. | |
void | setTerrain (Terrain *ts) |
Set the Terrain that this Terrain tile is a member of. | |
Terrain * | getTerrain () |
Get the Terrain that this Terrain tile is a member of. | |
const Terrain * | getTerrain () const |
Get the const Terrain that this Terrain tile is a member of. | |
void | setTileID (const TileID &tileID) |
Set the TileID (layer, x,y) of the TerrainTile. | |
const TileID & | getTileID () const |
Get the TileID (layer, x,y) of the TerrainTile. | |
void | setTerrainTechnique (TerrainTechnique *terrainTechnique) |
Set the TerrainTechnique. | |
TerrainTechnique * | getTerrainTechnique () |
Get the TerrainTechnique. | |
const TerrainTechnique * | getTerrainTechnique () const |
Get the const TerrainTechnique. | |
void | setLocator (Locator *locator) |
Set the coordinate frame locator of the terrain node. | |
Locator * | getLocator () |
Get the coordinate frame locator of the terrain node. | |
const Locator * | getLocator () const |
Get the coordinate frame locator of the terrain node. | |
void | setElevationLayer (Layer *layer) |
Set the layer to use to define the elevations of the terrain. | |
Layer * | getElevationLayer () |
Get the layer to use to define the elevations of the terrain. | |
const Layer * | getElevationLayer () const |
Get the const layer to use to define the elevations of the terrain. | |
void | setColorLayer (unsigned int i, Layer *layer) |
Set a color layer with specified layer number. | |
Layer * | getColorLayer (unsigned int i) |
Get color layer with specified layer number. | |
const Layer * | getColorLayer (unsigned int i) const |
Set const color layer with specified layer number. | |
unsigned int | getNumColorLayers () const |
Get the number of colour layers. | |
void | setRequiresNormals (bool flag) |
Set hint to whether the TerrainTechnique should create per vertex normals for lighting purposes. | |
bool | getRequiresNormals () const |
Get whether the TerrainTechnique should create per vertex normals for lighting purposes. | |
void | setTreatBoundariesToValidDataAsDefaultValue (bool flag) |
Set the hint to whether the TerrainTechnique should treat the invalid Layer entries that at are neigbours to valid entries with the default value. | |
bool | getTreatBoundariesToValidDataAsDefaultValue () const |
Get whether the TeatBoundariesToValidDataAsDefaultValue hint. | |
void | setDirty (bool dirty) |
Set the dirty flag on/off. | |
bool | getDirty () const |
return true if the tile is dirty and needs to be updated, | |
virtual osg::BoundingSphere | computeBound () const |
Compute the bounding volume of the terrain by computing the union of the bounding volumes of all layers. | |
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 |
Terrain provides a framework for loosely coupling height field data with height rendering algorithms.
This allows TerrainTechnique's to be plugged in at runtime.
typedef std::vector< osg::ref_ptr<Layer> > osgTerrain::TerrainTile::Layers [protected] |
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] |
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.
Locator* osgTerrain::TerrainTile::getLocator | ( | ) | [inline] |
Get the coordinate frame locator of the terrain node.
const Locator* osgTerrain::TerrainTile::getLocator | ( | ) | const [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] |
Terrain* osgTerrain::TerrainTile::getTerrain | ( | ) | [inline] |
TerrainTechnique* osgTerrain::TerrainTile::getTerrainTechnique | ( | ) | [inline] |
Get the TerrainTechnique.
const TerrainTechnique* osgTerrain::TerrainTile::getTerrainTechnique | ( | ) | const [inline] |
Get the const TerrainTechnique.
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 | ) |
void osgTerrain::TerrainTile::setTerrainTechnique | ( | TerrainTechnique * | terrainTechnique | ) |
Set the 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.
friend class Terrain [friend] |
Layers osgTerrain::TerrainTile::_colorLayers [protected] |
bool osgTerrain::TerrainTile::_dirty [protected] |
osg::ref_ptr<Layer> osgTerrain::TerrainTile::_elevationLayer [protected] |
bool osgTerrain::TerrainTile::_hasBeenTraversal [protected] |
osg::ref_ptr<Locator> osgTerrain::TerrainTile::_locator [protected] |
bool osgTerrain::TerrainTile::_requiresNormals [protected] |
Terrain* osgTerrain::TerrainTile::_terrain [protected] |
TileID osgTerrain::TerrainTile::_tileID [protected] |
bool osgTerrain::TerrainTile::_treatBoundariesToValidDataAsDefaultValue [protected] |
![]() | Generated at Sun Jan 8 2012 13:16:54 for the OpenSceneGraph by doxygen 1.7.4. |