Вы можете собрать содержание из нескольких источников для векторных листов в единый картографический слой векторных листов, который будет ссылаться на каждый ресурс, но при этом будет оставаться в едином стиле. Вы можете смешивать и сочетать содержание из существующих слоев векторных листов, при этом не нужно создавать или размещать дублирующиеся данные векторных листов для каждой новой комбинации. Поддержка и сочетание разных слоев векторных листов в данном случае может оказаться довольно удобной при частом обновлении каждого слоя по отдельности.
Собрав исходные данные из нескольких источников векторных листов, вы можете сделать следующее:
- Добавить дополнительное содержание для векторных листов в векторные базовые карты Esri
- Заменить отдельные слои на векторных базовых картах Esri своими
- Скомбинировать ресурсы из ArcGIS Living Atlas, ArcGIS Online и ArcGIS Enterprise
Обновление стиля векторных листов
В исходниках стиля векторных листов, которые являются кодом JSON свойство sources содержит несколько источников типа vector вместо единого источника типа vector.
В примере ниже используются два источника векторных листов. Первый называется "esri". Он содержит картографические данные по дорожной сети города Редлендс. Второй источник называется "contours". Он содержит границы территории Редлендса. Каждый слой в стиле векторных листов будет ссылаться на один из этих sources.
"sources": {
"esri": {
"type": "vector",
"url": "https://tiles.arcgis.com/tiles/8cv2FuXuWSfF0nbL/arcgis/rest/services/Redlands_streetmap/VectorTileServer"
},
"contours": {
"type": "vector",
"url": "https://tiles.arcgis.com/tiles/8cv2FuXuWSfF0nbL/arcgis/rest/services/Redlands_contours/VectorTileServer"
}
},
Сочетание сервисов векторных листов
Вы можете сочетать несколько сервисов векторных листов с разными свойствами. В списке ниже приведены разрешенные комбинации:
- Вы можете комбинировать сервисы векторных листов, опубликованные на ArcGIS Online или ArcGIS Enterprise.
- Каждый источник векторных листов в стиле векторных листов должен иметь ту же схему листов и пространственную привязку, но максимальный уровень детальности может быть разным.
- Вы можете сочетать несколько сервисов векторных листов с разными экстентами. Слой векторных листов будет отображаться как объединение всех этих экстентов.
- Вы можете сочетать сервисы векторных листов с форматами векторных листов INDEXED или FLAT.
Пример: Сочетание источников Esri's A Children's Map и Streets
Используя несколько источников, вы можете добавить любое содержание в существующие векторные базовые карты Esri.
В данном примере "streets" встраивается в A Children's Map из ArcGIS Living Atlas.
У этой карты нет слоя улиц в стиле. Изменив копию стиля векторных листов для нее, источник листов "streets" может быть добавлен в свойство sources. Затем новые слои могут быть добавлены в стиль, который ссылается на новый источник "streets".
Источники векторных листов
"sources": {
"esri": {
"type": "vector",
"url": "https://tiles.arcgis.com/tiles/P3ePLMYs2RVChkJx/arcgis/rest/services/Esri_Childrens_Map/VectorTileServer"
},
"streets": {
"type": "vector",
"url": "https://<portal_name>/server/rest/services/Hosted/streets/VectorTileServer"
}
},
Слои векторных листов в стиле JSON
"layers" : [{
"id" : "Land/Not ice", "type" : "fill", "source" : "esri", "source-layer" : "Land", "filter" : ["==", "_symbol", 0], "layout" : {}, "paint" : {
"fill-color" : "#F2EFCC"
}
}, {
"id" : "roads1", "type" : "line", "source" : "streets", "source-layer" : "street", "minzoom" : 4, "layout" : {
"line-join" : "round"
}, "paint" : {
"line-color" : "#B9B7B9", "line-width" : 3.33333 }
}, {
"id" : "roads2", "type" : "line", "source" : "streets", "source-layer" : "street", "minzoom" : 4, "layout" : {
"line-join" : "round"
}, "paint" : {
"line-color" : "#E1E1E1", "line-width" : 1.33333 }
},