MercatorCoordinate
Объект MercatorCoordinate представляет спроецированное трёхмерное положение.
MercatorCoordinate использует веб-проекцию Меркатора (EPSG:3857) с немного отличающимися единицами измерения:
- размер 1 единицы — это ширина спроецированного мира, а не «метр Меркатора»
- начало координат находится в северо-западном углу, а не в центре
Например, MercatorCoordinate(0, 0, 0) — это северо-западный угол мира Меркатора, а MercatorCoordinate(1, 1, 0) — юго-восточный угол. Если вы знакомы с векторными тайлами, может быть полезно представить пространство координат как тайл 0/0/0 с размером 1.
z измерение MercatorCoordinate является конформным. Куб в пространстве координат Меркатора будет отображаться как куб.
Пример
let nullIsland = new MercatorCoordinate(0.5, 0.5, 0);
См. также
- Добавление пользовательского слоя стиля
- Добавление 3D-модели с помощью three.js
- Добавление простого пользовательского слоя на глобус
Реализует
IMercatorCoordinate
Конструкторы
Конструктор
new MercatorCoordinate(
x:number,y:number,z?:number):MercatorCoordinate
Параметры
| Параметр | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
x | number | undefined | Компонент x положения. |
y | number | undefined | Компонент y положения. |
z | number | 0 | Компонент z положения. |
Возвращает
MercatorCoordinate
Методы
meterInMercatorCoordinateUnits()
meterInMercatorCoordinateUnits():
number
Возвращает расстояние, соответствующее 1 метру в единицах MercatorCoordinate на данной широте.
Для координат в реальных единицах измерения, выраженных в метрах, это значение позволяет преобразовать их в MercatorCoordinateы.
Возвращает
number
Расстояние, соответствующее 1 метру в единицах MercatorCoordinate.
Реализация
IMercatorCoordinate.meterInMercatorCoordinateUnits
toAltitude()
toAltitude():
number
Возвращает высоту координаты в метрах.
Возвращает
number
Высота в метрах.
Пример
let coord = new MercatorCoordinate(0, 0, 0.02); coord.toAltitude(); // 6914.281956295339
Реализация
IMercatorCoordinate.toAltitude
toLngLat()
toLngLat():
LngLat
Возвращает LngLat для координаты.
Возвращает
Объект LngLat.
Пример
let coord = new MercatorCoordinate(0.5, 0.5, 0); let lngLat = coord.toLngLat(); // LngLat(0, 0)
Реализация
IMercatorCoordinate.toLngLat
fromLngLat()
staticfromLngLat(lngLatLike:LngLatLike,altitude?:number):MercatorCoordinate
Преобразует 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)
© MapLibre contributors
Licensed under the 3-Clause BSD License.
https://maplibre.org/maplibre-gl-js/docs/API/classes/MercatorCoordinate/