Слои
FeatureGroup
Используется для группировки векторных слоев в один слой. Наследуется от GeoPortal.Layer.LayerGroup
var features = new GeoPortal.Layer.FeaturGroup();
for (var i=0;i<10;i++) {
features.addLayer(new GeoPortal.Vector.PolyLine([new GeoPortal.LatLng(55,49), new GeoPortal.LatLng(55.1, 49.1)]))
}
features.on("click", function(e) {
console.log(e);
})
map.addLayer(features);
Конструктор
new GeoPortal.Layer.FeaturGroup(?<Array Layer> layers)
Методы
| Метод | Возвращает | Описание |
|---|---|---|
| bindPopup(<String> content) | this | Создать Popup ко всем объектам в группе и прикрепить к ним текст |
| setStyle(<Polyline options> style) | this | Устанавливает стиль отображения всем объектам в группе |
События
| Событие | Данные | Описание |
|---|---|---|
| add | Event | Происходит при добавлении объекта на карту |
| click | MouseEvent | Происходит при клике на объект |
| dblclick | MouseEvent | Происходит при двойном клике на объект |
| mousedown | MouseEvent | Происходит при нажатии клавишей мыши при наведенном указателе |
| mouseover | MouseEvent | Происходит при наведении курсора мыши на объект |
| mouseout | MouseEvent | Происходит когда курсор мыши покидает зону объекта на карте |
LayerGroup
Используется для группировки слоев в один слой
var layer = new GeoPortal.Layer.LayerGroup();
for (var i=0;i<10;i++) {
layer.addLayer(new GeoPortal.Marker(new GeoPortal.LatLng(55+i,49))
}
map.addLayer(layer);
Конструктор
new GeoPortal.Layer.LayerGroup(?<Array Layer> layers)
Методы
| Метод | Возвращает | Описание |
|---|---|---|
| addLayer( <Layer> layer) | this | Добавить слой к группе |
| removeLayer( <Layer> layer) | this | Удалить слой из группы |
| clearLayers() | this | Удалить все слои |
| invoke( <String> methodName) | this | Выполнить метод с названием methodName у всех слоев |
WMS
Используется для подключения wms слоев на карту
var layer = new GeoPortal.Layer.WMS("http://host/path", {
layers: 'testlayername',
styles: 'testlayerstyle',
format: 'image/png',
transparent: true
});
map.addLayer(layer);
Конструктор
new GeoPortal.Layer.WMS(<String> url, <WMS options> options)
Свойства
| Свойство | Тип | По умолчанию | Параметр запроса |
|---|---|---|---|
| service | String | ‘WMS’ | тип сервиса |
| request | String | ‘GetMap’ | тип запроса |
| version | String | ‘1.1.1’ | версия протокола |
| layers | String | » | список слоев (пишется через запятую) |
| styles | String | » | список стилей (пишется через запятую) |
| format | String | ‘image/jpeg’ | формат отображения слоя |
| transparent | Boolean | false | получать слой с прозрачностью |
Методы
| Метод | Возвращает | Описание |
|---|---|---|
| setOpacity(<Number> opacity) | void | Установить прозрачность слою |
События
| Событие | Данные | Описание |
|---|---|---|
| load | Event | Происходит, когда все тайлы слоя загружены |
| tileunload | Event | Происходит, когда тайл слоя выгружен |
| tileload | Event | Происходит, когда тайл слоя загружен |
WFS
Используется для подключения слоя по протоколу WFS
GeoJSON
Используется для создания векторного слоя из объектов типа GeoJSON. Наследуется от GeoPortal.Layer.FeatureGroup
var layer = new GeoPortal.Layer.GeoJSON(
{
type: 'Point',
coordinates: [55,49]
}
);
map.addLayer(layer);
Конструктор
new GeoPortal.Layer.GeoJSON(<Object GeoJSON> geojson)
Методы
| Метод | Возвращает | Описание |
|---|---|---|
| addGeoJSON(<Object GeoJSON> geojson, options) | void | Добавляет geojson объекты к слою. Параметр options не обязателен и должен соответствовать опциям передаваемой геометрии. |
События
| Событие | Данные | Описание |
|---|---|---|
| featureparse | Event | Происходит при добавлении нового объекта к слою |
JsonLatLng
Используется для подключения слоя, состоящего из объектов, подгружаемых через Ajax запрос. С возможностью применения кластеризации
var layer = new GeoPortal.Layer.JsonLatLng("http://host/path", {
icon: new GeoPortal.Icon();
fieldLng: "lon",
fieldLat: "lat",
object: "points"
});
map.addLayer(layer);
Конструктор
new GeoPortal.Layer.JsonLatLng(<String> url, <JsonLatLng options> options);
Свойства
| Свойство | Тип | По умолчанию | Описание |
|---|---|---|---|
| icon | GeoPortal.Icon | new GeoPortal.Icon() | Иконка для отображения объектов на карте |
| clusterIconClass | GeoPortal.Icon | new GeoPortal.Icon() | Иконка для отображения кластеров объектов на карте |
| fieldLng | String | ‘lng’ | Поле объекта, содержащее долготу |
| fieldLat | String | ‘lat’ | Поле объекта, содержащее широту |
| object | String | undefined | Поле объекта, содержащее массив объектов |
| cluster | Boolean | true | Применять кластеризацию к объектам |
| radius | Number | 100 | Радиус в пикселях для кластеризации объектов |
| maxZoomChange | Number | 2 | Через сколько зумов делать пересчет |
| maxZoomLevel | Number | 14 | До какого зума применять кластеризацию |
| singleClusters | Boolean | false | Кластеризовать одиночные объекты |
Методы
| Метод | Возвращает | Описание |
|---|---|---|
| clear() | void | Очищает слой |
| reload() | void | Перезагружает слой |
| setRadius(<Number> radius) | this | Установить новый радиус для кластеризации |
| disableClustering() | Boolean | Отключить кластеризацию |
| enableClustering() | this | Включить кластеризацию |
События
| Событие | Данные | Описание |
|---|---|---|
| add | Event | Происходит при добавлении объекта на карту |
| click | MouseEvent | Происходит при клике на объект |
| clusterClick | MouseEvent | Происходит при клике на кластер объектов |
| dblclick | MouseEvent | Происходит при двойном клике на объект |
| mousedown | MouseEvent | Происходит при нажатии клавишей мыши при наведенном указателе |
| mouseover | MouseEvent | Происходит при наведении курсора мыши на объект |
| mouseout | MouseEvent | Происходит, когда курсор мыши покидает зону объекта на карте |
