Базовые классы
Описание
В данном разделе описаны базовые классы, которые часто встречаются на страницах руководства API карт и необходимы для работы с многими объектами карты.
Класс DG.LatLng
Географическая точка с определенной широтой и долготой.
var latlng = DG.latLng(54.98, 82.89);
Все методы, которые принимают объекты LatLng также принимают широту и долготу в виде простого массива или объекта, то есть данные записи эквивалентны:
map.panTo(DG.latLng(54.98, 82.89));
map.panTo([54.98, 82.89]);
map.panTo({lng: 82.89, lat: 54.98});
map.panTo({lat: 54.98, lng: 82.89});
Конструктор
| Конструктор |
Использование |
Описание |
DG.LatLng(
<Number> latitude,
<Number> longitude,
<Number> altitude? )
|
DG.latLng(…)
DG.latLng([…])
|
Создает объект, представляющий географическую точку с определенной широтой и долготой (и опционально высотой). |
Свойства
| Свойство |
Тип |
Описание |
lat |
Number |
Широта в градусах. |
lng |
Number |
Долгота в градусах. |
Методы
| Метод |
Возвращает |
Описание |
distanceTo(
<LatLng> otherLatlng )
|
Number |
Возвращает расстояние (в метрах) до переданной широты и долготы, рассчитывается по формуле Haversine. См. описание в Wikipedia |
equals(
<LatLng> otherLatlng )
|
Boolean |
Возвращает true, если переданная широта и долгота находится в той же позиции (с небольшой погрешностью). |
toString() |
String |
Возвращает строковое представление точки (для отладки). |
Класс DG.LatLngBounds
Прямоугольная географическая область на карте.
var southWest = DG.latLng(54.9801, 82.8974),
northEast = DG.latLng(54.9901, 82.9074),
bounds = DG.latLngBounds(southWest, northEast);
Все методы, которые принимают объекты LatLngBounds также принимают их в виде простого массива, то есть границы могут быть указаны как в этом примере:
map.fitBounds([
[54.9801, 82.8974],
[54.9901, 82.9074]
]);
Конструктор
| Конструктор |
Использование |
Описание |
DG.LatLngBounds(
<LatLng> southWest,
<LatLng> northEast )
|
DG.latLngBounds(…)
DG.latLngBounds([…])
|
Создает объект LatLngBounds с определенными юго-западным и северо-восточным углами прямоугольника. |
DG.LatLngBounds(
<LatLng[]> latlng )
|
DG.latLngBounds(…)
|
Создает объект LatLngBounds на основе географических точек, которые находятся внутри. Удобно использовать, если необходимо подстроить центр и масштаб карты с помощью метода fitBounds. |
Методы
| Метод |
Возвращает |
Описание |
extend(
<LatLng | LatLngBounds> latlng )
|
this |
Расширяет границы таким образом, чтобы в них входила переданная точка или другие границы. |
getSouthWest() |
LatLng |
Возвращает юго-западную точку границ. |
getNorthEast() |
LatLng |
Возвращает северо-восточную точку границ. |
getNorthWest() |
LatLng |
Возвращает северо-западную точку границ. |
getSouthEast() |
LatLng |
Возвращает юго-восточную точку границ. |
getWest() |
Number |
Возвращает западную долготу границ. |
getSouth() |
Number |
Возвращает южную широту границ. |
getEast() |
Number |
Возвращает восточную долготу границ. |
getNorth() |
Number |
Возвращает северную широту границ. |
getCenter() |
LatLng |
Возвращает центральную точку прямоугольной области. |
contains(
<LatLngBounds> otherBounds )
|
Boolean |
Возвращает true, если текущий прямоугольник содержит внутри себя переданный прямоугольник. |
contains(
<LatLng> latlng )
|
Boolean |
Возвращает true, если прямоугольник содержит внутри себя переданную точку. |
intersects(
<LatLngBounds> otherBounds )
|
Boolean |
Возвращает true, если текущий прямоугольник пересекается с переданным прямоугольником. |
equals(
<LatLngBounds> otherBounds )
|
Boolean |
Возвращает true, если текущий прямоугольник эквивалентен (с небольшой погрешностью) переданному прямоугольнику. |
toBBoxString() |
String |
Возвращает строку с координатами границ в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'. Удобно использовать для отправки запросов к веб-сервисам, возвращающим геоданные. |
pad(
<Number> bufferRatio )
|
LatLngBounds |
Возвращает большие границы, созданные путем расширения текущих границ на заданный процент в каждом направлении. |
isValid()
|
Boolean |
Возвращает true, если если свойства границ инициализированы. |
Класс DG.Point
Точка с пиксельными координатами x и y.
var point = DG.point(200, 300);
Все методы, которые принимают объекты Point также принимают координаты в виде простого массива, то есть данные записи эквивалентны:
map.panBy([200, 300]);
map.panBy(DG.point(200, 300));
Конструктор
| Конструктор |
Использование |
Описание |
DG.Point(
<Number> x, <Number> y,
<Boolean> round? )
|
DG.point(…)
DG.point([…])
|
Создает объект Point с координатами x и y. Если опциональный параметр round передан со значением true, тогда координаты будут округлены. |
Свойства
| Свойство |
Тип |
Описание |
x |
Number |
Координата x. |
y |
Number |
Координата y. |
Методы
| Метод |
Возвращает |
Описание |
add(
<Point> otherPoint )
|
Point |
Возвращает результат сложения текущей и переданной точек. |
subtract(
<Point> otherPoint )
|
Point |
Возвращает результат вычитания переданной точки из текущей. |
multiplyBy(
<Number> number )
|
Point |
Возвращает результат умножения текущей точки на переданное число. |
divideBy(
<Number> number,
<Boolean> round? )
|
Point |
Возвращает результат деления текущей точки на переданное число. Если опциональный параметр round передан со значением true, тогда результат будет округлен. |
distanceTo(
<Point> otherPoint )
|
Number |
Возвращает расстояние между текущей и переданной точками. |
clone() |
Point |
Возвращает копию текущей точки. |
round() |
Point |
Возвращает копию текущей точки с округленными координатами. |
floor() |
Point |
Возвращает копию текущей точки с округленными в меньшую сторону координатами. |
equals(
<Point> otherPoint )
|
Boolean |
Возвращает true, если переданная точка имеет такие же координаты, как и текущая. |
contains(
<Point> otherPoint )
|
Boolean |
Возвращает true, если обе координаты переданной точки меньше соотвествующих координат текущей точки. |
toString() |
String |
Возвращает строковое представление точки (для отладки). |
Класс DG.Bounds
Прямоугольная область на карте в пиксельных координатах.
var p1 = DG.point(10, 10),
p2 = DG.point(40, 60),
bounds = DG.bounds(p1, p2);
Все методы, которые принимают объекты Bounds также принимают их в виде простого массива, то есть границы могут быть указаны как в этом примере:
otherBounds.intersects([[10, 10], [40, 60]]);
Конструктор
| Конструктор |
Использование |
Описание |
DG.Bounds(
<Point> topLeft,
<Point> bottomRight )
|
DG.bounds(…)
DG.bounds([…])
|
Создает объект Bounds на основе левого верхнего и правого нижнего углов. |
DG.Bounds(
<Point[]> points )
|
DG.bounds(…)
|
Создает объект Bounds на основе точек, которые будут в него входить. |
Свойства
| Свойство |
Тип |
Описание |
min |
Point
| Левый верхний угол прямоугольника. |
max |
Point
| Правый нижний угол прямоугольника. |
Методы
| Метод |
Возвращает |
Описание |
extend(
<Point> point )
|
- |
Расширяет границы таким образом, чтобы в них входила переданная точка. |
getCenter() |
Point |
Возвращает центральную точку прямоугольной области. |
contains(
<Bounds> otherBounds )
|
Boolean |
Возвращает true, если текущий прямоугольник содержит внутри себя переданный прямоугольник. |
contains(
<Point> point )
|
Boolean |
Возвращает true, если прямоугольник содержит внутри себя переданную точку. |
intersects(
<Bounds> otherBounds )
|
Boolean |
Возвращает true, если текущий прямоугольник пересекается с переданным прямоугольником. |
isValid() |
Boolean |
Возвращает true, если если свойства границ инициализированы. |
getSize() |
Point |
Возвращает размер прямоугольника. |