A layer that displays a DTED coverage using the load-on-demand mechanism. More...
#include <ilviews/maps/format/dted/dtedlayer.h>
Public Member Functions | |
IlvDTEDLayer (const char *dirName, IlUInt level, const IlvMapAdapter *adapter, IlvTileCache *cache=0) | |
Creates an instance of IlvDTEDLayer . More... | |
const IlvMapAdapter * | getAdapter () |
Retrieves the current adapter. More... | |
const IlString * | getDirName () |
Returns the name of the parent DTED directory. More... | |
IlString * | getFileName (IlInt row, IlInt column) |
Returns the DTED file name corresponding to the specified row and column. More... | |
const IlvFeatureRenderer * | getRasterRenderer () const |
Retrieves the raster renderer used to create graphic objects. More... | |
void | setAdapter (IlvMapAdapter *a) |
Sets a new adapter. More... | |
void | setRasterRenderer (IlvFeatureRenderer *renderer) |
Sets a new feature renderer. More... | |
Public Member Functions inherited from IlvTiledLayer | |
IlvTiledLayer (const IlvRect &tileOrigin, IlvTileCache *cache=0, IlBoolean startEnabled=IlTrue, IlUShort maxInList=IlvMaxObjectsInList, IlUShort maxInNode=IlvMaxObjectsInList) | |
Initializes a new tiled layer instance. More... | |
virtual void | draw (IlvPort *port, const IlvTransformer *t=0, const IlvRegion *region=0, const IlvRegion *clip=0) const |
Draws the content of the layer. More... | |
void | fitTransformerToTile (IlvView *view, IlInt row, IlInt column) const |
Sets the transformer of a view so that the specified tile is fully visible. More... | |
IlvView * | getDebugView () const |
Returns the debug view of the layer if it has been specified. More... | |
virtual IlvMapsError | getInitStatus () const |
Returns the initialization status of this tiled layer. More... | |
const IlvRect & | getSize () const |
Returns the size of the layer if it has been specified. More... | |
IlvTileController * | getTileController () const |
Returns the tile controller of the layer. More... | |
IlvTileLoader * | getTileLoader () const |
Returns the tile loader of the layer. More... | |
IlBoolean | isDebugDrawingOnTop () const |
Specifies whether the debug graphics are to be drawn above or under the graphics. More... | |
void | setDebugDrawingOnTop (IlBoolean set) |
Tells the debug view if it should draw the drawing on the top. More... | |
void | setDebugView (IlvView *view, IlvColor *borderColor=0, IlvColor *lockedTilesColor=0, IlvColor *cachedTilesColor=0) |
Sets a debug view in which the layer will draw its tiles. More... | |
void | setSize (const IlvRect &rect) |
Specifies the area in which the tiles are contained. More... | |
void | setTileLoader (IlvTileLoader *tileLoader) |
Sets the tile loader of the layer. More... | |
void | start () |
Starts the load-on-demand process. | |
Additional Inherited Members | |
Static Public Member Functions inherited from IlvTiledLayer | |
static IlvTiledLayer * | GetFirstTiledLayer (IlvManager *manager) |
Returns the first IlvTiledLayer of the manager. More... | |
static void | StartAll (IlvManager *manager) |
Starts all the tiled layers of the specified manager. More... | |
Protected Member Functions inherited from IlvTiledLayer | |
virtual void | setInitStatus (IlvMapsError status) |
Sets the initialization status of this layer. More... | |
A layer that displays a DTED coverage using the load-on-demand mechanism.
Library: ilvmaps
This layer automatically loads the tiles that are visible in the views of its manager and unloads the tiles that are not visible.
The file name of the tiles are computed from the usual naming specifications for DTED files:
The DTED file names are named LXX.dtY where L can be 'n' (North) or 's' (South). XX is the latitude of the tile and Y the suffix of the DTED file depending on the DTED level (0, 1 or 2). For example, n09.dt0 is a tile of level 0, located at the latitude 9 North.
The DTED file parent directories are named LXXX where L can be 'e' (East) or 'w' (West) and XXX is the longitude of the DTED tiles contained in a parent directory. For example, w001/ is the directory containing dted tiles located at longitude 1 West.
The characters described above can be uppercase or lowercase. For example, n30.dt1 and N30.DT1 are two valid names for the same DTED tile. The case you use, however, depends on your file system.
The IlvDTEDLayer
works only in the geographic projection.
IlvDTEDLayer::IlvDTEDLayer | ( | const char * | dirName, |
IlUInt | level, | ||
const IlvMapAdapter * | adapter, | ||
IlvTileCache * | cache = 0 |
||
) |
Creates an instance of IlvDTEDLayer
.
This constructor uses a cache that is shared by all the IlvDTEDLayer
instances initialized with this default constructor.
dirName | The name of the parent DTED directory (usually [any_path]/dted) |
level | The level of the files to be loaded (0, 1 or 2). |
adapter | The adapter used to create the graphic object. |
cache | This optional argument specifies the cache of the layer. If this argument is not passed, the singleton cache returned by IlvDefaultTileCache::GetDefaultCache() is used. |
const IlvMapAdapter* IlvDTEDLayer::getAdapter | ( | ) |
Retrieves the current adapter.
const IlString* IlvDTEDLayer::getDirName | ( | ) |
Returns the name of the parent DTED directory.
Returns the DTED file name corresponding to the specified row and column.
For example, getFileName(36, -113) returns "w113/n36.dt0".
row | The row number of the DTED file given in the load-on-demand grid. |
column | The column number of the DTED file given in the load-on-demand grid. |
const IlvFeatureRenderer* IlvDTEDLayer::getRasterRenderer | ( | ) | const |
Retrieves the raster renderer used to create graphic objects.
This renderer is still owned by the layer.
void IlvDTEDLayer::setAdapter | ( | IlvMapAdapter * | a | ) |
Sets a new adapter.
a | The new adapter. The layer becomes owner of the adapter. |
void IlvDTEDLayer::setRasterRenderer | ( | IlvFeatureRenderer * | renderer | ) |
Sets a new feature renderer.
Sets the feature renderer used to create graphic objects representing the DTED rasters. The image renderer must support the IlvMapRaster
geometry.
renderer | The feature renderer. The old renderer (if any) is destroyed and the layer becomes owner of the new renderer. |