Базовые классы
- Введение
- Класс DG.Point
- Класс DG.Size
- Класс DG.GeoPoint
- Класс DG.Bounds
- Конструктор
- Методы
- Получить левую верхнюю вершину границы
- Получить левую нижнюю вершину границы
- Получить правую верхнюю вершину границы
- Получить правую нижнюю вершину границы
- Проверить принадлежность точки границе
- Проверить пересечение границ
- Получить долготу левой границы
- Получить долготу правой границы
- Получить широту верхней границы
- Получить широту нижней границы
- Получить копию обьекта DG.Bounds
- Класс DG.CollectionBounds
- Класс DG.Converter
- DG.Cursor
Введение
Описаны базовые классы, которые часто встречаются на страницах руководства API карт и необходимы для работы с многими объектами карты.
Класс DG.Point
Определяет x, y-координаты точки в единицах измерения, пикселях. Для наглядности допустим, что myPoint
— объект класса DG.Point
.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
x | Number | Да | Координата точки по оси x в пикселях. |
y | Number | Да | Координата точки по оси y в пикселях. |
Пример:
var myPoint = new DG.Point(20, 30);
Методы
Создать копию точки
myPoint.clone()Возвращает:
Тип | Описание |
---|---|
DG.Point | Новый экземпляр класса DG.Point с такими же координатами, как и у исходной точки myPoint . |
Необходимость данного метода связана с тем, что объекты в Javascript передаются «по ссылке», а не «по значению».
Класс DG.Size
Определяет ширину и высоту некой прямоугольной области в пикселях. Для наглядности допустим, что mySize
— объект класса DG.Size
.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
width | Number | Да | Ширина прямоугольной области в пикселях. |
height | Number | Да | Высота прямоугольной области в пикселях. |
Пример:
var mySize = new DG.Size(20, 40)
Свойства
Имя | Тип | Описание |
---|---|---|
width | Number | Ширина прямоугольной области в пикселях. |
height | Number | Высота прямоугольной области в пикселях. |
Методы
Установить размер DOM-элемента
mySize.apply(controlDiv)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
controlDiv | DOMElement | Да | Произвольный DOM-элемент. |
Устанавливает css-свойства width
и height
произвольного DOM-элемента. Значения этих свойств соответствуют ширине и высоте, заданных у объекта mySize
.
Класс DG.GeoPoint
Определяет географические координаты точки. Для наглядности допустим, что myGeoPoint
— объект класса DG.GeoPoint
.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
lon | Number | Да | Долгота точки. |
lat | Number | Да | Широта точки. |
Пример:
var myGeoPoint = new DG.GeoPoint(82.927810142519, 55.028936234826);
В результате получим географическую точку с координатами Новосибирска.
Свойства
Имя | Тип | Описание |
---|---|---|
lon | Number | Долгота точки. |
lat | Number | Широта точки. |
Методы
Получить долготу точки
myGeoPoint.getLon()Возвращает:
Тип | Описание |
---|---|
Number | Долгота точки. |
Получить широту точки
myGeoPoint.getLat()Возвращает:
Тип | Описание |
---|---|
Number | Широта точки. |
Установить долготу точки
myGeoPoint.setLon(lon)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
lon | Number | Да | Долгота точки. |
Установить широту точки
myGeoPoint.setLat(lat)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
lat | Number | Да | Широта точки. |
Создать копию точки
myGeoPoint.clone()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Новый экземпляр класса DG.GeoPoint с такими же координатами, как и у исходной точки myGeoPoint |
Необходимость данного метода связана с тем, что объекты в Javascript передаются «по ссылке», а не «по значению».
Сравнить точки
myGeoPoint.equals(geoPoint, accuracy)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
geoPoint | DG.GeoPoint | Да | Экземпляр класса DG.GeoPoint . Точка с которой будет сравниваться текущая точка myGeoPoint . |
accuracy | Number | Нет | Точность сравнения точек. Устанавливает количество знаков после запятой, по которым будет производится сравнение координат точек. Если параметр не задан, происходит сравнение с максимальной точностью. |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает true , если точки одинаковы. В противном случае — false . |
Класс DG.Bounds
Данный класс определяет прямоугольную область на карте с двумя фиксированными диагональными точками: левая нижняя вершина и правая верхняя вершина. Причем, эти точки задаются в географических координатах. Для наглядности допустим, что myBounds
— объект класса DG.Bounds
.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
leftBottom | DG.GeoPoint | Да | Географическая точка. Левая нижняя вершина прямоугольника, описывающего границы объекта. |
rightTop | DG.GeoPoint | Да | Географическая точка. Правая верхняя вершина прямоугольника, описывающего границы объекта. |
Пример:
var leftBottom = new DG.GeoPoint(82.927810142519, 55.028936234826);
var rightTop = new DG.GeoPoint(84.986995054343, 56.127329943346);
var myBounds = new DG.Bounds(leftBottom, rightTop);
Методы
Получить левую верхнюю вершину границы
myBounds.getLeftTop()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение левой верхней вершины границы. |
Получить левую нижнюю вершину границы
myBounds.getLeftBottom()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение левой нижней вершины границы. |
Получить правую верхнюю вершину границы
myBounds.getRightTop()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение левой верхней вершины границы. |
Получить правую нижнюю вершину границы
myBounds.getRightBottom()Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Географическое положение левой нижней вершины границы. |
Проверить принадлежность точки границе
myBounds.contains(point)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.GeoPoint | Да | Географическое положение точки. |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает true , если точка принадлежит границе. В противном случае — false . |
Проверить пересечение границ
myBounds.intersects(bounds)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
bounds | DG.Bounds | Да | Объект DG.Bounds . Границы объекта |
Возвращает:
Тип | Описание |
---|---|
Boolean | Возвращает true , если границы пересекаются. В противном случае — false . |
Получить долготу левой границы
myBounds.getLeft()Возвращает:
Тип | Описание |
---|---|
Number | Долгота. |
Получить долготу правой границы
myBounds.getRight()Возвращает:
Тип | Описание |
---|---|
Number | Долгота. |
Получить широту верхней границы
myBounds.getTop()Возвращает:
Тип | Описание |
---|---|
Number | Широта. |
Получить широту нижней границы
myBounds.getBottom()Возвращает:
Тип | Описание |
---|---|
Number | Широта. |
Получить копию обьекта DG.Bounds
myBounds.clone()Возвращает:
Тип | Описание |
---|---|
DG.Bounds | Объект DG.Bounds . Границы объекта |
Класс DG.CollectionBounds
Данный класс наследует DG.Bounds
, но в отличие от него принимает в конструкторе массив из точек, что позволяет, например, отцентрировать положение карты по всем имеющимся маркерам или балунам так, чтобы они попали в видимую область. Коллекция может быть пустой.
Конструктор
Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
points | Array | Нет | Массив точек (DG.GeoPoint ), по которым выстраивается граница. |
Пример:
var point1 = new DG.GeoPoint(82.927810142519, 55.028936234826);
var point2 = new DG.GeoPoint(84.986995054343, 56.127329943346);
var point3 = new DG.GeoPoint(85.657675543453, 57.647852427445);
var myBounds = new DG.CollectionBounds([point1, point2, point3]);
Методы
Добавить точку в границы
collectionBounds.addPoint(point)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.GeoPoint | Да | Точка, которая будет добавлена. |
Удалить точу из границ
collectionBounds.removePoint(point)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.GeoPoint | Да | Точка, которая будет удалена. |
Удалить все точки из границ
collectionBounds.clear()Класс DG.Converter
Данный класс содержит методы для преобразования координат одного типа в другой. Объект класса DG.Converter
существует в единственном экземпляре для каждой карты и доступен в объекте карты.
Пример:
myMap = new DG.Map('map');
var mapCenter = new DG.GeoPoint(82.927810142519,55.028936234826);
myMap.setCenter(mapCenter);
myMap.setZoom(16);
// Узнать географические координаты точки с пиксельными координатами 20,20;
var geoPoint = myMap.converter.mapPixelsToCoordinates(new DG.Point(20,20));
// Узнать пиксельные координаты центра карты;
var mapPoint = myMap.converter.coordinatesToMapPixels(mapCenter);
Методы
Преобразовать пиксель на карте в географическую координату
myMap.converter.mapPixelsToCoordinates(point)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
point | DG.Point | Да | Точка на карте, которая будет преобразована. |
Возвращает:
Тип | Описание |
---|---|
DG.GeoPoint | Объект DG.GeoPoint . Соответствующая географическая координата, соответствующая точке на карте. |
Преобразовать географическую координату в пиксель на карте
myMap.converter.coordinatesToMapPixels(geopoint)Параметры:
Имя | Тип | Обязательный | Описание |
---|---|---|---|
geopoint | DG.GeoPoint | Да | Географическая точка, которая будет преобразована. |
Возвращает:
Тип | Описание |
---|---|
DG.Point | Объект DG.Point . Точка на карте, соответствующая географической координате. |
DG.Cursor
Класс DG.Cursor
является статическим и хранит в себе константы, которые необходимы для смены курсоров.
Константы
Имя | Описание |
---|---|
ARROW | Курсор-стрелка. |
CROSSHAIR | Курсор в виде перекрестия. |
HELP | Вопросительный курсор. |
INHERIT | Унаследованный курсор. |
MOVE | Курсор в виде четырех стрелок. |
POINTER | Курсор в виде указательного пальца. |
Методы
Установить курсор
Для установки курсора используется метод карты addCursor(cursorType)
, который подробно описан в разделе Карта.
Удалить курсор
Для удаления курсора используется метод карты removeCursor(cursorType)
, который подробно описан в разделе Карта.