mapSurfer — API — map

Карта – один из основных объектов. Одновременно с этим в проекте может быть несколько карт. Карту можно вписывать в DOM element, на нее можно добавлять слои, устанавливать маркеры и т.д.


var map =  new GeoPortal.Map();
var zoom = map.zoom();
map.setZoom(zoom + 2);

                               
Параметры при создании Описание Пример использования
Container Либо DOM element, либо строка id DOM элемента
Options

options: {
    zoom: 3,
    center: {
        lng: 88.681640625,
        lat: 55.37911044801047
    },
    baseLayer: undefined, //GepPortal.BaseLayer 
    layers: [ ]  //GepPortal.Layers,   
},

                                

//пример создания
var map = GeoPortal.Map(container, options);

                    

Опция Описание Значение по умолчанию
zoom Уровень масштаба 3
center Центр карты lng: 88.681640625,
lat: 55.37911044801047
baseLayer Базовый слой undefined
layers Включенные по умолчанию слои [ ]

Методы

Метод Описание Пример использования
zoom() возвращает zoom карты

var map =  new GeoPortal.Map();
var zoom = map.zoom();
map.setZoom(setZoom +  2);

                               
setZoom (zoom) Устанавливает zoom, параметр zoom — числовое значение

var map = new GeoPortal.Map();
map.setZoom(5);

                                
zoomIn() Увеличивает zoom на единицу(приближает карту)

var map = new GeoPortal.Map();
map.zoomIn();

                                
zoomOut() Уменьшает zoom на единицу(отдаляет карту)

var map = new GeoPortal.Map();
map.zoomOut();

                                
panBy (point) Сдвигает карту на координаты точки. Параметр point – экземпляр класса GeoPortal.Point

var map = new GeoPortal.Map();
var point = new M.Point(555,555);
map.panBy(p);

                                
center() возвращает центр карты

var map = new GeoPortal.Map();
var center = map.center ();
console.log(center);

                               
setCenter (lon,lat) Устанавливает центр карты

var map = new GeoPortal.Map();
map.setCenter(55,55);

                                
setView (lon,lat,zoom) Устанавливает положение карты с центром в точке (lon,lat) и уровнем масштаба zoom

var map = new GeoPortal.Map();
map.setView(55,55,3);

                                
bounds() возвращает текущий bbox

    -

                                
fitBounds (minLon, minLat ,maxLon ,maxLat) устанавливает bbox

var map = new GeoPortal.Map();
map.fitBounds (48.988037109375, 55.706224094880426,
                           49.2626953125, 55.889945875033845);
fitBounds (latLngBounds) Устанавливает bbox, параметр latLngBounds является экземпляром класса GeoPortal.LatLngBounds.

var map = new GeoPortal.Map();
var latLngBounds = new GeoPortal.LatLngBounds (48.988037109375,
          55.706224094880426, 49.2626953125, 55.889945875033845);
map.fitBounds (latLngBounds);

                                

Методы

Метод Описание Пример использования
baseLayer() Возвращает текущий базовый слой, экземпляр класса GeoPortal.BaseLayer

    -

                                
setBaseLayer(baseLayer) Установить базовый слой и добавить его на карту, параметр baseLayer экземпляр класса GeoPortal.BaseLayer

var map = new GeoPortal.Map();

if(GeoPortal.baseLayers &&
   GeoPortal.baseLayers.schemas &&
   GeoPortal.baseLayers.length > 0) {
        var baseLayer = new  GeoPortal.baseLayers.schemas[0];
        map.setBaseLayer(baseLayer) ;
   }

                                
layers() возвращает массив добавленных слоев

    -

                                
addLayer (layer) Добавляет слой на карту, параметр layer — экземпляр GeoPortal.Layer

    -

                                
removeLayer(layer) Удаляет слой с карты, параметр layer — экземпляр GeoPortal.Layer

    -

                                

Методы

Метод Описание Пример использования
addControl(control) Добавляет control на карту, параметр control – экземпляр класса GeoPortal.Control.

var map = new GeoPortal.Map();
zoom = new GeoPortal.Control.Zoom();

zoom.on("handClick", function(){
    console.log("handClick");
},this);

map.addControl(zoom);


removeControl(control) Удаляет control, параметр control – экземпляр класса GeoPortal.Control.

var map = new GeoPortal.Map();
zoom = new GeoPortal.Control.Zoom();

zoom.on("handClick", function(){
    console.log("handClick");
},this);

map.addControl(zoom);
map.removeControl (zoom);


Методы

Метод Описание
featuresWithin(latLngBounds, callback,callErrorBack) получение свойств слоев (feautures) по bbox.

входящие параметры:
latLngBounds — экземпляр класса GeoPortal.LatLngBounds,
callback(featuresArray) – функция выполняется, если хотя бы у одного слоя,
включенного на карте будет найдено свойство с координатами, находящимися в
указанной области (latLngBounds). Принимает на вход один параметр — массив
экземпляров класса GeoPortal.Feature.
callErrorBack(status,error) – функция будет выполняться при возникновении ошибки во
время запроса. На вход принимает два параметра: статус и описание ошибки.


var map = new GeoPortal.Map();

map.on(“zoomend”,function(){
    console.log(map.zoom());
},this);

    
Событие Описание
ready событие происходит, когда карта готова к использованию.
zoomend событие происходит после приближения или отдаления карты.
move событие происходит при сдвиге карты.
viewreset событие происходит после перерисовки карты.
popupclose событие происходит после закрытия окошка сообщения на карте
popupopen событие происходит после открытия окошка сообщения на карте(например, после клика на точку)