Конвертация карты в сцену

3D-функциональность является неотъемлемой составляющей ArcGIS Pro. Любую 2D-карту можно конвертировать в 3D сцену для визуализации данных, изучения или анализа. В ArcGIS Pro 3D-карта называется сценой. Сцену можно просматривать в глобальном или локальном режиме. В глобальном режиме карта отрисовывается на глобусе, и ваша точка обзора обычно находится за тысячи километров от данных. В локальном режиме карта отрисовывается в перспективе, и ваша точка обзора обычно находится на расстоянии нескольких километров от данных.

Обзор

  • Продолжительность видео: 2:35
  • Это видео было создано с помощью версии ArcGIS Pro 2.3.

В этом упражнении вы будете конвертировать 2D-карту в 3D-сцену и работать со свойствами 3D отображения.

  • Предполагаемое время: 30 минут
  • Требования к программному обеспечению: ArcGIS Pro

Открытие проекта

Область изучения - округ Келбурн в Веллингтоне, Новая Зеландия. Исходная карта может быть вам знакома, если вы выполнили руководство Импорт документа ArcMap.

  1. Запустите ArcGIS Pro и выполните вход, если необходимо.
  2. На начальной странице под разделом с недавними проектами щелкните Открыть другой проект.
    Примечание:

    Если у вас в приложении есть открытый проект, щелкните вкладку Проект на ленте. В списке элементов меню слева щелкните Открыть. На странице Открыть щелкните Портал и выберите Открыть другой проект внизу страницы.

  3. В диалоговом окне Открыть проект в разделе Портал Портал нажмите ArcGIS Online ArcGIS Online.
    Примечание:

    Если вместо этого вы видите ArcGIS Enterprise ArcGIS Enterprise, необходимо добавить подключение к порталу или задать активный портал как ArcGIS Online. Или можно загрузить учебные данные через браузер.

  4. Вверху диалогового окна в поле Поиск введите Упражнение Конвертация карты в сцену и нажмите Enter.
  5. В списке результатов поиска щелкните Конвертация карты в сцену, чтобы выбрать пакет проекта.
    Примечание:

    Если под этим именем есть несколько пакетов проекта, посмотрите на столбец Владелец. Выберите элемент с именем владельца ArcGISProTutorials. Если вы не получаете никаких результатов, см. Нет результатов поиска.

  6. Нажмите OK.

    Откроется проект с видом карты, отображающим пригород Кельбурн. Слои, представляющие пешеходные дорожки, дороги и зоны, отображаются на базовой карте темно-серого цвета.

    Карта пригорода Кельбурн

Создание сцены из карты

В ArcGIS Pro 3D-карта называется сценой. Сцену можно просматривать в глобальном или локальном режиме. В глобальном режиме карта отрисовывается на глобусе, и ваша точка обзора обычно находится за тысячи километров от данных. Этот вид лучше всего подходит для больших изучаемых областей. В локальном режиме карта отрисовывается в перспективе, и ваша точка обзора обычно находится на расстоянии нескольких километров от данных. Этот вид лучше подходит для небольших областей.

В этом проекте область интереса очень невелика. Вы конвертируете карту в локальную сцену.

