Векторные листы
Векторные листы могут содержать векторные представления данных для разных масштабов. В отличие от растровых листов, они могут адаптироваться к разрешению экрана устройства, на котором они отображаются, и изменять стиль отображения для разных пользователей. Вы можете опубликовать слои векторных листов или опубликовать пакеты векторных листов в ArcGIS Online или на портале ArcGIS Enterprise. Публикация пакета векторных листов автоматически создает соответствующий слой векторных листов на портале.
Слои векторных листов могут быть добавлены в карты и сцены. В сценах их можно включать только в категорию 2D-слои в качестве слоев драпировки. Вы можете сослаться на слой векторных листов или на пакет векторных листов (файл .vtpk).
Создание карты для построения векторных листов
Векторные листы можно создать из любой карты или базовой карты в ArcGIS Pro, но имеется ряд ограничений и специальных требований. Важнее всего в процессе создания карты для генерации векторных листов создать корректную и эффективную карту, чтобы выходные листы могли отображаться быстро. Следуйте приведенным ниже рекомендациям для создания оптимальной карты для генерации векторных листов. Подробные инструкции см. в разделе Создание мультимасштабной карты.
Создание карты допустимого формата
Векторные листы могут быть созданы только из карт и базовых карт; их нельзя создать из сцен. В картах, которые используются для создания векторных листов, обычно применяются масштабы карт, совпадающие с масштабами схем листов в списке масштабов этих карт. В карте нельзя использовать базовый масштаб.
Векторные листы могут быть созданы только из точечных, линейных, полигональных слоев и слоев мультиточек. Эти слои могут быть либо составными слоями или составными слоями подтипа. Если в вашей карте имеются другие слои, то отключите их на панели Содержание или удалите их все с карты. Убедитесь, что метаданные карты были определены. Как минимум, должно быть указано поле Описание.
Использование символов на карте
При создании векторных листов имеет значение, каким способом объектам присваивались символы. Символы карты будут переведены в листы в соответствии со спецификацией стиля Mapbox GL версии 8. Поддерживаются только те слои, для которых используется отображение с помощью единого символа, уникальных значений, градуированных цветов, градуированных символов или неклассифицированных цветов. Измените символы слоя, отключите (на панели Содержание), или удалите слои, которые отображаются другим способом. Некоторые модели отображения точечных символов не поддерживаются векторными листами, включая неклассифицированные цвета, цвета, заданные атрибутами и толщина контуров, задаваемая атрибутами.
Не используйте сложные символы и эффекты символа. Запись стиля для каждого слоя в символе производится по отдельности, поэтому при использовании сложных условных знаков объем информации для отображения и хранения будет существенно больше. Не используйте для отображения объектов символы, содержащие штрих-метки или градиентную заливку, маркеры, расположенные вдоль линий или границ полигонов, и большинство эффектов символов. Эти символы не будут корректно отображаться в созданных листах. Слои символов штриховки со сложными шаблонами штрихов будут преобразованы в выходных листах в простые штрихи. Эффекты смещения для символов штриха будут учитываться, но штрихи со сдвигом будут выглядеть упрощенными (по соображениям производительности) и всегда будут отображаться с использованием метода Mitre. Исключение составляет эффект символа Переместить. Он будет корректно отображен с простым линейным переходом. Вы можете использовать эффект символа для воспроизведения эффекта отброса тени для объектов строений.
Использование круглых маркеров вместо более сложных точечных символов может улучшить внешний вид символов точечного слоя в векторных листах. Точечные слои, обозначенные маркерами в форме круга, сохраняются в виде слоев окружностей в стиле векторных листов. Слои окружностей не требуют спрайта для визуализации и поддержки символов, которые не поддерживаются значками спрайтов, например цветов, по значениям атрибутов. Слои окружностей также не подвержены пикселизации и размыванию, которые могут наблюдаться со значками спрайтов, если их размер определяется атрибутами. Символы, состоящие из глифов шрифтов, импортированные из файлов SVG или имеющие более одного слоя символов, всегда сохраняются в виде спрайтов, а не слоев окружности, даже если они кажутся круглыми. Вы должны использовать форму круга из меню Вставка геометрии из формы в символах свойства слоя символа маркера формы, чтобы гарантировать, что символ будет сохранен как слой окружности в векторных листах.
Дополнительные сведения см. в разделе Символы в векторных листах.
Внимание:
Убедитесь, что у вас имеются необходимые разрешения на использование шрифтов вашей карты в сервисах перед запуском генерации векторных листов. Несмотря на то, что сами шрифты не будут храниться в листах (будет создано лишь их растровое представление), в лицензионном соглашении могут быть определены различные условия для использования шрифтов в мобильных, настольных и веб-приложениях.
Создание эффективной карты
При наличии ошибочных или дублирующихся наборов данных, а также при отображении данных с излишними подробностями, будет труднее создать оптимальные векторные листы. В процессе создания оптимальной карты необходимо сделать так, чтобы в каждом из масштабов отображались только требуемые данные и использовалась подходящая плотность объектов и их вершин. Для этого вы можете следовать некоторым рекомендациям.
Обеспечьте чистоту данных
Для создания оптимальной карты вам нужно проверить, являются ли данные чистыми. Изучите ваши источники данных на предмет чрезмерной детальности объектов, плотности объектов или наличия дублирующихся объектов. Вы можете легко удалить ненужные объекты карты с помощью определяющих запросов к слоям. Но если имеются данные, которые совершенно не нужны в создаваемой вами карте, то, возможно, будет лучше создать новый класс объектов, исключив из него эти объекты.
Сначала найдите и устраните ошибки геометрии с помощью инструментов Проверить геометрию и Восстановить геометрию. Подробнее смотрите в разделах Проверка и восстановление геометрии. Вы также можете использовать топологию для проверки данных. Более подробно об использовании топологии см. Топология карты.
Уменьшите плотность данных, определив диапазон видимых масштабов
По мере уменьшения масштаба будет виден все больший объем данных, однако на карте будет меньше места для их детального отображения. При наличии слишком большого числа вершин объектов на карте в мелком масштабе скорость отображения листов может снизиться, и вы, возможно, вообще не сможете их создать. Это особенно касается точечных объектов. При генерации листов используются некоторые методы генерализации линейных и полигональных объектов для снижения числа вершин, но плотность и расположение точечных объектов остается неизменной. Убедитесь, что вы отображаете слои точечных объектов высокой плотности только в крупных масштабах карты, когда можно различить отдельные объекты. Отключите отображение этих слоев в мелких масштабах карты.
Проще всего это сделать, используя настройки диапазонов видимых масштабов для тех слоев, корректное отображение которых во всех масштабах пакета векторных листов невозможно. Вам также доступны настройки диапазона видимых масштабов отдельных классов символов слоя. Более подробно о рекомендациях по устранению дублирующихся данных и диапазонах видимых масштабов см. Создание мультимасштабной карты.
Внимание:
Биннинг объектов – еще один способ уменьшить плотность данных, но полигоны бинов не включаются, если векторные листы созданы для карты с бинированными векторными слоями. В получившихся векторных листах будут отображаться только точечные объекты.
Снизьте плотность данных посредством генерализации
Помимо того, что вы можете скрыть отображение некоторых объектов в определенных масштабах карты, вы также можете ограничить объем данных (в виде изображения карты и размера файла) с помощью инструментов генерализации. Генерализация – это общий термин, который подразумевает процесс видоизменения данных для их более эффективного отображения в более мелких масштабах. В ходе этого процесса может производиться удаление части геометрии объекта или всех объектов, которые отвечают определенным критериям, а также упрощение геометрии объекта и обобщение геометрии объектов в виде более крупных объектов.
Некоторые методы генерализации используются для ваших данных при генерации векторных листов автоматически, чтобы обеспечить разумный размер листов. Эти процессы не изменят существенно ваших данных, и если ваша карта была создана корректно (согласно рекомендациям этого раздела и раздела Создание мультимасштабной карты), то эти изменения в большинстве случаев будут незаметны. Если вы хотите управлять процессом генерализации объектов в мелких масштабах карты, то используйте перед запуском генерации векторных листов один или несколько инструментов геообработки для создания отдельных слоев объектов для использования в различных масштабах карты. Примите во внимание то, что в процессе генерации векторных листов для линейных объектов и контуров полигональных объектов будут произведены некоторые объединения и упрощения с учетом условных символов и масштаба (уровня детальности) независимо от выполненных операций обработки данных с помощью этих инструментов.
В ArcMap также имеются дополнительные инструменты генерализации, которые вы можете использовать для ваших данных перед добавлением на карту в ArcGIS Pro.
Оставьте только нужные атрибуты
Чтобы сделать выходные листы максимально маленькими по размеру и быстрыми в отображении, при генерации векторных листов на основе карты будут использоваться только те поля, которые требуются для отображения объектов. В некоторых случаях для более быстрого отображения будут извлечены дополнительные поля. Например, для слоев, которые отображаются с использованием градуированных цветов или градуированных символов будут добавлены новые поля с целыми числами, соответствующим значениям границ классов.
Поскольку векторные листы можно настраивать, редактируя связанный с ними файл стиля, вам может потребоваться скопировать другие поля в векторные листы, чтобы сделать эту настройку возможной. Например, вы можете использовать другое поле, которое содержит строку надписи имени местоположения на другом (местном) языке, и использовать его в файле стиля. Чтобы добавить определенные поля в векторные листы, выделите их в виде Поля этого слоя. Выделение поля ObjectID добавляет идентификацию на уровне объектов в векторные листы и позволяет просматривать всплывающие окна непосредственно с листов. При просмотре слоёв векторных листов вы можете также включить всплывающие окна, используя связанный векторный веб-слой.
Внимание:
Добавление дополнительных атрибутов в листы, включая поле ObjectID для поддержки всплывающих окон, может сделать размер листов значительно большим. Не выбирайте ненужные поля.
- Выберите слой объектов на панели Содержание.На ленте появится контекстная вкладка Векторный слой.
- В разделе Слой объектов на вкладке Данные в группе Дизайн щелкните Поля , чтобы открыть вид Поля для этого слоя.
- Выберите нужные поля в столбце Выделить, которые вы желаете добавить в создаваемые векторные листы.
Создание векторных листов
Как только ваша карта будет готова, вы можете создать векторные листы. Для этого вы опубликуете карту как веб-слой.
- Подсветите карту на панели Содержание.
- На вкладке Опубликовать в группе Опубликовать как щелкните меню Веб-слой и щелкните Опубликовать веб-слой .
- На панели Опубликовать как веб-слой, на вкладке Общие, выберите под заголовком Тип слоя Векторные листы.
- Задайте информацию о векторных листах на вкладках Конфигурация и Содержимое. Подробнее см. приведенные ниже описания.
Либо вы можете использовать инструмент Создать пакет векторных листов. Данный инструмент создаст готовый к использованию пакет векторных листов в виде файла .vtpk на основе карты или базовой карты. Вы можете затем опубликовать и использовать векторные листы в ArcGIS Online или ArcGIS Enterprise.
При создании векторных листов путем публикации веб-слоя или с помощью инструмента геообработки есть несколько ключевых решений, которые вы должны принять перед их созданием.
Используйте схему листов
При создании векторных листов на основе вашей карты будет создана непрерывная сетка квадратных листов для каждого масштаба выбранной схемы листов. Эта схема должна быть определена с масштабами, удваивающимися в значении с каждым уровнем (в прогрессии второго уровня), иметь размер 512 на 512 пикселов и обеспечивать перекрытие данных, достаточное для отображения объектов. Так, например, в связи с требованиями к размеру листов для векторных листов, корневой лист, представляющий наибольшую площадь карты и самый низкий уровень детализации, начинается на LOD1 (уровень детализации 1) из схемы листов ArcGIS Online. Для получения дополнительной информации обратитесь к технической статье Часто задаваемые вопросы: Что такое корневая плитка и как она используется для создания пакета векторных листов с местной системой координат?
Выберите схему листов
Есть два способа управления процессом генерации листов: Можно создать непрерывную регулярную сетку листов на каждом из уровней масштабов без учета плотности объектов в каждом из листов. Этот тип сетки создается, если в качестве Формата листов выбран Однородный.
Для уменьшения размера листов более эффективным является создание и сохранение полигонов индекса. В этом случае листы создаются таким образом, чтобы в тех случаях, когда плотность объектов очень низкая, те же самые листы могли использоваться и для более крупных масштабов. Если лист с минимальным количеством объектов можно будет использовать для отображения и в более крупных масштабах, что позволит создать пакет быстрее и сделает его меньше, то эти маленькие листы (в более крупных масштабах) не нужно будет создавать, хранить, обрабатывать и отображать. Например, в большом листе в мелком масштабе будет отображаться только полигон океана. С такой минимальной детальностью объектов этот же лист можно использовать в более крупных масштабах, что позволило бы не создавать еще более маленькие и практически пустые листы в более крупных масштабах. Этот улучшенный подход разбиения на листы используется, если для Формата листов задан Индексированный, и это – значение по умолчанию.
Использование полигонов индекса
Когда вы используете более оптимальный формат с индексированием листов, вы можете указать созданный заранее набор полигонов индекса для создания листов. Проще всего создать такой набор полигонов с помощью инструмента Создать индекс векторных листов.
Запустите этот инструмент для той же карты, для которой вы хотите создать пакет векторных листов. Затем используйте выходной класс полигональных объектов как Индексированные полигоны. Для инструмента Создать пакет векторных листов это необязательный параметр, так что если вы оставите его пустым, выбрав индексированный формат листов, то оптимальный набор полигонов индекса будет создан автоматически в процессе генерации листов карты. Полигоны индекса будут удалены по завершении работы инструмента.
Если вам будет нужно создать пакет листов для этой же карты несколько раз, или если вы планируете регулярно обновлять пакет векторных листов в будущем, то лучше создать и сохранить класс объектов с полигонами индекса с помощью инструмента Создать индекс векторных листов. При использовании готового набора полигонов индекса листы будут созданы быстрее, и создаваемые листы будут иметь оптимальный размер и отображаться быстро. При отображении полигонов индекса вы также сможете проанализировать плотность объектов ваших данных перед созданием листов.
Выберите диапазон масштабов для листов
Вы можете ограничить диапазон масштабов для создаваемых в пакете векторных листов, указав значения параметров Минимальный масштаб кэширования и Максимальный масштаб кэширования. Выбранные масштабы должны совпадать с масштабами, заданными в схеме листов. Эти масштабы переводятся, соответственно, в значения minzoom и maxzoom. Например, создание векторных листов детальности от 0 до 6 сохранят для векторных листов minzoom = 0 и maxzoom = 6.
Создав векторные листы на основе ваших мультимасштабных карт, вы сможете предоставить доступ к содержимому ваших карт очень эффективно. Их можно загрузить очень быстро, они отображаются очень четко на экранах с высоким разрешением, при просмотре их можно поворачивать, их можно легко обновить и настроить параметры их отображения. Чтобы создать оптимальные векторные листы, создайте карту, исключив ненужные объекты и слишком подробную информацию, которые будет нужно отображать и хранить.