Вспомогательные классы

DG.Browser

Объект со статическими свойствами, описывающими браузер пользователя, например:

if (DG.Browser.ie6) {
    alert('Вам срочно нужно обновить свой браузер!');
}

Свойства

Свойство Тип Описание
ie Boolean true для всех версий Internet Explorer (не Edge).
ielt9 Boolean true для всех версий Internet Explorer ниже версии 9.
edge Boolean true для браузера Edge.
webkit Boolean true для браузеров на основе WebKit, таких как Chrome и Safari (включая мобильные версии).
gecko Boolean true для браузеров на основе gecko, таких как Firefox.
android Boolean true для мобильных браузеров работающих на базе платформы Android.
android23 Boolean true для мобильных браузеров на старых версиях Android устройств (2 и 3).
chrome Boolean true для браузера Chrome.
safari Boolean true для браузера Safari.
ie3d Boolean true для всех версий Internet Explorer, поддерживающих CSS transform.
webkit3d Boolean true для всех браузеров на основе WebKit, поддерживающих CSS transform.
gecko3d Boolean true для всех браузеров на основе gecko, поддерживающих CSS transform.
opera12 Boolean true для всех версий Opera, поддерживающих CSS transform (версия 12+).
any3d Boolean true для всех браузеров, поддерживающих CSS transform.
mobile Boolean true для браузеров, работающих на современных мобильных устройствах.
mobileWebkit Boolean true для мобильных браузеров на основе WebKit.
mobileWebkit3d Boolean true для мобильных браузеров на основе WebKit, поддерживающих CSS transform.
mobileOpera Boolean true для мобильной версии Opera.
mobileGecko Boolean true для мобильных браузеров на основе gecko.
touch Boolean true для всех браузеров, поддерживающих touch events.
msPointer Boolean true для браузеров, поддерживающих touch events модель от Microsoft (например, IE10).
pointer Boolean true для всех браузеров, поддерживающих pointer events.
retina Boolean true для браузеров, работающих на устройствах с Retina экраном.
canvas Boolean true для браузеров, поддерживающих <canvas>.
vml Boolean true для браузеров, поддерживающих VML.
svg Boolean true для браузеров, поддерживающих SVG.

DG.Util

Общие служебные методы и свойства.

Функции

Функция Возвращает Описание
extend( <Object> dest, <Object> src? ) Object Объединяет свойства объекта src (или нескольких объектов) и свойства объекта dest и возвращает последний. Также доступен под псевдонимом DG.extend.
create( <Object> proto, <Object> properties? ) Object Полифил для Object.create
bind( <Function> fn, ) Function Возвращает функцию, которая выполняет функцию fn с определенным объектом контекста obj (так, чтобы ключевое слово this внутри функции указывало на obj). Также доступно под псевдонимом DG.bind.
stamp( <Object> obj ) Number Возвращает уникальный ID объекта, создавая его при необходимости. Полезно для получения быстрого доступа к объекту, находящемуся в группе.
throttle( <Function> fn, <Number> time, <Object> context ) Function Возвращает обертку над функцией fn, которая гарантирует, что функция не будет вызвана более чем один раз в заданный интервал времени time (например, используется при запросах к тайлам во время перетаскивания карты), опционально можно передать контекст (context), с которым будет вызываться функция.
wrapNum( <Number> num, <Number[]> range, <Boolean> includeMax? ) Number Возвращает число num приведенное к диапазону range (modulo). Получившееся значение будет всегда меньше range[1], если только опция includeMax не выставлена в true.
falseFn() Function Возвращает функцию, вызов которой всегда будет давать результат false.
formatNum( <Number> num, <Number> digits? ) Number Возвращает число num, округленное до digits десятичных знаков (5 знаков по умолчанию).
trim( <String> str ) String Полифил для String.prototype.trim
splitWords( <String> str ) String[] Обрезает и разделяет строку на части, используя в качестве разделителя пробел, возвращает массив с этими частями.
setOptions( <Object: options: Object> obj ) Object Объединяет свойства options со свойствами объекта obj, возвращая получившийся объект. См. Class options. Также доступен под псевдонимом DG.setOptions.
getParamString( <Object> obj, <String> existingUrl?, <Boolean> uppercase? ) String Преобразует объект в URL-строку, например, {a: "foo", b: "bar"} будет преобразован в '?a=foo&b=bar'. Если задан параметр existingUrl результирующая строка будет подготовлена для добавления в конец переданного URL. Также возможно приведение названий свойств к верхнему регистру (параметр uppercase). Простейший шаблонизатор также воспринимает строки в формате 'Hello {a}, {b}' и объект вида {a: 'foo', b: 'bar'}. При таком вызове метод возвращает строку ('Hello foo, bar').
isArray(obj) Boolean Полифил для Array.isArray
indexOf() Number Полифил для Array.prototype.indexOf
requestAnimFrame( <Function> fn, <Object> context?, <Boolean> immediate? ) requestId: Number Использует планировщик для вызова функции fn при событии обновлении окна браузера (repaint). Функция fn вызывается с контекстом context, если он задан. Когда задан параметр immediate, fn функция вызывается сразу же, если браузер не поддерживает нативно window.requestAnimationFrame, в противном случае вызов откладывается, до возникновения события перерисовки. Возвращает id, который может быть использован для отмены задания планировщика.
cancelAnimFrame( <Number> id ) Отменяет предыдущий requestAnimFrame. См. также window.cancelAnimationFrame.

Свойства

Свойство Тип Описание
lastId Number Последний уникальный ID, используемый stamp()
emptyImageUrl String URI, содержащий пустое GIF изображение, закодированное в base64. Используется для освобождения памяти неиспользуемых картинок в мобильных WebKit браузерах (память освобождается установкой свойства src в данное значение).

DG.LineUtil

Набор методов для обработки ломаных.

Функции

Функция Возвращает Описание
simplify( <Point[]> points, <Number> tolerance ) Point[] Уменьшает количество точек в ломаной и возвращает новую упрощенную ломаную. Позволяет увеличить производительность обработки/отображения ломаных на карте. Параметр tolerance влияет на величину упрощения (чем меньше значение, тем лучше качество геометрии и ниже производительность).
pointToSegmentDistance( <Point> p, <Point> p1, <Point> p2 ) Number Возвращает расстояние между точкой p и сегментом между точками p1 и p2.
closestPointOnSegment( <Point> p, <Point> p1, <Point> p2 ) Number Возвращает ближайшую точку на сегменте p1 p2 до точки p.

DG.PolyUtil

Набор служебных функций для работы с многоугольниками.

Функции

Функция Возвращает Описание
clipPolygon( <Point[]> points, <Bounds> bounds, <Boolean> round? ) Point[] Обрезает многоугольник, заданный координатами points по заданным границам (используя алгоритм Sutherland-Hodgemanа).