dtTerrain Namespace Reference

An extensible library for rendering terrain databases. More...


Classes

class  ColorMapDecorator
 This terrain decorator is a terrain tile base texture decorator. More...
class  DTEDTerrainReader
 This data reader loads DTED data mapping to a specified latitude and longitude. More...
class  FixedPointNoise
 This is a fixed point implementation of an improved Ken Perlin noise generator. More...
class  GeoCoordinatesException
 This class contains the various types of exceptions that the coordinate system class may throw during a given operation. More...
class  GeoCoordinates
 This class is intended to represent cartesian and geographic coordinates. More...
class  GeoTiffDecorator
 This class is a terrain texturing decorator that supports the mapping of geospecific images onto terrain tiles. More...
class  HeightFieldException
 This enumeration defines the different types of exceptions the height field may throw if an error occurs. More...
class  HeightField
 This class wraps an array of elevation posts. More...
class  ImageUtilException
 Defines exceptions that may be thrown from the image utility methods. More...
class  ImageUtils
 This class is a static class containing many methods for creating images procedurally, concatenating images, and building images from source height data. More...
class  LCCAnalyzerResourceName
 This enumeration identitifies the resources that are cached and managed by the vegetation decorator layer. More...
class  LCCAnalyzerException
 Defines the exceptions thrown by the lcc analyzer. More...
class  LCCAnalyzer
 The LCC Analyzer calculates LCC data for use in the vegetation decorator. More...
class  LCCType
class  MathUtils
class  PagedTerrainTileLoadState
 This enumeration defines the different states a tile could be in throughout its lifetime. More...
class  PagedTerrainTileResourceName
 This enumeration is used to identity built in resources that the terrain tiles are aware of. More...
class  PagedTerrainTile
 This class is the base class for a tile of data. More...
class  PagedTerrainTileFactory
 This class is the base for a simple factory used to create new terrain tiles. More...
class  SoarXDrawable
 This class encapsulates the SoarX rendering algorithm itself. More...
class  SoarXCacheResourceName
class  SoarXTerrainRenderer
 This renderer is an integration/implementation of the SoarX terrain rendering algorithm. More...
class  TerrainException
 This class enumerates the different exceptions that can be thrown by terrain instances. More...
class  Terrain
 This is the base terrain class that provides most of the functionlity required for terrain rendering. More...
class  TerrainDataReaderException
 These exceptions are used by terrain data readers when an error occurs during the load process. More...
class  HeightFieldResizePolicy
 This enumeration specifies the valid resize policies the data readers should follow when loading a new heightfield. More...
class  TerrainDataReader
 This is mostly an interface class to the data reader functionality of Delta3D terrains. More...
class  TerrainRendererException
 This enumeration contains generic errors that could occur in terrain renderers. More...
class  TerrainDataRenderer
 This class is the interface for a terrain renderer. More...
class  TerrainDataType
 This class defines the various types of terrain data supported by default in Delta3D. More...
class  TerrainDecorationLayer
 This class is a terrain decoration layer. More...
class  VegetationException
 Defines the exception used by the vegetation decorator. More...
class  VegetationDecorator
 This class is the vegetation decorator layer. More...

Functions

bool SimpleLineOfSight (dtTerrain::Terrain *terrain, const osg::Vec3 &pointOne, const osg::Vec3 &pointTwo)
 Trivial Line Of Sight calcuator.
 IMPLEMENT_ENUM (DTEDTerrainReader::DTEDLevelEnum)
 IMPLEMENT_ENUM (GeoCoordinatesException)