Глобальная и локальная сцены
Выше: глобальный вид с Новой Зеландией в центре. Ниже: Локальный вид поверхности земли в Веллингтоне.

  1. Щелкните вкладку Вид на ленте. В группе Окна щелкните Сбросить панели Сбросить панели и выберите Сбросить панели для картографирования.

    При этом открываются панели Содержание и Каталог, остальные панели остаются закрытыми.

  2. На вкладке Вид в группе Вид щелкните Конвертировать Конвертировать. В ниспадающем меню выберите В локальную сцену В локальную сцену.

    3D-сцена пригорода Кельбурн

    Карта конвертируется в сцену Kelburn_3D. Значок локальной сцены Локальные появится на вкладке вида сцены.

    Примечание:

    Вы можете просмотреть любую сцену как локальную или глобальную, нажав кнопку Глобальная Глобальный или Локальная Локальные в группе Вид на вкладке Вид.

    Локальные сцены поддерживают системы координат проекции. Глобальные сцены не поддерживают системы координат проекции. Они используют географическую систему координат WGS 1984.

    На панели Содержание, слои карты скопированы в сцену. Внизу панели находится категория Поверхности высот со слоем поверхности земли под именем WorldElevation3D/Terrain3D. (Разверните заголовок Земля, чтобы увидеть слой.) Этот слой обеспечивает значения высот для 2D слоев карты, чтобы они могли отображаться в 3D пространстве.

    Панель содержания с поверхностями высот

    WorldElevation3D/Terrain3D - это поверхность высот на всю территорию земного шара. Она состоит из нескольких карт высоты с разным разрешением и детализацией. В Новой Зеландии ее разрешение составляет примерно 31 метр, т.е. одно значение высоты на каждые 961 кв. м площади (квадрат со стороной 31 м).

    Чтобы увидеть разрешение WorldElevation3D/Terrain3D и источник данных для любой точки мира, откройте карту Elevation Coverage.

    С текущей перспективы сцена не выглядит полностью 3D, но попробуйте изучить ее с других перспектив.

  3. На ленте щёлкните вкладку Карта. В группе Навигация убедитесь, что выбран инструмент Изучить Инструмент исследовать.
  4. Используйте кнопки и колесико мыши, чтобы перемещаться, поворачивать и масштабировать сцену. Можно также воспользоваться навигатором на экране Навигатор в левом нижнем углу сцены.

    Сцена переместилась к новой перспективе.

    Если вы потеряли ориентацию, используйте Закладки Закладки на вкладке карта, чтобы вернуться к знакомой перспективе. Справку по 3D навигации можно найти в разделе Навигация в 3D или в руководстве Навигация по картам и сценам.

    Темно-серая базовая карта скрывает 3D эффект, поэтому следует изменить ее.

  5. На вкладке Карта в группе Слой щелкните Базовая карта Базовая карта. В списке базовых карты щелкните Улицы.

    Теперь вы измените некоторые свойства поверности высот.

  6. На панели Содержание в разделе Поверхности высот щелкните Земля.

    На ленте появится контекстная вкладка Поверхность высот.

  7. В разделе Поверхность высот щелкните вкладку Оформление.
  8. В группе Рисование для Вертикального преувеличения введите 1.25 и нажмите клавишу Enter.

    Вертикальное преувеличение - это визуальный эффект, который повышает 3D представление сцены.

  9. В группе Поверхность, отметьте опцию Тень относительно положения источника света.

    Это позволит добавить к рельефу тени, зависящие от текущих параметров освещения сцены. Однако по умолчанию высота солнца составляет 90 градусов (прамо над головой), поэтому тени отсутствуют. Вы измените параметры освещенности, которые являются свойством сцены, а не поверхности высот.

  10. На панели Содержание щелкните правой кнопкой имя сцены Kelburn_3D и выберите Свойства Свойства.
  11. В диалоговом окне Свойства карты щелкните вкладку Освещение.
  12. В разделе Освещение измените Высоту на 60 и нажмите клавишу Enter.

    Вкладка Освещение в диалоговом окне Свойства карты.

  13. Нажмите OK.
  14. Просмотр сцены с нескольких перспектив.
    Сцена переместилась к новой перспективе.
  15. На панели Содержание снимите отметку для WorldElevation3D/Terrain3D.

    Сцена будет перерисована, слои карты станут плоскими. Слой поверхности высот должен быть включен, чтобы его значения высот действовали.

  16. Поставьте отметку для WorldElevation3D/Terrain3D, чтобы снова включить его.
  17. На панели Инструменты быстрого доступа щелкните Сохранить Сохранение, чтобы сохранить проект.

Добавление слоёв в сцену

