Class ALcdEarthTileCombiner
java.lang.Object
com.luciad.earth.metadata.preprocessor.combiner.ALcdEarthTileCombiner
- All Implemented Interfaces:
ILcdEarthTileCombiner
- Direct Known Subclasses:
TLcdEarthElevationDataCombiner
,TLcdEarthImageCombiner
,TLcdEarthTerrainTileVertexArrayCombiner
Base class for
ILcdEarthTileCombiner
implementations. Derived classes need only implement the abstract
combineTileData()
method, which combines the data objects of four input tiles. Creating a new
tile, with the appropriate properties and containing the combined data, is
handled by this class.
By default, combineTiles()
returns instances of TLcdEarthTile
. This
behaviour can be changed by overriding
createCombinedTile()
.
- Since:
- 8.2
-
Constructor Summary
ModifierConstructorDescriptionprotected
Constructs a newALcdEarthTileCombiner
. -
Method Summary
Modifier and TypeMethodDescriptionabstract Object
combineTileData
(ALcdEarthTile[][] aInputTiles, Object[][] aInputData) Combines the data present in the four input tiles.combineTiles
(ALcdEarthTile[][] aInputs) Combines four tiles into one.combineTiles
(ALcdEarthTile[][] aInputs, ALcdEarthTile[] aContext) The default implementation of this method simply callscombineTiles(com.luciad.earth.tileset.ALcdEarthTile[][])
, ignoring the tiles passed inaContext
.protected ALcdEarthTile
createCombinedTile
(ILcd3DEditableBounds aCombinedBounds, Object aCombinedData, int aLevel, long aX, long aY, ILcdEarthTileSetCoverage aCoverage, ILcdGeoReference aGeoreference, TLcdEarthTileFormat aFormat) Returns a newTLcdEarthTile
with the given properties.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.luciad.earth.metadata.preprocessor.combiner.ILcdEarthTileCombiner
getDataFormat
-
Constructor Details
-
ALcdEarthTileCombiner
protected ALcdEarthTileCombiner()Constructs a newALcdEarthTileCombiner
.
-
-
Method Details
-
combineTileData
Combines the data present in the four input tiles. Returns a new data object to be contained in the result ofcombineTiles()
.- Parameters:
aInputTiles
- the four source tilesaInputData
- the data objects of four source tiles- Returns:
- a new data object for the combined tiles
- Throws:
IllegalArgumentException
- if the data cannot be combined
-
combineTiles
Combines four tiles into one. All properties of the tile are set in this method, except for the tile's actual data. This is created by callingcombineTileData()
, with the data objects of the four source tiles as an argument.The returned tile is instantiated using the method
createCombinedTile()
.- Specified by:
combineTiles
in interfaceILcdEarthTileCombiner
- Parameters:
aInputs
- 2x2 matrix of tiles of level N- Returns:
- the corresponding tile for level N-1
- Throws:
IllegalArgumentException
- if the tiles cannot be combined
-
createCombinedTile
protected ALcdEarthTile createCombinedTile(ILcd3DEditableBounds aCombinedBounds, Object aCombinedData, int aLevel, long aX, long aY, ILcdEarthTileSetCoverage aCoverage, ILcdGeoReference aGeoreference, TLcdEarthTileFormat aFormat) Returns a newTLcdEarthTile
with the given properties. This method can be overridden if some other implementation ofALcdEarthTile
is needed.- Parameters:
aCombinedBounds
- the bounds of the new tileaCombinedData
- the data of the new tileaLevel
- the level of the new tileaX
- the column index of the new tileaY
- the row index of the new tileaCoverage
- the coverage of the new tileaGeoreference
- the georeference of the new tileaFormat
- the data format of the new tile- Returns:
- a new tile with the specified properties
-
combineTiles
The default implementation of this method simply callscombineTiles(com.luciad.earth.tileset.ALcdEarthTile[][])
, ignoring the tiles passed inaContext
.- Specified by:
combineTiles
in interfaceILcdEarthTileCombiner
- Parameters:
aInputs
- 2x2 matrix of tiles of level NaContext
- additional neighboring tiles that may be used by the combiner- Returns:
- the corresponding tile for level N-1
- Throws:
IllegalArgumentException
- if the tiles cannot be combined
-