Карта
Map
класс GP.Widget.Map
Виджет карты. Объект в системе GP.mainMap
Методы
| Метод | Описание | Возвращает | Параметры |
|---|---|---|---|
| setMarker(lon,lat) | Установить маркер на карту, удаляя имеющиюся точку или маркер | — |
lon - долгота lat - широта |
| setPoint(lon,lat,zoom,html) | Установить уточку на карту и переходит к этой точке, удаляя имеющиюся точку или маркер | объект точки |
lon - долгота lat - широта zoom - увеличение с которым нужно переходить к точке (целое число, по умолчанию 12) html - текст над точкой |
| getCenter() | Возвращает центр показываемой карты | координаты центра карты | — |
| getTurnedLayerId(type) | Возвращает массив id слоев, включенных на карте | массив id слоев |
type: wms - функция возвращает id только wms слоев wfs - функция возвращает id только wfs слоев undefined - функция возвращает id всех включенных слоев |
| getPoint() | Возвращает точку или маркер с карты | объект точки | — |
| isLayerTurned(layerId) | Проверяет, включен ли слой на карте | true или false |
layerId - id слоя |
| setBBox(minLon,minLat,maxLon,maxLat,projection) | Перейти к определенному участку карты, установив boundary box | — |
minLon - минимальная долгота minLat - минимальная широта maxLon - максимальная долгота maxLat - максимальная широта projection - проекция координат, по умолчанию EPSG:4326 |
| setBaseLayer(baseLayer) | установить базовый слой | — |
baseLayer - базовый слой |
| setView(lon,lat,zoom) | перейти к определенному участку карты | — |
lon - долгота lat - широта zoom - приближение, целое число |
| offLayer(layerId) | выключить слой | — |
layerId - id слоя |
| turnLayer(layerId,mapLayer,service) | включить слой на карту | — |
layerId - id слоя mapLayer - слой (объект) service - wms или wfs |
| setFullScreen() | развернуть карту на весь экран | — | — |
| addLine(latLngs) | добавить линию на карту | — |
latLngs - массив объектов в формате {lat : 55, lng:49}
|
События
| Событие | Описание |
|---|---|
| «map:wmsLayersClicked» | Произошел клик по карте при хотя бы одном включенном wms слое |
объект GP.widgets.rectangle
Виджет для выделения области карты.
Методы
| Метод | Описание | Параметры |
|---|---|---|
| create(fnc, options) | Начать выделять область. | fnc — функция, которая будет выполняться после выделения области пользователем. (пример ниже) options — опции выделения. (описание ниже) |
| disable() | Убрать выделение. | — |
Описание опций
Описанные опции совподают с опциями по умолчанию.
options: {
shapeOptions: {
stroke: true,
color: '#f06eaa',
weight: 4,
opacity: 0.5,
fill: true,
fillColor: null, //same as color by default
fillOpacity: 0.2,
clickable: true
},
initialLabelText: 'Нажмите и потяните для выделения области',
releaseLabelText: 'Отпустите для получения запроса'
}
Пример передаваемой функции.
M.Util.bind(
function(data){
...
if(!data.created
|| !data.clickData)
return;
var latLngs = data.clickData.rect.latLngs(),
clickData = {};
/*
Оставление полигона на карте после выделения
*/
this._polygon = data.clickData.rect;
GP.mainMap.map.addLayer(this._polygon);
...
},
,this)
// оборачивание для использования функции в определенном контексте
// действия, которые должны происходить даже в случае неудачного выделения
// true, если область успешно выделилась
// данные выделения
// координаты выделенной области
// объект полигона
// добавление на карту
// контекст выполнения функции
GP.mainMap.map
Внутренний объект карты.
Методы
| Метод | Описание | Параметры |
|---|---|---|
| zoomIn() | Приблизить карту | — |
| zoomOut() | Отдалить карту. | — |
| setZoom(zoom) | установить zoom | zoom — целое число |
| center() | Возвращает центр карты, экземпляр класса M.LatLng | — |
| container() | Возвращает DOM объект контейнера карты | — |
| size() | возвращает размер экрана | — |
| setView(center, zoom) | установить центр и zoom карты | center — экземпляр класса M.LatLng(lat,lng)zoom — целое число |
| removeLayer(layer) | удалить слой с карты | layer — объект слоя |
M.LatLng
Класс, экземпляры которого содержащий долготу и широту.
Конструкторы
| Конструктор | Параметры |
|---|---|
| new M.LatLng(lat,lng) | lat — широтаlng — долгота |
M.GeoJSON
Статичный класс для обработки геометрии в формате GeoJSON.
Методы
| Метод | Параметры | Описание |
|---|---|---|
| geometryToLayer(geometry, pointToLayer) | geometry — геометрия в формате GeoJSONpointToLayer — boolean, если true и геометрия является точкой — возвращает слой, иначе объект M.Marker | возвращает объект слоя. |
M.TileLayer.WMS
Класс wms слоя, экземпляр этого класса можно добавлять на карту.
Конструкторы
| Конструктор |
|---|
new M.TileLayer.WMS(
requestUrl, // url запроса
{ // wms параметры слоя
layers: typeName, // typeName слоя
styles: style, // style слоя
format: 'image/png', // формат отдачи данных, по умолчанию image/jpeg
transparent: true // прозрачность
})
|
M.WFS
Класс WFS слоя, экземпляр этого класса можно добавлять на карту.
Конструкторы
| Конструктор |
|---|
mapLayer = new M.WFS(
requestUrl, //Url запроса
typeName, //typeName слоя
styleUrl, //путь к .sld файлу стиля
undefined, //формат отдачи данных, по умолчанию application/json
wfsOptions //wfs опции запроса
);
|
