|
LuciadCPillar 2026.1
|
Immutable description of the tile layout of a single projection. More...
#include <luciad/models/projectedimagery/ProjectionStructure.h>
Public Member Functions | |
| double | getImageFractionX () const |
| Returns the horizontal sphere coverage. | |
| double | getImageFractionY () const |
| Returns the vertical sphere coverage. | |
| uint32_t | getLevel0TileCountX () const |
| Returns the number of tiles along the x-axis at the coarsest level. | |
| uint32_t | getLevel0TileCountY () const |
| Returns the number of tiles along the y-axis at the coarsest level. | |
| uint32_t | getLevelCount () const |
| Returns the number of levels of detail. | |
| uint32_t | getTileHeight () const |
| Returns the tile height in pixels. | |
| uint32_t | getTileWidth () const |
| Returns the tile width in pixels. | |
| ProjectionStructureType | getType () const |
| Returns the projection geometry of this structure. | |
| bool | operator== (const ProjectionStructure &other) const |
| Compares two structures for value equality: same type, level count, tile size, level-0 tile counts and sphere coverage. | |
Static Public Member Functions | |
| static ProjectionStructure | cubeMap (uint32_t levelCount, uint32_t tileWidth, uint32_t tileHeight, uint32_t level0TileCountX, uint32_t level0TileCountY) |
| Creates a multi-leveled cubemap structure. | |
| static ProjectionStructure | equirectangular (uint32_t levelCount, uint32_t tileWidth, uint32_t tileHeight, uint32_t level0TileCountX, uint32_t level0TileCountY, double imageFractionX, double imageFractionY) |
| Creates a multi-leveled equirectangular structure. | |
| static ProjectionStructure | pinhole (uint32_t width, uint32_t height) |
| Creates a single-level, single-tile pinhole structure of the given pixel size. | |
Immutable description of the tile layout of a single projection.
A pinhole projection is the trivial single-level, single-tile case. Cubemap and equirectangular panoramas can be multi-leveled, with a pyramid of tiles per level.
Use the static factory methods to create an instance.
|
static |
Creates a multi-leveled cubemap structure.
| levelCount | the number of levels of detail. Must be at least 1. |
| tileWidth | the tile width in pixels. |
| tileHeight | the tile height in pixels. |
| level0TileCountX | the number of tiles along the x-axis at the coarsest level. |
| level0TileCountY | the number of tiles along the y-axis at the coarsest level. |
| luciad::LogicException | when the level count, a tile dimension or a level 0 tile count is 0. |
|
static |
Creates a multi-leveled equirectangular structure.
The image fractions express how much of the full sphere the imagery actually covers, where 1.0 means a full 360-by-180 degree panorama.
| levelCount | the number of levels of detail. Must be at least 1. |
| tileWidth | the tile width in pixels. |
| tileHeight | the tile height in pixels. |
| level0TileCountX | the number of tiles along the x-axis at the coarsest level. |
| level0TileCountY | the number of tiles along the y-axis at the coarsest level. |
| imageFractionX | the horizontal sphere coverage, in the range (0, 1]. |
| imageFractionY | the vertical sphere coverage, in the range (0, 1]. |
| luciad::LogicException | when the level count, a tile dimension or a level 0 tile count is 0, or when an image fraction is outside (0, 1]. |
| double luciad::ProjectionStructure::getImageFractionX | ( | ) | const |
Returns the horizontal sphere coverage.
Always 1.0 for pinhole and cubemap structures.
| double luciad::ProjectionStructure::getImageFractionY | ( | ) | const |
Returns the vertical sphere coverage.
Always 1.0 for pinhole and cubemap structures.
| uint32_t luciad::ProjectionStructure::getLevel0TileCountX | ( | ) | const |
Returns the number of tiles along the x-axis at the coarsest level.
| uint32_t luciad::ProjectionStructure::getLevel0TileCountY | ( | ) | const |
Returns the number of tiles along the y-axis at the coarsest level.
| uint32_t luciad::ProjectionStructure::getLevelCount | ( | ) | const |
Returns the number of levels of detail.
| uint32_t luciad::ProjectionStructure::getTileHeight | ( | ) | const |
Returns the tile height in pixels.
| uint32_t luciad::ProjectionStructure::getTileWidth | ( | ) | const |
Returns the tile width in pixels.
| ProjectionStructureType luciad::ProjectionStructure::getType | ( | ) | const |
Returns the projection geometry of this structure.
| bool luciad::ProjectionStructure::operator== | ( | const ProjectionStructure & | other | ) | const |
Compares two structures for value equality: same type, level count, tile size, level-0 tile counts and sphere coverage.
Equal structures describe the same tile layout.
| other | the structure to compare with. |
|
static |
Creates a single-level, single-tile pinhole structure of the given pixel size.
| width | the image width in pixels. |
| height | the image height in pixels. |
| luciad::LogicException | when the width or the height is 0. |