Вы добавите два новых слоя в сцену и назначите для них символы. Один слой – здания в пригороде Кельбурн. Этот слой имеет атрибут, который вы будете использовать для вытягивания зданий, чтобы визуализировать их высоту. Другой слой – границы пригородов Веллингтона. Наборы данных для этих слоёв хранятся в базе геоданных проекта.

  1. На панели Каталог на вкладке Проект раскройте Базы данных. . Разверните базу convert_a_map_to_a_scene.gdb.
  2. Щелкните класс пространственных объектов Buildings, чтобы выбрать его. Нажмите клавишу Ctrl и щелкните класс пространственных объектов Suburb_Boundaries, чтобы выбрать и его.
    Выбранный класс пространственных объектов на панели Каталог.
  3. Щелкните правой кнопкой мыши любой из выбранных классов и нажмите Добавить к текущей карте Добавить к текущей карте.

    Слои добавятся в сцену с символами по умолчанию. Слой Suburb_Boundaries имеет цветовую заливку. Вы примените символ для заполнения пустот и выберите другой цвет границы.

  4. На панели Содержание щелкните символ для слоя Suburb_Boundaries.

    На панели Символы появились опции для настройки полигональных символов.

  5. В верхней части панели щелкните вкладку Свойства. Убедитесь, что выбрана вкладка Символ Символ.
  6. В Оформлении щелкните стрелку ниспадающего меню Цвет и выберите Нет цвета.
  7. Щелкните стрелку ниспадающего меню Цвет контура и выберите Cordovan Brown.
    Палитра цветов
  8. Измените значение Ширины контура на 1,5 pt и нажмите клавишу Enter.
    Настройки свойств символов
  9. В нижней части панели щелкните Применить.
    Контуры границ пригородов на сцене

    Теперь вы видите границы Кельбурна и других пригородов Веллингтона.

  10. На панели Содержание щёлкните символ слоя Buildings.

    Вы выберите символ, созданный специально для зданий.

  11. В верхней части панели Символы щелкните вкладку Галерея.
  12. В поле поиска введите building и нажмите клавишу Enter.
  13. В списке символов стиля ArcGIS 2D щелкните символ Building Footprint.

    Символ Building Footprint

    Символ будет обновлен и на панели Содержание, и в сцене. Но здания пока плоские на поверхности. Вы будете вытягивать их, используя значения высот в таблице атрибутов слоя.

  14. На панели Содержание щелкните правой кнопкой мыши слой Buildings и щелкните Таблица атрибутов Open Table.

    Поле Approximate Height содержит информацию о высоте каждого из строений относительно уровня поверхности земли в метрах.

    Примечание:

    В таблице также есть поле Base Elevation, где хранится значение высоты (z-значение) каждого объекта. Однако сейчас слой не использует эту информацию для размещения объектов в 3D пространстве. Как и другие слои в сцене, слой Buildings использует значения с поверхности высот WorldElevation3D/Terrain3D.

  15. Закройте таблицу. На панели Содержание убедитесь, что слой Buildings выбран.
  16. На ленте, под заголовком Векторный слой, щелкните вкладку Оформление.
  17. В группе Вытягивание щелкните кнопку Тип Тип вытягивания объекта и выберите Максимальная высота Максимальная высота.
  18. Рядом с пунктом Тип Тип вытягивания объекта щелкните ниспадающее меню Поле и выберите Приблизительная высота.

    Каждое здание теперь вытянулось по значению примерной высоты из таблицы. В качестве единиц измерения вытягивания используются метры, что корректно.

    Сцена с вытянутыми зданиями.

    Примечание:

    Вы применили вытягивание к максимальным высотам объектов (Максимальная высота). Чтобы представить, что это означает, представьте прямоугольное здание, определенное четырьмя векторами, которые лежат на уклоне. Максимальная высота объекта – это высота вершины, которая имеет высочайшую точку на склоне. Минимальная высота объекта – это высота вершины, которая имеет самую низкую точку на склоне. Все четыре вершины вытягиваются на одинаковую высоту, поэтому крыши зданий получаются плоскими. Объекты, вытянутые по максимальной высоте, слегка выше, чем вытянутые по минимальной (если только здания не расположены на плоском склоне). Более подробно о вытягивании см.Вытягивание объектов до 3D-символов.

    На панели Содержание слой Buildings переместился из категории 2D слои в категорию 3D слои, поскольку вытягивание является 3D свойством слоя.

  19. На панели инструментов быстрого доступа щелкните Сохранить Сохранение.

    В следующем разделе вы добавите другую поверхность высот в сцену, чтобы предоставить более детальный рельеф пригорода Кельбурн.

Добавление другой поверхности высот к сцене

Поверхность высот - это набор растровых или TIN-данных (или веб-сервис высот, созданный из растрового набора данных), в котором хранятся значения высот для непрерывной географической области. Разрешение поверхности может быть высоким или низким. Поверхности, покрывающие большие области, обычно имеют более низкое разрешение (с меньшей детализацией), чем поверхности для небольших областей. WorldElevation3D/Terrain3D является поверхностью с низким разрешением.

К поверхности высот можно добавить несколько слоев. Например, слой с высоким разрешением может обеспечивать значения высот для небольшой области интереса, а слой с низким разрешением - для окружающих областей.

В этом разделе вы добавите второй слой высот. Этот слой покрывает экстент района Kelburn с разрешением 1 метр. Слои карты будут использовать значения высот слоя с высоким разрешением там, где они доступны.

