openscenegraph
|
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] |
INHERIT | |
DO_NOT_SET_BLENDING |
Default - check for the any BlendingPolicy set on the enclosing osgTerrain::Terrain node, and if it's also INHERIT then assume ENABLE_BLENDING_WHEN_ALPHA_PRESENT. |
ENABLE_BLENDING | |
ENABLE_BLENDING_WHEN_ALPHA_PRESENT |
check colour layers for alpha value and if present enable blending. |
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.
BlendingPolicy osgTerrain::TerrainTile::getBlendingPolicy | ( | ) | const [inline] |
Get the policy to use when deciding whether to enable/disable blending and use of transparent bin.
Layer* osgTerrain::TerrainTile::getColorLayer | ( | unsigned int | i | ) | [inline] |
Get color layer with specified layer number.
const Layer* osgTerrain::TerrainTile::getColorLayer | ( | unsigned int | i | ) | const [inline] |
Set const color layer with specified layer number.
int osgTerrain::TerrainTile::getDirty | ( | ) | const [inline] |
return true if the any of the DirtyMask are set.
int osgTerrain::TerrainTile::getDirtyMask | ( | ) | const [inline] |
return true if the tile is dirty and needs to be updated,
Layer* osgTerrain::TerrainTile::getElevationLayer | ( | ) | [inline] |
Get the layer to use to define the elevations of the terrain.
const Layer* osgTerrain::TerrainTile::getElevationLayer | ( | ) | const [inline] |
Get the const 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 const 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.
Terrain* osgTerrain::TerrainTile::getTerrain | ( | ) | [inline] |
const Terrain* osgTerrain::TerrainTile::getTerrain | ( | ) | const [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 | ( | int | dirtyMask, |
bool | assumeMultiThreaded | ||
) |
Call init on any attached TerrainTechnique.
osgTerrain::TerrainTile::META_Node | ( | osgTerrain | , |
TerrainTile | |||
) |
virtual void osgTerrain::TerrainTile::releaseGLObjects | ( | osg::State * | = 0 | ) | const [virtual] |
If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context. Otherwise, releases OpenGL objects for all graphics contexts.
Reimplemented from osg::Group.
void osgTerrain::TerrainTile::setBlendingPolicy | ( | BlendingPolicy | policy | ) | [inline] |
Set the policy to use when deciding whether to enable/disable blending and use of transparent bin.
void osgTerrain::TerrainTile::setColorLayer | ( | unsigned int | i, |
Layer * | layer | ||
) |
Set a color layer with specified layer number.
void osgTerrain::TerrainTile::setDirty | ( | bool | dirty | ) | [inline] |
Set the dirty flag on/off.
void osgTerrain::TerrainTile::setDirtyMask | ( | int | dirtyMask | ) |
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] |
int osgTerrain::TerrainTile::_dirtyMask [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] |