2gis-maps
Version:
Interactive 2GIS maps API, based on Leaflet
745 lines (644 loc) • 36.9 kB
Markdown
## Дополнительные слои
{toc}
### DG.LayerGroup
Используется для группировки нескольких слоев, чтобы обрабатывать их как один. При добавлении
группового слоя на карту, все другие слои, добавляемые и удаляемые из группы, также будут
добавлены или удалены с карты. Расширяет <a href="/doc/maps/ru/manual/base-classes#dglayer"><code>DG.Layer</code></a>.
DG.layerGroup([marker1, marker2])
.addLayer(polyline)
.addTo(map);
#### Создание
<table>
<thead>
<tr>
<th>Конструктор</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="layergroup-l-layergroup">
<td><code><b>DG.layerGroup</b>(
<nobr><Layer[]> <i>layers</i> )</nobr>
</code></td>
<td>Создает объект группы, принимает начальный набор слоев для группировки (опционально).</td>
</tr>
</tbody>
</table>
#### Опции
Опции, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include options -->
#### События
События, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include events -->
#### Методы
<table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="layergroup-togeojson">
<td><code><b>toGeoJSON</b>()</code></td>
<td><code>Object</code></td>
<td>Возвращает <a href="http://en.wikipedia.org/wiki/GeoJSON">
<code>GeoJSON</code></a> объект, описывающий группу слоев, как <code>GeometryCollection</code>.</td>
</tr>
<tr id="layergroup-addlayer">
<td><code><b>addLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Добавляет указанный слой в группу.</td>
</tr>
<tr id="layergroup-removelayer">
<td><code><b>removeLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Удаляет указанный слой из группы.</td>
</tr>
<tr>
<td><code><b>removeLayer</b>(
<nobr><Number> <i>id</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Удаляет из группы слой, с указанным ID.</td>
</tr>
<tr id="layergroup-haslayer">
<td><code><b>hasLayer</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i> )</nobr>
</code></td>
<td><code>Boolean</code></td>
<td>Возвращает <code>true</code>, если указанный слой уже добавлен в группу.</td>
</tr>
<tr id="layergroup-clearlayers">
<td><code><b>clearLayers</b>()</code></td>
<td><code>this</code></td>
<td>Удаляет все слои из группы.</td>
</tr>
<tr id="layergroup-invoke">
<td><code><b>invoke</b>(
<nobr><string> <i>methodName</i>, <i>…</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Вызывает метод <code>methodName</code> у каждого слоя из группы. Возможна передача
дополнительных параметров. Пропускает слои, у которых не реализован <code>methodName</code>.</td>
</tr>
<tr id="layergroup-eachlayer">
<td><code><b>eachLayer</b>(
<nobr><Function> <i>fn</i>,</nobr>
<nobr><Object> <i>context?</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Итерационно обходит все слои группы. Возможна передача контекстного объекта в функцию итератор.
<code class="lang-js">group.eachLayer(function (layer) {
layer.bindPopup('Hello');
});</code></td>
</tr>
<tr id="layergroup-getlayer">
<td><code><b>getLayer</b>(
<nobr><Number> <i>id</i> )</nobr>
</code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a></code></td>
<td>Возвращает слой с указанным ID.</td>
</tr>
<tr id="layergroup-getlayers">
<td><code><b>getLayers</b>()</code></td>
<td><code>Layer[]</code></td>
<td>Возвращает массив всех слоев группы.</td>
</tr>
<tr id="layergroup-setzindex">
<td><code><b>setZIndex</b>(
<nobr><Number> <i>zIndex</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Вызывает метод <code>setZIndex</code> у каждого слоя из группы, передавая аргумент z-index.</td>
</tr>
<tr id="layergroup-getlayerid">
<td><code><b>getLayerId</b>(
<nobr><<a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a>> <i>layer</i> )</nobr>
</code></td>
<td><code>Number</code></td>
<td>Возвращает ID для указанного слоя.</td>
</tr>
</tbody>
</table>
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dgevented">Evented</a> <!-- TODO: include methods -->
### DG.FeatureGroup
Расширяет <a href="#dglayergroup"><code>DG.LayerGroup</code></a>, добавляя обработку событий мыши
(получаемых от членов группы) и общий метод bindPopup.
DG.featureGroup([marker1, marker2, polyline])
.bindPopup('Привет, Мир!')
.on('click', function() { alert('Вы щелкнули по группе!'); })
.addTo(map);
#### Создание
<table>
<thead>
<tr>
<th>Конструктор</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="featuregroup-l-featuregroup">
<td><code><b>DG.featureGroup</b>(
<nobr><Layer[]> <i>layers</i> )</nobr>
</code></td>
<td>Создает объект группы, принимает начальный набор слоев для группировки (опционально).</td>
</tr>
</tbody>
</table>
#### Опции
Опции, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include options -->
#### События
События, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include events -->
#### Методы
<table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="featuregroup-setstyle">
<td><code><b>setStyle</b>(
<nobr><<a href="/doc/maps/ru/manual/vector-layers#dgpath-options">Path options</a>> <i>style</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Устанавливает указанные опции векторного объекта для каждого слоя из группы, у которого реализован
метод <code>setStyle</code>.</td>
</tr>
<tr id="featuregroup-bringtofront">
<td><code><b>bringToFront</b>()</code></td>
<td><code>this</code></td>
<td>Позиционирует слой группы поверх остальных слоев.</td>
</tr>
<tr id="featuregroup-bringtoback">
<td><code><b>bringToBack</b>()</code></td>
<td><code>this</code></td>
<td>Позиционирует слой группы под остальными слоями.</td>
</tr>
<tr id="featuregroup-getbounds">
<td><code><b>getBounds</b>()</code></td>
<td><code><a href="/doc/maps/ru/manual/basic-types#dglatlngbounds">LatLngBounds</a></code></td>
<td>Возвращает прямоугольные границы LatLngBounds объекта Feature Group (для корректной работы метода
слои в группе должны возвращать подобную информацию о себе).</td>
</tr>
</tbody>
</table>
Методы, унаследованные от <a href="#dglayergroup">LayerGroup</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dgevented">Evented</a> <!-- TODO: include methods -->
### DG.GeoJSON
Описывает объект GeoJSON или массив объектов GeoJSON. Позволяет корректно интерпретировать данные
GeoJSON и отобразить их на карте. Расширяет <a href="#dgfeaturegroup"><code>DG.FeatureGroup</code></a>.
DG.geoJson(data, {
style: function (feature) {
return {color: feature.properties.color};
}
}).bindPopup(function (layer) {
return layer.feature.properties.description;
}).addTo(map);
#### Создание
<table>
<thead>
<tr>
<th>Конструктор</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="geojson-l-geojson">
<td><code><b>DG.geoJSON</b>(
<nobr><Object> <i>geojson?</i>,</nobr>
<nobr><<a href="#geojson-option">GeoJSON options</a>> <i>options?</i> )</nobr>
</code></td>
<td>Создает слой GeoJSON. Опционально принимает объект в формате
<a href="http://geojson.org/geojson-spec.html">GeoJSON</a> (возможна передача этого объекта позже,
используя метод <code>addData</code>) и объект с <code>опциями</code>.</td>
</tr>
</tbody>
</table>
#### Опции
<table id="geojson-option">
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>Значение<br>по умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="geojson-pointtolayer">
<td><code><b>pointToLayer</b></code></td>
<td><code>Function </code></td>
<td><code>*</code></td>
<td><code>Функция</code>, определяющая, как точки GeoJSON будут создавать слои API карт.
API карт вызывает метод, если он реализован, передавая объекты точек GeoJSON и
<a href="/doc/maps/ru/manual/basic-types#dglatlng"><code>LatLng</code></a>.
По умолчанию, будут создаваться обычные <a href="/doc/maps/ru/manual/markers#dgmarker"><code>Маркеры</code></a>:
<code class="lang-js">function(geoJsonPoint, latlng) {
return DG.marker(latlng);
}
</code></td>
</tr>
<tr id="geojson-style">
<td><code><b>style</b></code></td>
<td><code>Function </code></td>
<td><code>*</code></td>
<td><code>Функция</code>, определяющая
<a href="/doc/maps/ru/manual/vector-layers#dgpath-options"><code>Path options</code></a>
для стилизации отображения GeoJSON линий и полигонов. API карт вызывает метод, если он реализован,
при каждом добавлении данных. По умолчанию, стили никак не изменяются:
<code class="lang-js">function (geoJsonFeature) {
return {}
}
</code></td>
</tr>
<tr id="geojson-oneachfeature">
<td><code><b>onEachFeature</b></code></td>
<td><code>Function </code></td>
<td><code>*</code></td>
<td><code>Функция</code>, которая будет вызвана после каждого создания и стилизации нового
<a href="/doc/maps/ru/manual/base-classes#dglayer"><code>слоя</code></a>.
Удобно использовать для подключения обработчиков событий и попапов.
По умолчанию, никаких дополнительных действий не происходит:
<code class="lang-js">function (layer) {}
</code></td>
</tr>
<tr id="geojson-filter">
<td><code><b>filter</b></code></td>
<td><code>Function </code></td>
<td><code>*</code></td>
<td><code>Функция</code>, которая определяет, должен ли отображаться указанный объект или нет.
По умолчанию, отображаются все объекты:
<code class="lang-js">function (geoJsonFeature) {
return true;
}
</code></td>
</tr>
<tr id="geojson-coordstolatlng">
<td><code><b>coordsToLatLng</b></code></td>
<td><code>Function </code></td>
<td><code>*</code></td>
<td><code>Функция</code>, которая будет использоваться для преобразования координат GeoJSON
в координаты <a href="/doc/maps/ru/manual/basic-types#dglatlng"><code>LatLng</code></a>s.
По умолчанию будет использован статический метод <code>coordsToLatLng</code>.</td>
</tr>
</tbody>
</table>
Опции, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include options -->
#### События
События, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include events -->
#### Методы
Методы, унаследованные от <a href="#dgfeaturegroup">FeatureGroup</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="#dglayergroup">LayerGroup</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dgevented">Evented</a> <!-- TODO: include methods -->
#### Статические функции
Есть несколько статических функций, которые можно использовать без создания экземпляров класса DG.GeoJSON:
<table>
<thead>
<tr>
<th>Функция</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="geojson-geometrytolayer">
<td><code><b>geometryToLayer</b>(
<nobr><Object> <i>featureData</i>,</nobr>
<nobr><<a href="#geojson-option">GeoJSON options</a>> <i>options?</i> )</nobr>
</code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a></code></td>
<td>Создает <a href="/doc/maps/ru/manual/base-classes#dglayer"><code>Слой</code></a> на основе переданного
GeoJSON объекта. Может использовать собственные функции <a href="#geojson-pointtolayer"><code>pointToLayer</code></a>
и/или <a href="#geojson-coordstolatlng"><code>coordsToLatLng</code></a>, если они переданы в объекте опций.</td>
</tr>
<tr id="geojson-coordstolatlng">
<td><code><b>coordsToLatLng</b>(
<nobr><Array> <i>coords</i> )</nobr>
</code></td>
<td><code><a href="/doc/maps/ru/manual/basic-types#dglatlng">LatLng</a></code></td>
<td>Создает объект <a href="/doc/maps/ru/manual/basic-types#dglatlng"><code>LatLng</code></a> из массива
двух чисел, переданных в формате (longitude, latitude), или трех чисел, в формате (longitude, latitude, altitude),
которые используются в GeoJSON для представления точек.</td>
</tr>
<tr>
<td><code><b>coordsToLatLngs</b>(
<nobr><Array> <i>coords</i>,</nobr>
<nobr><Number> <i>levelsDeep?</i>,</nobr>
<nobr><Function> <i>coordsToLatLng?</i> )</nobr>
</code></td>
<td><code>Array</code></td>
<td>Создает многомерный массив объектов <a href="/doc/maps/ru/manual/basic-types#dglatlng"><code>LatLng</code></a>
из массива GeoJSON координат. <code>levelsDeep</code> определяет уровень вложенности (0 для массива точек,
1 для массива массивов точек, и т.д., по умолчанию 0). Может использовать собственную функцию
<a href="#geojson-coordstolatlng"><code>coordsToLatLng</code></a> для преобразования.</td>
</tr>
<tr id="geojson-latlngtocoords">
<td><code><b>latLngToCoords</b>(
<nobr><<a href="/doc/maps/ru/manual/basic-types#dglatlng">LatLng</a>> <i>latlng</i> )</nobr>
</code></td>
<td><code>Array</code></td>
<td>Обратная операция для <a href="#geojson-coordstolatlng"><code>coordsToLatLng</code></a></td>
</tr>
<tr id="geojson-latlngstocoords">
<td><code><b>latLngsToCoords</b>(
<nobr><Array> <i>latlngs</i>,</nobr>
<nobr><Number> <i>levelsDeep?</i>,</nobr>
<nobr><Boolean> <i>closed?</i> )</nobr>
</code></td>
<td><code>Array</code></td>
<td>Обратная операция для <a href="#geojson-coordstolatlngs"><code>coordsToLatLngs</code></a>
Опция <code>closed</code> определяет, нужно ли добавлять первую точку в конец массива и используется
только в случае, если <code>levelsDeep</code> равен 0.</td>
</tr>
<tr id="geojson-asfeature">
<td><code><b>asFeature</b>(
<nobr><Object> <i>geojson</i> )</nobr>
</code></td>
<td><code>Object</code></td>
<td>Нормализует геометрические примитивы GeoJSON в объекты GeoJSON.</td>
</tr>
</tbody>
</table>
### DG.GridLayer
Универсальный класс для обработки тайловой сетки из HTML элементов. Это базовый класс, от которого наследуются
все тайловые слои. Поддерживает создание, анимацию и другие действия с элементами, представляющими тайл, такими
как <code><canvas></code>, <code><img></code> или <code><div></code>.
#### Использование в синхронном коде
Для того, чтобы создать собственный слой, нужно произвести наследование от GridLayer и реализовать метод
<code>create()</code>, которому будет передан объект <a href="/doc/maps/ru/manual/basic-types#dgpoint"><code>Point</code></a>
с <code>x</code>, <code>y</code> и <code>z</code> (уровень увеличения) координатами для отображения тайла.
var CanvasLayer = DG.GridLayer.extend({
createTile: function(coords){
// создаем элемент <canvas>
var tile = DG.DomUtil.create('canvas', 'leaflet-tile');
// устанавливаем размер тайла
var size = this.getTileSize();
tile.width = size.x;
tile.height = size.y;
// получаем объект контекста и рисуем что-нибудь на нем, используя coords.x, coords.y и coords.z
var ctx = canvas.getContext('2d');
// возвращаем получившийся объект, чтобы его можно было отобразить на экране
return tile;
}
});
#### Использование в асинхронном коде
Создавать объекты тайлов можно и асинхронно. Когда объект тайла полностью создан, его можно вернуть в API карт,
используя функцию обратного вызова done().
var CanvasLayer = DG.GridLayer.extend({
createTile: function(coords, done){
var error;
// создаем элемент <canvas>
var tile = DG.DomUtil.create('canvas', 'leaflet-tile');
// устанавливаем размер тайла
var size = this.getTileSize();
tile.width = size.x;
tile.height = size.y;
// рисуем что-нибудь и возвращаем итоговый тайл, используя функцию обратного вызова done()
done(error, tile);
}
});
#### Создание
<table>
<thead>
<tr>
<th>Конструктор</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="gridlayer-l-gridlayer">
<td><code><b>DG.gridLayer</b>(
<nobr><GridLayer options> <i>options?</i> )</nobr>
</code></td>
<td>Создает новый объект GridLayer.</td>
</tr>
</tbody>
</table>
#### Опции
<table id='gridlayer-options'>
<thead>
<tr>
<th>Опция</th>
<th>Тип</th>
<th>Значение<br>по умолчанию</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="gridlayer-tilesize">
<td><code><b>tileSize</b></code></td>
<td><code>Number|Point </code></td>
<td><code>256</code></td>
<td>Ширина и высота тайлов. Используйте число, если ширина и высота одинаковые,
или объект <code>DG.point(ширина, высота)</code> в противном случае.</td>
</tr>
<tr id="gridlayer-opacity">
<td><code><b>opacity</b></code></td>
<td><code>Number </code></td>
<td><code>1.0</code></td>
<td>Уровень полупрозрачности тайлов. Может использоваться в функции <code>createTile()</code>.</td>
</tr>
<tr id="gridlayer-updatewhenidle">
<td><code><b>updateWhenIdle</b></code></td>
<td><code>Boolean </code></td>
<td><code>depends</code></td>
<td>Если значение <code>false</code>, новые тайлы подгружаются в процессе перемещения карты, в противном случае,
только после окончания перемещения карты по экрану (можно использовать для лучшей производительности).
<code>true</code> по умолчанию на мобильных устройствах, и <code>false</code> в остальных случаях.</td>
</tr>
<tr id="gridlayer-updateinterval">
<td><code><b>updateInterval</b></code></td>
<td><code>Number </code></td>
<td><code>200</code></td>
<td>Тайлы не будут обновляться чаще, чем раз в <code>updateInterval</code> миллисекунд.</td>
</tr>
<tr id="gridlayer-attribution">
<td><code><b>attribution</b></code></td>
<td><code>String </code></td>
<td><code>null</code></td>
<td>Информация, которая будет отображаться в строке об авторстве, например "© 2GIS".</td>
</tr>
<tr id="gridlayer-zindex">
<td><code><b>zIndex</b></code></td>
<td><code>Number </code></td>
<td><code>1</code></td>
<td>zIndex для тайлового слоя.</td>
</tr>
<tr id="gridlayer-bounds">
<td><code><b>bounds</b></code></td>
<td><code>LatLngBounds </code></td>
<td><code>undefined</code></td>
<td>Если задан, тайлы будут загружаться только для указанного региона, заданного
<a href="/doc/maps/ru/manual/basic-types#dglatlngbounds"><code>LatLngBounds</code></a>.</td>
</tr>
<tr id="gridlayer-minzoom">
<td><code><b>minZoom</b></code></td>
<td><code>Number </code></td>
<td><code>0</code></td>
<td>Минимальный уровень масштабирования, при котором будут загружаться тайлы. По умолчанию - вся карта.</td>
</tr>
<tr id="gridlayer-maxzoom">
<td><code><b>maxZoom</b></code></td>
<td><code>Number </code></td>
<td><code>undefined</code></td>
<td>Максимальный уровень масштабирования, при котором будут загружаться тайлы. По умолчанию не задан.</td>
</tr>
<tr id="gridlayer-nowrap">
<td><code><b>noWrap</b></code></td>
<td><code>Boolean </code></td>
<td><code>false</code></td>
<td>Будет ли зацикливаться отображение слоя при малом масштабе. Если параметр <code>true</code>, слой
будет отображен только один раз.</td>
</tr>
<tr id="gridlayer-pane">
<td><code><b>pane</b></code></td>
<td><code>String </code></td>
<td><code>'tilePane'</code></td>
<td><code>Панель карты</code>, на которую будет добавлен слой.</td>
</tr>
</tbody>
</table>
#### События
<table id='gridlayer-events'>
<thead>
<tr>
<th>Событие</th>
<th>Данные</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="gridlayer-loading">
<td><code><b>loading</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#event">Event</a></code></td>
<td>Возникает, когда GridLayer начинает загружать тайлы.</td>
</tr>
<tr id="gridlayer-tileunload">
<td><code><b>tileunload</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#tileevent">TileEvent</a></code></td>
<td>Возникает, когда тайл удаляется с карты (например, при выходе его за пределы экрана).</td>
</tr>
<tr id="gridlayer-tileloadstart">
<td><code><b>tileloadstart</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#tileevent">TileEvent</a></code></td>
<td>Возникает, когда запрашивается тайл.</td>
</tr>
<tr id="gridlayer-tileerror">
<td><code><b>tileerror</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#tileevent">TileEvent</a></code></td>
<td>Возникает при ошибке загрузки тайла.</td>
</tr>
<tr id="gridlayer-tileload">
<td><code><b>tileload</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#tileevent">TileEvent</a></code></td>
<td>Возникает, когда тайл загружен.</td>
</tr>
<tr id="gridlayer-load">
<td><code><b>load</b></code></td>
<td><code><a href="/doc/maps/ru/manual/base-classes#tileevent">TileEvent</a></code></td>
<td>Возникает, когда GridLayer загрузил все видимые тайлы.</td>
</tr>
</tbody>
</table>
События, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include events -->
#### Методы
<table id='gridlayer-methods'>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="gridlayer-bringtofront">
<td><code><b>bringToFront</b>()</code></td>
<td><code>this</code></td>
<td>Позиционирует тайловый слой поверх остальных тайловых слоев.</td>
</tr>
<tr id="gridlayer-bringtoback">
<td><code><b>bringToBack</b>()</code></td>
<td><code>this</code></td>
<td>Позиционирует тайловый слой под остальными тайловыми слоями.</td>
</tr>
<tr id="gridlayer-getattribution">
<td><code><b>getAttribution</b>()</code></td>
<td><code>String</code></td>
<td>Используется элементом управления об авторстве, и возвращает соответствующие
<a href="#gridlayer-attribution">свойства</a>.</td>
</tr>
<tr id="gridlayer-getcontainer">
<td><code><b>getContainer</b>()</code></td>
<td><code>String</code></td>
<td>Возвращает HTML элемент, который содержит тайлы для данного слоя.</td>
</tr>
<tr id="gridlayer-setopacity">
<td><code><b>setOpacity</b>(
<nobr><Number> <i>opacity</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Меняет значение <a href="#gridlayer-opacity">opacity</a> слоя.</td>
</tr>
<tr id="gridlayer-setzindex">
<td><code><b>setZIndex</b>(
<nobr><Number> <i>zIndex</i> )</nobr>
</code></td>
<td><code>this</code></td>
<td>Меняет значение <a href="#gridlayer-zindex">zIndex</a> слоя.</td>
</tr>
<tr id="gridlayer-isloading">
<td><code><b>isLoading</b>()</code></td>
<td><code>Boolean</code></td>
<td>Возвращает <code>true</code>, если хотя бы один тайл загружен не до конца.</td>
</tr>
<tr id="gridlayer-redraw">
<td><code><b>redraw</b>()</code></td>
<td><code>this</code></td>
<td>Перересовывает все тайлы, запрашивая их повторно.</td>
</tr>
<tr id="gridlayer-gettilesize">
<td><code><b>getTileSize</b>()</code></td>
<td><code><a href="/doc/maps/ru/manual/basic-types#dgpoint">Point</a></code></td>
<td>Возвращает значение опции <a href="#gridlayer-tilesize">tileSize</a> приведенное к объекту
DG.Point. Используется методом <code>createTile()</code>.</td>
</tr>
</tbody>
</table>
#### Методы, используемые при наследовании
Слои, наследующие от <a href="#dggridlayer"><code>DG.GridLayer</code></a> должны поддерживать следующие методы:
<table>
<thead>
<tr>
<th>Метод</th>
<th>Возвращает</th>
<th>Описание</th>
</tr>
</thead>
<tbody>
<tr id="gridlayer-createtile">
<td><code><b>createTile</b>(
<nobr><Object> <i>coords</i>,</nobr>
<nobr><Function> <i>done?</i> )</nobr>
</code></td>
<td><code>HTMLElement</code></td>
<td>Вызывается только из API карт. Метод должен быть переопределен теми классами, которые расширяют
<a href="#dggridlayer"><code>GridLayer</code></a>.
Метод должен возвращать <code>HTMLElement</code> для позиции, координаты которой передаются в
<code>coords</code>. Если указана функция обратного вызова <code>done</code>, она должна быть вызвана
после загрузки и отрисовки тайла.
</td>
</tr>
</tbody>
</table>
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dglayer">Layer</a> <!-- TODO: include methods -->
Методы, унаследованные от <a href="/doc/maps/ru/manual/base-classes#dgevented">Evented</a> <!-- TODO: include methods -->