MercatorCoordinate
定义于: src/geo/mercator_coordinate.ts:78
MercatorCoordinate
对象表示投影后的三维位置;
MercatorCoordinate
使用网页墨卡托投影(EPSG:3857),但单位略有不同:
- 1个单位的大小是投影世界的宽度,而不是"墨卡托米"
- 坐标空间的原点在西北角,而不是中心
例如,MercatorCoordinate(0, 0, 0)
是墨卡托世界的西北角,而MercatorCoordinate(1, 1, 0)
是东南角;如果你熟悉矢量瓦片,可以将坐标空间视为范围为1
的0/0/0
瓦片;
MercatorCoordinate
的z
维度是保角的;墨卡托坐标空间中的立方体会被渲染为立方体;
示例
let nullIsland = new MercatorCoordinate(0.5, 0.5, 0);
参见
添加自定义样式图层
实现
IMercatorCoordinate
构造函数
构造函数
new MercatorCoordinate(x: number, y: number, z: number = 0): MercatorCoordinate
定义于: src/geo/mercator_coordinate.ts:88
参数
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
x | number | undefined | 位置的x分量 |
y | number | undefined | 位置的y分量 |
z | number | 0 | 位置的z分量 |
返回
MercatorCoordinate
方法
meterInMercatorCoordinateUnits()
meterInMercatorCoordinateUnits(): number
定义于: src/geo/mercator_coordinate.ts:153
返回在当前纬度下1米距离在MercatorCoordinate
单位中的值;
对于使用米作为实际世界单位的坐标,这自然提供了转换为MercatorCoordinate
的比例;
返回
number
1米距离在MercatorCoordinate
单位中的值;
实现
IMercatorCoordinate.meterInMercatorCoordinateUnits
toAltitude()
toAltitude(): number
定义于: src/geo/mercator_coordinate.ts:141
返回坐标的海拔高度(以米为单位);
返回
number
以米为单位的海拔高度;
示例
let coord = new MercatorCoordinate(0, 0, 0.02);
coord.toAltitude(); // 6914.281956295339
实现
IMercatorCoordinate.toAltitude
toLngLat()
toLngLat(): LngLat
定义于: src/geo/mercator_coordinate.ts:125
返回坐标对应的LngLat
;
返回
LngLat
LngLat
对象;
示例
let coord = new MercatorCoordinate(0.5, 0.5, 0);
let lngLat = coord.toLngLat(); // LngLat(0, 0)
实现
IMercatorCoordinate.toLngLat
fromLngLat()
static
fromLngLat(lngLatLike: LngLatLike, altitude: number = 0): MercatorCoordinate
定义于: src/geo/mercator_coordinate.ts:106
将LngLat
投影为MercatorCoordinate
;
参数
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
lngLatLike | LngLatLike | undefined | 要投影的位置 |
altitude | number | 0 | 位置的海拔高度(以米为单位) |
返回
MercatorCoordinate
投影后的墨卡托坐标;
示例
let coord = MercatorCoordinate.fromLngLat({ lng: 0, lat: 0}, 0);
coord; // MercatorCoordinate(0.5, 0.5, 0)