Marble::GeoSceneAbstractTileProjection

Search for usage in LXR

Marble::GeoSceneAbstractTileProjection Class Referenceabstract

#include <GeoSceneAbstractTileProjection.h>

Inheritance diagram for Marble::GeoSceneAbstractTileProjection:

Public Types

enum  Type { Equirectangular, Mercator }
 

Public Member Functions

 GeoSceneAbstractTileProjection ()
 
GeoDataLatLonBox geoCoordinates (const TileId &tileId) const
 
virtual GeoDataLatLonBox geoCoordinates (int zoomLevel, int x, int y) const =0
 
int levelZeroColumns () const
 
int levelZeroRows () const
 
void setLevelZeroColumns (int levelZeroColumns)
 
void setLevelZeroRows (int levelZeroRows)
 
virtual QRect tileIndexes (const GeoDataLatLonBox &latLonBox, int zoomLevel) const =0
 
virtual GeoSceneAbstractTileProjection::Type type () const =0
 

Detailed Description

A base class for projections between tile indizes and geo coordinates in Marble.

For map tiling with indizes in x and y dimensions and 1 or multiple zoomlevels. The lowest zoomlevel is 0.

Definition at line 29 of file GeoSceneAbstractTileProjection.h.

Constructor & Destructor Documentation

◆ GeoSceneAbstractTileProjection()

Marble::GeoSceneAbstractTileProjection::GeoSceneAbstractTileProjection ( )

Construct a new GeoSceneAbstractTileProjection.

Definition at line 31 of file GeoSceneAbstractTileProjection.cpp.

Member Function Documentation

◆ geoCoordinates() [1/2]

GeoDataLatLonBox Marble::GeoSceneAbstractTileProjection::geoCoordinates ( const TileId &  tileId) const

Get the boundary geo coordinates corresponding to a tile.

If tildId has values out-of-bounds, the behaviour is undefined.

Parameters
tileIdthe id of the tile
Returns
geographic bounding box covered by the given tile

Definition at line 60 of file GeoSceneAbstractTileProjection.cpp.

◆ geoCoordinates() [2/2]

virtual GeoDataLatLonBox Marble::GeoSceneAbstractTileProjection::geoCoordinates ( int  zoomLevel,
int  x,
int  y 
) const
pure virtual

Get the boundary geo coordinates corresponding to a tile.

If x, y or zoomLevel have values out-of-bounds, the behaviour is undefined.

Parameters
zoomLevelthe zoomlevel of the tile
xthe x index of the tile
ythe y index of the tile
Returns
geographic bounding box covered by the given tile

Implemented in Marble::GeoSceneMercatorTileProjection, and Marble::GeoSceneEquirectTileProjection.

◆ levelZeroColumns()

int Marble::GeoSceneAbstractTileProjection::levelZeroColumns ( ) const
Returns
the number of tiles on level 0 in x dimension

Definition at line 40 of file GeoSceneAbstractTileProjection.cpp.

◆ levelZeroRows()

int Marble::GeoSceneAbstractTileProjection::levelZeroRows ( ) const
Returns
the number of tiles on level 0 in y dimension

Definition at line 50 of file GeoSceneAbstractTileProjection.cpp.

◆ setLevelZeroColumns()

void Marble::GeoSceneAbstractTileProjection::setLevelZeroColumns ( int  levelZeroColumns)

Sets the number of tiles on level 0 in x dimension.

Parameters
levelZeroColumnsnew number of tiles on level 0 in x dimension

Default value of the levelZeroColumns property is 1.

Definition at line 45 of file GeoSceneAbstractTileProjection.cpp.

◆ setLevelZeroRows()

void Marble::GeoSceneAbstractTileProjection::setLevelZeroRows ( int  levelZeroRows)

Sets the number of tiles on level 0 in y dimension.

Parameters
levelZeroRowsnew number of tiles on level 0 in y dimension

Default value of the levelZeroRows property is 1.

Definition at line 55 of file GeoSceneAbstractTileProjection.cpp.

◆ tileIndexes()

virtual QRect Marble::GeoSceneAbstractTileProjection::tileIndexes ( const GeoDataLatLonBox latLonBox,
int  zoomLevel 
) const
pure virtual

Get the tile indexes which cover the given geographical box.

If latLonBox or zoomLevel have values out-of-bounds, the behaviour is undefined.

Parameters
latLonBoxthe geo coordinates of the requested tiles
zoomLevelthe zoomlevel of the requested tiles
Returns
range of tile indexes covering given geographical box at given zoom level

Implemented in Marble::GeoSceneMercatorTileProjection, and Marble::GeoSceneEquirectTileProjection.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Tue Dec 6 2022 03:54:39 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.