Базовые типы данных
В данном разделе описаны классы базовых типов данных, которые часто встречаются на страницах руководства API карт и которые необходимы для работы с многими объектами карты.
DG.LatLng
Географическая точка с определенной широтой и долготой.
var latlng = DG.latLng(54.98, 82.89);
Все методы, которые принимают объекты LatLng, также принимают широту и долготу в виде простого массива или объекта (если не указано иное), то есть данные записи эквивалентны:
map.panTo([54.98, 82.89]);
map.panTo({lon: 82.89, lat: 54.98});
map.panTo({lat: 54.98, lng: 82.89});
map.panTo(DG.latLng(54.98, 82.89));
Создание
| Конструктор | Описание | 
|---|---|
DG.latLng(
                 | 
            Создает объект, представляющий географическую точку с определенной широтой и долготой (и опционально высотой). | 
DG.latLng(
                 | 
            Ожидает массив вида [Number, Number] или [Number, Number, Number]
                в качестве аргумента. | 
        
DG.latLng(
                 | 
            Ожидает объект вида {lat: Number, lng: Number} или
                {lat: Number, lng: Number, alt: Number} в качестве аргумента. | 
        
Методы
| Метод | Возвращает | Описание | 
|---|---|---|
equals(
                 | 
            Boolean | 
            Возвращает true, если переданная широта и долгота находится в той же позиции
                (с небольшой погрешностью). Погрешность, используемую по умолчанию, можно изменить
                передав аргумент maxMargin. | 
        
toString() | 
            String | 
            Возвращает строковое представление позиции (удобно при отладке). | 
distanceTo(
                 | 
            Number | 
            Возвращает расстояние (в метрах) до переданной широты и долготы, рассчитанное по формуле Haversine. | 
wrap() | 
            LatLng | 
            Возвращает новый объект   | 
        
toBounds(
                 | 
            LatLngBounds | 
            Возвращает новый объект,   | 
        
Свойства
| Свойство | Тип | Описание | 
|---|---|---|
lat | 
            Number | 
            Широта в градусах. | 
lng | 
            Number | 
            Долгота в градусах. | 
alt | 
            Number | 
            Высота в метрах (опционально). | 
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(
                 | 
            Создает объект LatLngBounds, определяя юго-западный и северо-восточный углы прямоугольника. | 
        
DG.latLngBounds(
                 | 
            Создает объект LatLngBounds на основе географических точек,
                которые находятся внутри описываемой области. Удобно использовать, если необходимо подстроить центр
                и масштаб карты с помощью метода fitBounds. | 
        
Методы
| Метод | Возвращает | Описание | 
|---|---|---|
extend(
                 | 
            this | 
            Расширяет область таким образом, чтобы в них входила переданная точка. | 
extend(
                 | 
            this | 
            Расширяет область таким образом, чтобы в них входили переданные границы другой области. | 
pad(
                 | 
            LatLngBounds | 
            Возвращает бо́льшую область, увеличенную на заданный процент в каждом из направлений. | 
getCenter() | 
            LatLng | 
            Возвращает центральную точку области. | 
getSouthWest() | 
            LatLng | 
            Возвращает крайнюю юго-западную точку области. | 
getNorthEast() | 
            LatLng | 
            Возвращает крайнюю северо-восточную точку области. | 
getNorthWest() | 
            LatLng | 
            Возвращает крайнюю северо-западную точку области. | 
getSouthEast() | 
            LatLng | 
            Возвращает крайнюю юго-восточную точку области. | 
getWest() | 
            Number | 
            Возвращает западную границу (долготу) области. | 
getSouth() | 
            Number | 
            Возвращает южную границу (широту) области. | 
getEast() | 
            Number | 
            Возвращает восточную границу (долготу) области. | 
getNorth() | 
            Number | 
            Возвращает северную границу (широту) области. | 
contains(
                 | 
            Boolean | 
            Возвращает true, если область содержит переданные границы. | 
        
contains(
                 | 
            Boolean | 
            Возвращает true, если область содержит переданную точку. | 
        
intersects(
                 | 
            Boolean | 
            Возвращает true, если границы области пересекают переданные границы хотя бы в одной точке. | 
        
overlaps(
                 | 
            Boolean | 
            Возвращает true, если границы области перекрывают переданные границы в некотором пространстве. | 
        
toBBoxString() | 
            String | 
            Возвращает строку с координатами границ в формате 'southwest_lng,southwest_lat,northeast_lng,northeast_lat'.
                Удобно использовать для отправки запросов к веб-сервисам, возвращающим геоданные. | 
        
equals(
                 | 
            Boolean | 
            Возвращает true, если координаты текущей прямоугольной области эквивалентны переданным
                (с небольшой погрешностью). | 
        
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(
                 | 
            Создает объект Point с заданными координатами x и y, при необходимости
                округляя значения (если round установлен в true). | 
        
DG.point(
                 | 
            Ожидает массив вида [x, y]. | 
        
Методы
| Метод | Возвращает | Описание | 
|---|---|---|
clone() | 
            Point | 
            Возвращает копию оригинального объекта. | 
add(
                 | 
            Point | 
            Возвращает результат сложения координат заданной точки и текущей. | 
subtract(
                 | 
            Point | 
            Возвращает результат вычитания координат заданной точки из текущей. | 
divideBy(
                 | 
            Point | 
            Возвращает результат деления координат текущей точки на произвольное число. | 
multiplyBy(
                 | 
            Point | 
            Возвращает результат умножения координат текущей точки на произвольное число. | 
scaleBy(
                 | 
            Point | 
            Возвращает новую точку, каждая координата которой получена умножением на соответствующую координату
                scale. В терминах линейной алгебры, данная операция производит умножение на
                матрицу масштабирования,
                заданную scale. | 
        
unscaleBy(
                 | 
            Point | 
            Обратная операция, относительно scaleBy. | 
        
round() | 
            Point | 
            Возвращает копию оригинального объекта с округленными координатами. | 
floor() | 
            Point | 
            Возвращает копию оригинального объекта с координатами, округленными вниз. | 
ceil() | 
            Point | 
            Возвращает копию оригинального объекта с координатами, округленными вверх. | 
distanceTo(
                 | 
            Number | 
            Возвращает декартово расстояние между текущй и заданной точками. | 
equals(
                 | 
            Boolean | 
            Возвращает true, если заданная точка имеет аналогичные координаты. | 
        
contains(
                 | 
            Boolean | 
            Возвращает true, если обе координаты заданной точки меньше (в абсолютных величинах) координат
                текущей точки. | 
        
toString() | 
            String | 
            Возвращает строковое представление точки (удобно для отладки). | 
Свойства
| Свойство | Тип | Описание | 
|---|---|---|
x | 
            Number | 
            Координата x. | 
y | 
            Number | 
            Координата y. | 
DG.Bounds
Описывает прямоугольную область на карте в пиксельных координатах.
var p1 = DG.point(10, 10),
    p2 = DG.point(40, 60),
    bounds = DG.bounds(p1, p2);
Все методы, которые принимают объекты Point также принимают их в виде простого массива
(если не указано иное), то есть границы могут быть указаны, как в этом примере:
otherBounds.intersects([[10, 10], [40, 60]]);
Создание
| Конструктор | Описание | 
|---|---|
DG.bounds(
                 | 
            Создает объект Bounds на основе переданных координат (обычно, координат левого-верхнего и правого-нижнего углов). | 
DG.bounds(
                 | 
            Создает объект Bounds на основе массива координат переданных точек. | 
Методы
| Метод | Возвращает | Описание | 
|---|---|---|
extend(
                 | 
            this | 
            Расширяет область таким образом, чтобы в нее входила переданная точка. | 
getCenter(
                 | 
            Point | 
            Возвращает центральную точку области. | 
getBottomLeft() | 
            Point | 
            Возвращает координаты левого-нижнего угла области. | 
getTopRight() | 
            Point | 
            Возвращает координаты правого-верхнего угла области. | 
getSize() | 
            Point | 
            Возвращает размер области. | 
contains(
                 | 
            Boolean | 
            Возвращает true, если область содержит переданные границы. | 
        
contains(
                 | 
            Boolean | 
            Возвращает true, если область содержит переданную точку. | 
        
intersects(
                 | 
            Boolean | 
            Возвращает true, если границы области пересекают переданные границы хотя бы в одной точке. | 
        
overlaps(
                 | 
            Boolean | 
            Возвращает true, если границы области перекрывают переданные границы в некотором пространстве. | 
        
Свойства
| Свойство | Тип | Описание | 
|---|---|---|
min | 
            Point | 
            Левый верхний угол прямоугольной области. | 
max | 
            Point | 
            Правый нижний угол прямоугольной области. |