Изучение пакета карты
Сначала загрузите данные. Затем создайте проект в ArcGIS Pro.
- Скачайте сжатую папку naperville.zip.
- Найдите загруженный файл у себя на компьютере и распакуйте его в местоположение, где эти данные будет просто найти, например, в папку Документы.
Данные предоставлены городом Нейпервилл, Иллинойс, США. Папка содержит пакет карты, пакет слоя сцены и файловую базу геоданных.
Сейчас вы создадите пустой проект ArcGIS Pro и начнете импортировать данные.
- Запустите ArcGIS Pro. Если будет предложено, войдите под лицензированной учетной записью организации ArcGIS.
Примечание:
Если у вас нет доступа к ArcGIS Pro или учетной записи организации ArcGIS, см. варианты доступа к программному обеспечению.
Когда вы открываете ArcGIS Pro, вам предоставляется возможность создать новый проект или открыть существующий. Если вы уже создавали проект, вы увидите список последних проектов.
- Под Новый щёлкните Запуск без шаблона.
- На вкладке Вставка в группе Проект щелкните Импорт карты.
- В окне Импорт перейдите к папке Naperville, которую вы разархивировали, и дважды щелкните на Vector_Content_Naperville.mpkx.
Глобальная сцена Vector_Content_Naperville.mpkx для города Нейпервилл открыта в ArcGIS Pro. На панели Содержание вы увидите, что пакет сцены включает слой 2D BuildingFootprints и два слоя 3D StreetFurniture и BuildingShells.
- На панели инструментов быстрого доступа нажмите кнопку Сохранить.
Подсказка:
Вы также можете нажать Ctrl+S, чтобы сохранить свой проект.
- В окне Сохранить проект как перейдите к папке извлеченных данных и назовите ваш проект CityofNaperville.
Вытягивание 2D-контуров зданий
Один из простейших способов для добавления объемных объектов в 3D-вид - это вытягивание. Этот способ берет 2D-форму и вытягивает ее вертикально, чтобы создать вид 3D-объекта. Простые здания хорошо подходят для этого метода, потому что у них вертикальные стены и их высота может быть записана (или вычислена) в обычном числовом поле.
- На панели Содержание в группе 2D-Слои щелкните правой кнопкой мыши BuildingFootprints и выберите Таблицу атрибутов.
- В таблице атрибутов BuildingFootprints просмотрите поля Base Elevation, Building Height и Number of Floors.
Эти поля можно использовать для установки базовой высоты зданий и для вытягивания объектов зданий.
- Закройте таблицу.
Для того, чтобы применить 3D векторные символы к слою BuildingFootprints, вы переместите слой в группу 3D-слои.
- На панели Содержание перетащите слой BuildingFootprints в категорию 3D-слои.
Слой выглядит фрагментированным и неравномерным, поскольку вершины каждого полигона расположены на неровной поверхности, а их площадь также вычислена неравномерно по ней.
Если для высоты каждого контура здания задано одно значение, они могут показаться плоскими.
- На панели Содержание щелкните правой кнопкой мыши слой BuildingFootprints и выберите Свойства.
Откроется окно Свойства слоя.
- Щёлкните вкладку Высоты в диалоговом окне Свойства слоя. Для опции Объекты выберите На абсолютной высоте.
- Под Использование дополнительных высот объектов для Поле выберите Base Elevation из ниспадающего списка.
- Нажмите OK.
Контуры зданий отображаются плоскими и со своей правильной базовой высотой.
Далее вы вытянете каждое из зданий до их высоты.
- На панели Содержание убедитесь, что слой BuildingFootprints выбран и на ленте щелкните вкладку Векторный слой.
- В группе Вытягивание щелкните Тип и выберите Базовая высота.
- В группе Вытягивание для Поля выберите Building Height.
Слой BuildingFootprints вытягивается на основе значения Building Height.
Примечание:
Если вы работаете с данными, у которых нет отдельного поля для высоты, вы можете оценить высоту зданий с помощью выражения, например, “Number of Floors * 3.5”.
- Сохраните проект.
Добавление 3D-символов зданиям
Вытягивание помогает визуализировать пространство реального мира, занимаемое зданиями, но оно не показывает другую полезную информацию, например, количество этажей для каждого здания. Это может быть важно для служб быстрого реагирования и городского планирования. Вы можете заменить сплошной цвет другим типом символа - процедурным символом, чтобы добавить дополнительную информацию в отображение.
Процедурным символ - это скрипт, который может конструировать дополнительную геометрию, цвета и текстуры из геометрии объекта источника и применять это как символ в сцене. Более подробно о Процедурном символе.
- На панели Содержание убедитесь, что выбран слой BuildingFootprints. На ленте на вкладке Векторный слой в группе Вытягивание щелкните стрелку ниспадающего списка Тип и выберите Нет.
- В группе Отображение щелкните Символы.
- На панели Символы щелкните символ для слоя, чтобы изменить его.
- На панели Форматировать полигональный символ, в строке поиска наберите stack и нажмите Enter.
- В результатах щелкните символ Stacked Blocks, чтобы присвоить его слою.
Символы слоя BuildingFootprints обновлены.
Далее вы настроите процедурный символ, чтобы подключиться к атрибутам отдельных объектов.
- На панели Форматировать полигональный символ, на вкладке Свойства, щелкните вкладку Слои.
- Для Представление выберите Узкий разделитель. Для Единицы выберите Футы.
- Для TotalHeight щелкните кнопку Задать сопоставление атрибутов.
Появится окно Задать сопоставление атрибутов.
- В окне Задать сопоставление атрибутов выберите BuildingHeight и щелкните ОК.
- Для Уровни щелкните кнопку Задать сопоставление атрибутов, выберите число этажей Number of Floors и щелкните OK.
- В нижней части панели Символы щёлкните Применить.
Подсказка:
Свойства символа с сопоставлением атрибута имеют синий значок базы данных.
Каждое здание отображается в заданной высоте с полосками, которые показывают количество этажей. Эти здания с плоскими крышами, иногда называемые здания уровня детализации (LOD) 1, дают ресурс, который поддерживает многие потребности 3D картографии.
Однако не у всех зданий плоская крыша. Чтобы моделировать формы скатных крыш, вам необходимо перейти из простых вытянутых форм в более сложный способ моделирования зданий. Есть много способов создания этого типа данных - некоторых из них будут описаны в следующих уроках - но, для этого упражнения, вы будете считать, что данные подготовлены заранее или обработаны поставщиком данных.
Примечание:
Доступны другие уроки ArcGIS, например Получение форм крыш для городского строительства и Создание реалистичных зданий с помощью редактирования мультипатчей для процесса создания крыш с помощью данных лазерного сканирования.
Далее вы изучите здания с неплоскими крышами.
- На ленте на вкладке Карта щелкните Закладки и щелкните Скатная крыша.
Сцена приблизится к прямоугольному строению.
- На вкладке Карта в группе Слой щелкните Добавить данные. Перейдите к папке Naperville и дважды щелкните NapervilleLidar.slpk.
Слой данных лидар добавлен в сцену.
Точки лидара сейчас очень большие, что затрудняет просмотр формы здания.
- На панели Содержания щелкните правой кнопкой NapervilleLidar и щелкните Символы.
- На панели Символы для Размера символов введите 30 и нажмите Enter.
Размер каждой лидарной точки уменьшился, форма здания стала видна.
- На панели Содержание отключите слои BuildingFootprints и NapervilleLidar, и включите слой BuildingShells.
Слой BuildingFootprints состоит из 2D полигонов, которые вы вытянули на основе атрибута высота. Слой BuildingShells содержит реальные 3D объекты, являющиеся объектами мультипатч, у которых их 3D свойства поддерживаются как часть геометрии и не требуют атрибутов для вытягивания и отображаются корректно в 3D пространстве. Лидарные точки выстраиваются по линии формы крыши; здания слоя мультипатч (LOD 2) лучше всего совпадают с объектами реального мира.
- Сохраните проект.
Использование процедурной текстуры здания
3D модели хранятся в базе геоданных как классы пространственных объектов мультипатч. Класс пространственных объектов мультипатч - это то же самое, что и классы других пространственных объектов, например точек или полигонов, он содержит геометрию на каждый объект и значения атрибутов на каждый объект. Кроме того, он имеет определенные опции для отображения символами.
Внешнюю оболочку мультипатча можно раскрасить множеством способов. Он может использовать изображение, например, фотографию с улицы, или цвет, например его код зонирования, или можно сгенерировать его процедурно и добавить в реальном времени. Внешнее представление мультипатча обычно называется его текстурой. Это упражнение будет использовать процедурное текстурирование для конвертирования просто белых зданий в что-то более информативное.
- На панели Содержание раскройте слой BuildingShells и щелкните символ, чтобы открыть панель Символы.
- На панели Символы щелкните вкладку Галерея.
- Убедитесь, что поиск установлен для Все стили. В строке поиска наберите procedural и нажмите Enter.
- В результатах щелкните Фасады мультипатчей.
Подсказка:
Чтобы увидеть полное название текстуры, наведите курсор на текстуру.
Мультипатч отображается с процедурно сгенерированными текстурами, используя параметры по умолчанию символа.
- На панели Содержание щелкните символ для слоя BuildingShells.
- На панели Символы щелкните вкладку Свойства и щелкните вкладку Слои.
- Для Единиц щелкните кнопку Задать сопоставление атрибутов и в появившемся окне Задать сопоставление атрибутов убедиться, что для него установлено Единицы и щелкните ОК.
- На панели Символы для Единицы выберите Футы.
- Для EaveHeight щелкните кнопку Задать сопоставление атрибутов. В окне, которое отображается, выберите поле EAVEHEIGHT и щелкните ОК.
- Для Уровни щелкните кнопку Задать сопоставление атрибутов и в появившемся окне выберите Число этажей и щелкните ОК.
Далее вы установите параметры для полосатой текстуры вертикальной стены.
- Для Текстура фасада выберите Цвет. Для Цвет фасад выберите Gray 30%.
Подсказка:
Чтобы увидеть название цвета, наведите на него курсор.
- Раскройте Опции и задайте Процент разделения на 10%.
- Щелкните Применить.
Символы слоя обновляются.
- Сохраните проект.
Далее вы добавите дополнительные векторные слои, чтобы улучшить отображение квартала 3D города.
Добавьте элементы улицы реального мира.
Кроме зданий, на улицах города часто встречаются уличные объекты, такие как скамейки, фонари и остановки общественного транспорта. Это важные элементы, которые нужны жителям в городской инфраструктуре. Для этого упражнения у вас есть только небольшой набор примеров объектов, но процесс останется тем же, независимо от количества объектов.
- На панели Содержание отключите слой StreetFurniture.
- Щелкните правой кнопкой StreetFurniture и щелкните Приблизиться к слою.
Сцена приближается к части города с уличными объектами.
- Переместите и поверните сцену так, чтобы увидеть точки StreetFurniture под углом относительно улицы.
- Масштабируйте сцену и наблюдайте за размером символов StreetFurniture.
Сейчас точки привязаны к размеру экранного пространства, что означает, что символы отображаются с размером на основе пикселов вашего экрана. Это очень эффективно для точек местоположения, потому что они гарантировано будут видны при любом масштабе. Однако, это не очень хорошо для представления объектов реального мира.
Символа с размером реального мира отображаются с помощью согласованного объемного размера. Это согласованно с размерами реального мира, где объекты, находящиеся дальше, выглядят меньше.
Далее вы измените размеры символа для StreetFurniture для соответствия размерам реального мира.
- На панели Содержание щелкните правой кнопкой на слое StreetFurniture и щелкните Свойства.
- В диалоговом окне Свойства слоя на вкладке Отображение отметьте опцию Отображать 3D-символы в единицах реального мира.
- Нажмите OK.
- Масштабируйте сцену и наблюдайте за размером символов StreetFurniture.
Далее вы замените кнопки 3D моделями.
Данные StreetFurniture, которые вы используете в э том упражнении, включают уникальные значения для идентификации фонарей и парковых скамеек. Вы будете использовать эти уникальные значения в данных, чтобы создать два класса. Вы можете применить различные символы 3D модели к каждому классу. Для ваших собственных данных вы можете использовать столько классов, сколько вам нужно.
- На панели Содержание убедитесь, что слой StreetFurniture выбран. Щелкните на ленте вкладку Векторный слой.
- В разделе Отображение щелкните стрелку ниспадающего списка Символы и выберите Уникальные значения.
- На панели Содержание для Поле 1 убедитесь, что выбрано TYPE.
- На вкладке Классы щелкните кнопку Добавить все значения.
- Щелкните Больше и отключите Показать все остальные значения.
Далее вы измените каждый тип элемента улицы
- Щелкните символ для Light.
- Щелкните вкладку Галерея и найдите light в Все стили.
- В разделе 3D Street Scene результатов выберите символ Overhanging Street – Light off.
Сцена обновляется и фонари теперь отображаются символами фонарей, выступающими над улицей.
- Наверху панели Символы щелкните на обратной стрелке и на вкладке Классы щелкните на символы для Park Bench.
- Найдите bench в Все стили и выберите символ Park Bench 2.
Точки сейчас отображаются моделями с реалистичными размерами, но они неправильно направлены относительно улицы.
Далее вы определите поворот символа на основе атрибута.
- В верхней части панели Символы щелкните стрелку назад. Щелкните вкладку Изменять символы по атрибуту и раскройте Вращение.
- Для Направление (Z) выберите ROTATION. Для Стиль вращения выберите Географический.
Символы фонарей теперь повернуты и висят над улицей, а уличные скамейки повернуты друг к другу.
- Сохраните проект.
Значения вращения были вычислены заранее для этих данных. Можно вручную вводить значения для нескольких объектов или использовать инструменты геообработки по близлежащим улицам для множества объектов.
Добавьте тематические деревья
Еще один основной элемент большинства городов - это озеленение и деревья на улицах. Вы можете использовать те же способы для точечных объектов деревьев, как вы делали для уличных объектов — то есть, создать набор уникальных классов и отдельно задать символы.
- На вкладке Карта щелкните Добавить данные Перейдите к папке Naperville, которую вы скачали, потом в папки NapervilleAdditionalData.gdb и DS, и дважды щелкните TreePoints.
Слой TreePoints добавляется на панель Содержание.
- Щелкните символ для TreePoints и выполните поиск галереи для деревьев, далее под 3D-растительность - Тематический выберите Липа.
Деревья добавлены на карту, но они лежат на плоскости. Чтобы деревья были правильной высоты, необходимо добавить высоту.
- На панель Содержание щелкните правой кнопкой мыши слой TreePoints и откройте Свойства.
- В Свойствах слоя перейдите на вкладку Высота и задайте следующие параметры:
- Для опции Объекты выберите На абсолютной высоте.
- Для Поля выберите HEIGHT.
Высота настроена как поле height для каждого дерева.
- Нажмите OK.
- Если необходимо, отодвиньте карту, чтобы лучше видеть добавленный слой TreePoints.
Все символы изменяются, предустановленный слой применяется автоматически, и слой TreePoints с подходящей высотой, заданной для каждого объекта, добавляется в сцену.
Создание закладок
Сцена города выглядит хорошо, но может быть сложно приблизиться к определенным местам, особенно если вы незнакомы с географией Нейпервилла. Закладки сохраняются важные точки просмотра в сцене и помогают пользователям быстро приближаться к основным локациям в сцене.
- На вкладке ленты Карта в группе Навигация щелкните Закладки и выберите Организовать закладки.
Откроется панель Закладки.
- В сцене перейдите к виду, который показывает вид уличных объектов на уровне поверхности Земли
- На панели Закладки щелкните Новая закладка.
- В окне Создать закладку для Имя введите Street Furniture и щелкните OK.
Ранее в этом руководстве вы использовали закладку, чтобы приблизиться к примеру скатной крыши. Вам больше не нужна эта закладка, вы удалите ее.
- На панели Закладки наведите курсор на Pitched Roof и щелкните кнопку Удалить.
В некоторых городах есть известные точки интереса. Будет полезно создать закладки для этих мест, чтобы пользователи могли быстро переходить к ним. Вы создадите дополнительную закладку для местной старшей школы.
- На вкладке Карта в группе Запрос щелкните Найти местоположение.
- На панели Найти местоположение в строке поиска наберите Naperville Central High и нажмите Enter.
Поиск найдет старшую школы и приблизится к ней, она в центре экрана.
- Перейдите ближе к школе и переместите или поверните вид сцены, чтобы сделать желаемую закладку.
Подсказка:
Вы можете масштабировать, щелкая правую кнопку и перетаскивая через сцену.
- На панели Закладки щелкните Новая закладка. В окне Создать закладку для Имя введите Naperville HS и щелкните OK.
У вас есть три закладки, которыми можно пользоваться для перемещения по 3D сцене
Примечание:
Вы можете добавить столько закладок, сколько хотите. Если вы опубликуете эту сцену в вебе, закладки автоматически будут включены как слайды в онлайн Scene Viewer.
- Сохраните свой проект и закройте ArcGIS Pro.
Многие сцены фокусируются на моделировании представлений реального мира с реалистичными размерами и формами для таких рабочих процессов, как визуализирование, планирование строительства и работы по изучению влияния на окружающую среду. Эти сцены часто используют символы и реалистичными размерами, которые связаны с атрибутами отдельных объектов, особенно для таких свойств, как вращение, ширина и высота.
Использование тематических элементов тоже возможно, но в основном с цветами и текстурами, которые не влияют на объемную форму объектов. В этом уроке вы использовали процедурные текстуры на зданиях, чтобы различить крыши и стены и показать количество этажей. Вы также рассмотрели, как пользователи могут взаимодействовать со сценой, добавив закладки для просмотра основных видов.
Вы можете найти больше учебных пособий в галерее учебных пособий.