std::string vec3dToString (const osg::Vec3d &pt)
std::string vec3ToString (const osg::Vec3 &pt)
 IMPLEMENT_ENUM (HeightFieldException)
 IMPLEMENT_ENUM (ImageUtilException)
 IMPLEMENT_ENUM (LCCAnalyzerException)
 IMPLEMENT_ENUM (LCCAnalyzerResourceName)
 IMPLEMENT_ENUM (PagedTerrainTileResourceName)
 IMPLEMENT_ENUM (PagedTerrainTileLoadState)
 IMPLEMENT_ENUM (SoarXCacheResourceName)
 IMPLEMENT_MANAGEMENT_LAYER (Terrain)
 IMPLEMENT_ENUM (TerrainException)
 IMPLEMENT_ENUM (TerrainDataReaderException)
 IMPLEMENT_ENUM (HeightFieldResizePolicy)
 IMPLEMENT_ENUM (TerrainRendererException)
 IMPLEMENT_ENUM (TerrainDataType)
 IMPLEMENT_ENUM (VegetationException)

Variables

const std::string COLOR_MAP_IMAGE_NAME = "colormap_decorator_image.rgb"
const int I = (1 << 12)
const std::string GEOTIFF_IMAGE_NAME = "geo_tiff_decorator_image.rgb"
const bool BOTTOM = false
 Constants used during the refinement process.
const bool SIDE = true


Detailed Description

An extensible library for rendering terrain databases.

Function Documentation

dtTerrain::IMPLEMENT_ENUM ( VegetationException   ) 

dtTerrain::IMPLEMENT_ENUM ( TerrainDataType   ) 

dtTerrain::IMPLEMENT_ENUM ( TerrainRendererException   ) 

dtTerrain::IMPLEMENT_ENUM ( HeightFieldResizePolicy   ) 

dtTerrain::IMPLEMENT_ENUM ( TerrainDataReaderException   ) 

dtTerrain::IMPLEMENT_ENUM ( TerrainException   ) 

dtTerrain::IMPLEMENT_ENUM ( SoarXCacheResourceName   ) 

dtTerrain::IMPLEMENT_ENUM ( PagedTerrainTileLoadState   ) 

dtTerrain::IMPLEMENT_ENUM ( PagedTerrainTileResourceName   ) 

dtTerrain::IMPLEMENT_ENUM ( LCCAnalyzerResourceName   ) 

dtTerrain::IMPLEMENT_ENUM ( LCCAnalyzerException   ) 

dtTerrain::IMPLEMENT_ENUM ( ImageUtilException   ) 

dtTerrain::IMPLEMENT_ENUM ( HeightFieldException   ) 

dtTerrain::IMPLEMENT_ENUM ( GeoCoordinatesException   ) 

dtTerrain::IMPLEMENT_ENUM ( DTEDTerrainReader::DTEDLevelEnum   ) 

dtTerrain::IMPLEMENT_MANAGEMENT_LAYER ( Terrain   ) 

bool dtTerrain::SimpleLineOfSight ( dtTerrain::Terrain terrain,
const osg::Vec3 &  pointOne,
const osg::Vec3 &  pointTwo 
)

Trivial Line Of Sight calcuator.

We basically walk along the ray between the two points, doing point sampling. This is brute force and not the most efficient means of doing this test, but this is the first implementation.

This routine ONLY checks visibility against ground terrain! We do not check test against other objects, such as buildings or other vehicles.

Sampling rate: our DTED data is sampled at about 30m resolution. Therefore we adjust the postSpacing to be smaller than that, and use that to step along the viewing ray.

This uses dtTerrain::GetHeight which uses the current Renderer this may be cause lots extra work, especially when called repeatedly might be better to do it directly on heightField of tile?

Parameters:
terrain Test the line of sight against this instance of Terrain.
pointOne The start point.
pointTwo The end point.
Precondition:
terrain != 0

std::string dtTerrain::vec3dToString ( const osg::Vec3d &  pt  ) 

std::string dtTerrain::vec3ToString ( const osg::Vec3 &  pt  ) 


Variable Documentation

const bool dtTerrain::BOTTOM = false

Constants used during the refinement process.

const std::string dtTerrain::COLOR_MAP_IMAGE_NAME = "colormap_decorator_image.rgb"

const std::string dtTerrain::GEOTIFF_IMAGE_NAME = "geo_tiff_decorator_image.rgb"

const int dtTerrain::I = (1 << 12)

const bool dtTerrain::SIDE = true


http://www.delta3d.org
2.0.0 generated 14 Feb 2008