В большинстве сцен поверхность высот соответствует земле - топографии поверхности земли. Однако поверхности могут отображать и другую топографию, например, дна пещеры или озера, если у вас есть подходящие данные. Более подробно о пользовательских поверхностях высот см. в разделе Поверхности высот.

  1. На панели Содержание, в разделе Поверхности высот, щелкните Земля правой кнопкой мыши и выберите Добавить источник высот Добавить источник высот.
  2. В диалоговом окне Добавить источник высот перейдите в Проект > Базы данных > convert_a_map_to_a_scene.gdb. Щелкните Elevation_Kelburn, чтобы выделить его.

    Диалоговое окно Добавить источник высот

  3. Нажмите OK.

    Панель Содержание с двумя слоями высот

    На панели Содержание слой Elevation_Kelburn добавлен над слоем WorldElevation3D/Terrain3D. Слои карты используют значения из Elevation_Kelburn, если карта соотносится со слоем высот; там, где слои карты выходят за пределы Elevation_Kelburn, они используют значения высот из WorldElevation3D/Terrain3D. (В этой сцене все слои карты, за исключением Suburb_Boundaries, полностью соотносятся с Elevation_Kelburn.)

    Примечание:

    Слои высот используются в том порядке, в котором они расположены на панели Содержание. Поэтому, следует размещать слои с высоким разрешением над слоями с низким. Вы можете перетаскивать слои вверх или вниз в пределах категории Поверхности высот.

  4. На панели инструментов быстрого доступа щелкните Сохранить Сохранение.

Замена источника высот слоя

Слой карты является 3D-слоем, если в нем хранятся z-значения, как часть геометрии. Вы можете опознать 3D слой по полю Shape в его атрибутивной таблице: на конце значений будет указана буква Z, например, PointZ, PolylineZ или PolygonZ. По умолчанию, для отображения в 3D пространстве используются собственные 3D значения слоя.

Слой карты является 2D-слоем, если в нем отсутствуют z-значения, как часть геометрии. Для отображения в 3D пространстве используются значения поверхности высот сцены.

Слой Buildings является 2D слоем. Однако он отличается от других 2D слоев сцены, поскольку в нем хранятся значения высот, но не как часть геометрии, а в виде поля. В этом разделе вы измените источник высот слоя Buildings на это атрибутивное поле, вместо использования значений поверхности высот.

  1. На панели Содержание щелкните правой кнопкой мыши слой Buildings и щелкните Таблица атрибутов Open Table.

    Значениями в поле Shape являются Polygon, а не PolygonZ. Это подтверждает, что слой является 2D. Однако высота каждого объекта хранится в поле Base Elevation. (Слой находится в списке 3D слои на панели Содержание, поскольку его объекты вытянуты.)

  2. Закройте таблицу атрибутов.
  3. На панели Содержание щелкните правой кнопкой слой Buildings и выберите Свойства Свойства.
  4. В диалоговом окне Свойства слоя щелкните вкладку Высота.

    Объекты настроены на отображение на земле, т.е. на использование значений с поверхности высот сцены. Это используется по умолчанию для всех 2D слоев карт.

  5. Щелкните стрелку ниспадающего меню Объекты на и выберите На абсолютной высоте.

    Теперь вы можете использовать значения высот из другого источника, не с поверхности высот сцены, в данном случае из поля.

  6. Под пунктом Использование дополнительных высот объектов нажмите стрелку ниспадающего списка <выражение> и выберите Базовые высоты.
  7. Задайте для Вертикального преувеличения значение 1.25.

    Вы ранее применили это значение преувеличения к поверхности высот, поэтому теперь необходимо также применить его к новому источнику высот слоя. Иначе здания окажутся слишком низкими, по сравнению с другими слоями сцены.

    Диалоговое окно Свойства слоя для слоя Buildings

    Примечание:

    Для 3D слоев объекты по умолчанию находятся на абсолютной высоте, а их высоты извлекаются из z-значений геометрии.

  8. Убедитесь, что для Единиц высоты задано Метры. Нажмите OK.
  9. Теперь можно перемещаться по сцене и просматривать ее различных перспектив. Приблизьтесь к сцене.

    В нескольких местах, здания частично утоплены в поверхность. Это может случиться, когда в сцене используется несколько поверхностей высот. Значения Base Elevation в слое Buildings и значения поверхности Elevation_Kelburn возможно захватывались или обрабатывались разными способами; в любом случае они не точно соответствуют друг другу. Значения в слое Buildings могут быть более точными, но также важно, чтобы этот слой был выровнен с другими слоями сцены. Поэтому, желательно снова вернуть источник высот слоя зданий на поверхность земли.

  10. На панели инструментов быстрого доступа щелкните Сохранить Сохранение.

В дополнение к конвертированию карт в сцены вы можете импортировать существующие 3D-документы из ArcScene и ArcGlobe. Документы ArcScene открываются как локальные сцены, а документы ArcGlobe – как глобальные. Так как ArcGIS Pro и ArcScene имеют различные среды 3D, вам может потребоваться поработать со свойствами карты или слоя импортированного документа ArcScene, чтобы он отображался, как вы хотите. В некоторых случаях проще создать новую сцену в ArcGIS Pro, используя те же данные. Импортированные документы ArcGlobe в основном хорошо отображаются в ArcGIS Pro сразу или после небольших изменений.

Связанные разделы