MapTilingScheme Class
Beta
A scheme for converting between two representations of the surface of the Earth: an ellipsoid and a rectangular tiled map. Positions on the surface of the ellipsoid are expressed in Cartographic coordinates. Rectangular MapTiles are projected onto this ellipsoid by the tiling scheme. Tile coordinates are represented by QuadIds.
The tiling scheme represents the (x,y) coordinates of its tiles as fractions in [0,1] along the X and Y axes. An X fraction of 0 corresponds to the easternmost longitude and an X fraction of 1 to the westernmost longitude. The scheme can choose to correlate a Y fraction of 0 with either the north or south pole, as specified by MapTilingScheme.rowZeroAtNorthPole. Implementing a tiling scheme only requires implementing the abstract method MapTilingScheme.yFractionToLatitude and its inverse, MapTilingScheme.latitudeToYFraction.
Extended by
Methods
Name | Description | |
---|---|---|
constructor(numberOfLevelZeroTilesX: number, numberOfLevelZeroTilesY: number, rowZeroAtNorthPole: boolean): MapTilingScheme Protected | ||
cartographicToFraction(latitudeRadians: number, longitudeRadians: number, result: Point2d): Point2d | Given a cartographic location on the surface of the Earth, convert it to fractional coordinates in the XY plane. | |
cartographicToTileXY(carto: Cartographic, level: number, result?: Point2d): Point2d | Given a cartographic position, compute the corresponding position on the surface of the Earth as fractional distances along the | |
fractionToCartographic(xFraction: number, yFraction: number, result: Cartographic, height: number = 0): Cartographic | Given fractional coordinates in the XY plane and an elevation, compute the corresponding cartographic position. | |
getNumberOfXTilesAtLevel(level: number): number | The total number of tiles in the X direction at the specified level of detail. | |
getNumberOfYTilesAtLevel(level: number): number | The total number of tiles in the Y direction at the specified level of detail. | |
latitudeToYFraction(latitude: number): number Abstract | Convert a latitude in [-pi/2, pi/2] radians into a fraction in [0, 1] along the Y axis. | |
longitudeToXFraction(longitude: number): number | Convert a longitude in [-pi, pi] radisn to a fraction in [0, 1] along the X axis. | |
tileBordersNorthPole(row: number, level: number): boolean | Returns true if the tile at the specified X coordinate and level is adjacent to the north pole. | |
tileBordersSouthPole(row: number, level: number): boolean | Returns true if the tile at the specified X coordinate and level is adjacent to the south pole. | |
tileXToFraction(x: number, level: number): number | Given the X component and level of a QuadId, convert it to a fractional distance along the X axis. | |
tileXToLongitude(x: number, level: number): number | Given the X component and level of a QuadId, compute its longitude in [-pi, pi] radians. | |
tileXYToCartographic(x: number, y: number, level: number, result: Cartographic, height: number = 0): Cartographic | Given the components of a QuadId and an elevation, compute the corresponding Cartographic position. | |
tileXYToFraction(x: number, y: number, level: number, result?: Point2d): Point2d | Given the components of a QuadId, compute its fractional coordinates in the XY plane. | |
tileXYToRectangle(x: number, y: number, level: number, result?: MapCartoRectangle): MapCartoRectangle | Given the components of a QuadId, compute the corresponding region of the Earth's surface. | |
tileYToFraction(y: number, level: number): number | Given the Y component and level of a QuadId, convert it to a fractional distance along the Y axis. | |
tileYToLatitude(y: number, level: number): number | Given the Y component and level of a QuadId, compute its latitude in [-pi/2, pi/2] radians. | |
xFractionToLongitude(xFraction: number): number | Convert a fraction in [0, 1] along the X axis into a longitude in [-pi, pi] radians. | |
xFractionToTileX(xFraction: number, level: number): number | Given a fractional distance along the X axis and a level of the quad tree, compute the X component of the corresponding QuadId. | |
yFractionToLatitude(yFraction: number): number Abstract | Convert a fraction in [0, 1] along the Y axis into a latitude in [-pi/2, pi/2] radians. | |
yFractionToTileY(yFraction: number, level: number): number | Given a fractional distance along the Y axis and a level of the quad tree, compute the Y component of the corresponding QuadId. |
Properties
Name | Type | Description | |
---|---|---|---|
numberOfLevelZeroTilesX Readonly | number | The number of tiles in the X direction at level 0 of the quad tree. | |
numberOfLevelZeroTilesY Readonly | number | The number of tiles in the Y direction at level 0 of the quad tree. | |
rowZeroAtNorthPole Readonly | boolean | If true, the fractional Y coordinate 0 corresponds to the north pole and 1 to the south pole; otherwise, |
Defined in
Last Updated: 30 November, 2023