Перейти к основному содержимому

utils

DG.Browser

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

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

Свойства

СвойствоТипОписание
ieBooleantrue для всех версий Internet Explorer (не Edge).
ielt9Booleantrue для всех версий Internet Explorer ниже версии 9.
edgeBooleantrue для браузера Edge.
webkitBooleantrue для браузеров на основе WebKit, таких как Chrome и Safari (включая мобильные версии).
geckoBooleantrue для браузеров на основе gecko, таких как Firefox.
androidBooleantrue для мобильных браузеров работающих на базе платформы Android.
android23Booleantrue для мобильных браузеров на старых версиях Android устройств (2 и 3).
chromeBooleantrue для браузера Chrome.
safariBooleantrue для браузера Safari.
ie3dBooleantrue для всех версий Internet Explorer, поддерживающих CSS transform.
webkit3dBooleantrue для всех браузеров на основе WebKit, поддерживающих CSS transform.
gecko3dBooleantrue для всех браузеров на основе gecko, поддерживающих CSS transform.
opera12Booleantrue для всех версий Opera, поддерживающих CSS transform (версия 12+).
any3dBooleantrue для всех браузеров, поддерживающих CSS transform.
mobileBooleantrue для браузеров, работающих на современных мобильных устройствах.
mobileWebkitBooleantrue для мобильных браузеров на основе WebKit.
mobileWebkit3dBooleantrue для мобильных браузеров на основе WebKit, поддерживающих CSS transform.
mobileOperaBooleantrue для мобильной версии Opera.
mobileGeckoBooleantrue для мобильных браузеров на основе gecko.
touchBooleantrue для всех браузеров, поддерживающих touch events.
msPointerBooleantrue для браузеров, поддерживающих touch events модель от Microsoft (например, IE10).
pointerBooleantrue для всех браузеров, поддерживающих pointer events.
retinaBooleantrue для браузеров, работающих на устройствах с Retina экраном.
canvasBooleantrue для браузеров, поддерживающих <canvas>.
vmlBooleantrue для браузеров, поддерживающих VML.
svgBooleantrue для браузеров, поддерживающих 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.

Свойства

СвойствоТипОписание
lastIdNumberПоследний уникальный ID, используемый stamp()
emptyImageUrlStringURI, содержащий пустое 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а).