Pyramid

Description

Represents a pyramid of tile data. A tile pyramid is organized as a cubemap, where each cubemap face defines as quad-tree. The quad-tree nodes each hold a single data tile.

The topmost level (level index 0) contains only a single data tile:
+---------------+
|               |
|               |       +---> tileX
|               |       |
|               |       |
|               |       V
|               |       tileY
|               |
+---------------+

According to quad-tree semantics, each data tile is split into four children:
+-------+-------+
|       |       |
|       |       |       +---> tileX
|       |       |       |
+-------+-------+       |
|       |       |       V
|       |       |       tileY
|       |       |
+-------+-------+

This is done until the bottommost level (level count, minus one) is reached:
+---+---+---+---+
|   |   |   |   |
+---+---+---+---+       +---> tileX
|   |   |   |   |       |
+---+---+---+---+       |
|   |   |   |   |       V
+---+---+---+---+       tileY
|   |   |   |   |
+---+---+---+---+

Tile pyramids can be sparse, i.e. some tiles can be void. The pyramid flags (see Pyramid.Flags, Pyramid.Flags.Opaque) define how void tiles shall be handled during rendering.

+-------+-------+    +---+---+---+---+
|       |       |    |   |   |   | X |
|       |       |    +---+---+---+---+
|       |       |    |   |   |   |   |
+-------+-------+    +---+---+---+---+    X := void tiles
|       |       |    | X | X |   |   |
|   X   |       |    +---+---+---+---+
|       |       |    | X | X |   |   |
+-------+-------+    +---+---+---+---+

Tile pyramids come in two flavours:

  • projected (i.e. rectangular)

  • unprojected (i.e. cubemap)

The georeference raster of a pyramid always spans the maximum pyramid level, independent of the actual pyramid size, assuming a tile pad of zero (see Pyramid.Info.pad ):

(0|0) : raster coordinates of top-left corner of top-left tile, on any level.
(m|m) : raster coordinates of bottom-right corner of bottom-right tile, on any level.

where m is 1073741824. This means that the georeference raster has Coverage.Type.PixelIsPoint semantics.

Fields / External

info

Holds detail information about this pixel pyramid.