Доступно для организации ArcGIS, имеющей лицензию на дополнительный модуль Indoors.
Вы можете дополнительно создать 3D-сцену для использования в приложении Indoor Viewer, конвертировав слои indoor, используемые в 2D-картах в мультипатчи в ArcGIS Pro. Установив относительную высоту секций и их деталей, а затем преобразовав полигон здания в текстурированный фасад, вы можете создать трехмерную внутреннюю сцену для исследования и навигации по ней с использованием Viewer.
Примечание:
- Приложение поддерживает режим 3D, только если была опубликована соответствующая веб-карта. Поэтому автономные таблицы не нужно публиковать в веб-сцене.
- Содержание панели информации в режиме 3D зависит от конфигурации 2D веб-карты. Имена слоев в 3D-сцене должны соответствовать соответствующему 2D-слою на веб-карте, если не указано иное, а для 2D-слоя должны быть настроены всплывающие окна для отображения информации на информационной панели при щелчке по объекту в 3D-сцене.
Создание 3D-сцены
Перед подготовкой секций для работы в 3D выполните следующие действия:
- Запустите ArcGIS Pro и откройте проект, содержащий 2D-карту, которую вы подготовили для использования в Viewer.
- На вкладке Вставить щелкните ниспадающий список Новая карта и выберите Новая глобальная сцена.
- Скопируйте все слои, за исключением автономных таблиц, с завершенной 2D карты внутренних помещений и вставьте их в только что созданную вами сцену.
- Настройте свою сцену для поддержки этажей.
Примечание:
Сцены, не учитывающие этажность, не поддерживаются в приложении Viewer для ArcGIS Online. Они не будут поддерживаться в ArcGIS Enterprise версии 11 и выше.
- Создайте в своей базе данных Indoors набор классов объектов Indoors_3D. У него должна быть такая же пространственная привязка, как и у имеющегося набора набор классов объектов Indoors.
- На панели Содержание сцены отключите слой Elevation Surfaces, сняв отметку для слоя WorldElevation3D/Terrain3D.
Подготовка помещений для работы в 3D
Чтобы подготовить секции для 3D, выполните следующие шаги:
- Щелкните слой Секции правой кнопкой и выберите Свойства.
Появится диалоговое окно Свойства слоя.
- На вкладке Высота установите параметр Являются пространственными объектами на На абсолютной высоте.
- Задайте высоту объекта для использования опции Z-значения геометрии.
- Задайте для параметра Картографическое смещение значение 0.5 метра.
- На вкладке Определяющий запрос задайте для определяющего запроса Не включать значения и укажите атрибут USE_TYPE для всех лестниц и лифтов.
- Нажмите OK.
- Запустите инструмент Слой 3D в класс объектов:
- Для параметра Входной векторный слой используйте слой Помещения.
- Для параметра Выходной векторный слой введите имя Units3D и поместите слой в набор классов Indoors_3D.
Имя слоя секций в вашей сцене должно быть Units3D или Units. У выходного класса объектов на этом шаге может быть другое имя, но слой сцены для секций должен иметь правильное имя.
- Удалите слой Секции из сцены.
Примечание:
Оставьте только слой Units3D.
- Задайте для свойства Этажи значение LEVEL_ID, чтобы включить поддержку этажей для слоя Units3D.
- Включите всплывающие окна для слоя Units3D.
Настроенные всплывающие окна должны включать все доступные атрибуты.
Подготовка деталей для 3D
Чтобы подготовить детали для работы в 3D, выполните следующие шаги:
- Щелкните слой Details правой кнопкой и выберите Свойства.
Появится диалоговое окно Свойства слоя.
- На вкладке Высота установите параметр Являются пространственными объектами на На абсолютной высоте.
- Задайте высоту объекта для использования опции Z-значения геометрии.
- Задайте для параметра Картографическое смещение значение 0.5 метра.
- На вкладке Определяющий запрос задайте для определяющего запроса Где Тип пользователя включает значение и выберите все объекты, которые вам нужно показать в виде вытянутых объектов сцены.
Чаще всего это стены, двери, окна и колонны.
Примечание:
Лифты, лестницы и аннотации включать не надо.
- Задайте для слоя Details вытягивание.
- На вкладке Оформление, в группе Вытягивание, выберите опцию Минимальная высота
для параметра Тип вытягивания объекта.
- Нажмите на кнопку Выражение вытягивания
.
Откроется диалоговое окно Конструктор выражений.
- Введите высоту, на которую вы хотите вытянуть объекты, в текстовом окне Выражение и нажмите OK.
К примеру, введите 1, чтобы вытянуть объекты на 1 метр.
- Задайте для параметра Единицы измерения Метры.
- На вкладке Оформление, в группе Вытягивание, выберите опцию Минимальная высота
- Запустите инструмент Слой 3D в класс объектов:
- Для параметра Входной векторный слой используйте слой Детали.
- Для параметра Выходной векторный слой введите имя Details3D и поместите слой в набор классов Indoors_3D.
- Задайте для свойства Этажи значение Level_ID, чтобы включить поддержку этажей для слоя Units3D.
- Удалите слой Детали из сцены.
Примечание:
Оставьте только слой Details3D.
Отделение деталей
Для отделения деталей необходимо выполнить следующие шаги:
- Создайте копию слоя Details3D в сцене и переименуйте слои, присвоив следующие имена:
- Детали (стены)
- Детали (двери)
- Задайте для свойства Этажи значение LEVEL_ID, чтобы включить поддержку этажей для нового слоя.
- На вкладке Определяющий запрос обоих слоев Детали задайте для определяющего запроса Не включать значения и укажите атрибут USE_TYPE для всех лестниц и лифтов.
- На вкладке Определяющий запрос для слоя Детали (сцены) задайте для определяющего запроса Не включать значения и укажите линии с атрибутом USE_TYPE, представляющие стену или колонну (не стеклянные).
- На вкладке Определяющий запрос слоя Детали (двери) задайте для определяющего запроса Не включать значения и укажите линии с атрибутом USE_TYPE, представляющие двери, окна или стеклянные стены.
Эти детали частично прозрачные, чтобы было видно, что через них можно все увидеть или пройти через них.
- На вкладке Оформление, в разделе Эффекты, переместите бегунок Прозрачность на отметку 70% для слоя Детали (двери).
Конвертация полигона строения в 3D-фасад
Чтобы конвертировать полигон строения в текстурированный 3D-фасад, выполните следующие действия:
- Щелкните правой кнопкой мыши слой Facilities и выберите Свойства.
Появится диалоговое окно Свойства слоя.
- Задайте на вкладке Высота высоту объекта для использования опции Z-значения геометрии.
- Задайте для параметра Картографическое смещение значение 0.5 метра.
- Щелкните слой для слоя Строения на панели Содержание, чтобы открыть панель Символы.
Откроется панель Форматировать символ полигона.
- Перейдите на вкладку Свойства.
- Щелкните кнопку Слои
и выберите Процедурная заливка.
- Щелкните Правило, чтобы назначить пакет процедурных правил (*.rpk), и выберите файл Indoors_TexturedFacade.rpk в папке Символы, включенный в загружаемые данные продукта Indoors.
Примечание:
Вы можете использовать свой собственный пакет правил или текстурированные многоуровневые модели мультипатч здания для их индивидуального оформления. В приведенном примере правила используются атрибуты Относительная высота и Уровни над поверхностью земли, чтобы создать текстурированный 3D-фасад, разбитый по этажам.
Появятся параметры процедурной заливки. Наводите курсор на каждый параметр для получения информации о том, как значение изменит внешний вид законченного фасада строения.
- В разделе Атрибуты панели Форматировать символ полигона атрибуты HEIGHT_RELATIVE и LEVELS_ABOVE_GROUND считываются из полигона Facilities, на что указывают синие символы подключения базы данных:
- В разделе Опции отображения вы можете настроить стили и текстуры крыш, стен и окон.
- Нажмите Применить после каждого изменения параметра процедурной заливки, чтобы увидеть результат в сцене.
- В разделе Опции геометрии вы можете упростить полигон, немного его буферизовать или изменить размер окна.
- Щелкните Применить, чтобы создать итоговую модель текстурированного 3D-фасада.
- Запустите инструмент Слой 3D в класс объектов:
- Для параметра Входной векторный слой используйте слой Строения.
- Для параметра Выходной векторный слой введите имя Facilities3D и поместите слой в набор классов Indoors_3D.
Слой мультипатч Facilities3D будет добавлен к сцене.
- Переименуйте слой Facilities3D в Существующие парки.
Имя слоя строений в вашей веб-сцене должно быть Строения или Текстурированные строения.
- Удалите полигональный слой Строения из сцены.
- Включите всплывающие окна для слоя Текстурированные строения.
Настроенные всплывающие окна должны включать все доступные атрибуты.
- Задайте свойства Слоев Indoor для сцены, чтобы сделать сцену с поддержкой этажей.
- Выберите Текстурированные строения для параметра Строения.
- Выберите Уровни для параметра Этажи.
Включение отображения ребер (дополнительно)
Помещения и стены Indoors могут иногда выглядеть размытыми при их просмотре в ArcGIS Pro или в виде опубликованных слоев сцен. Чтобы улучшить видимость ребер и контрастность объектов мультипатч, вы можете включить отображения ребер.
- Для слоев Details и Units при необходимости разверните слои на панели Содержание и щелкните белый символ, чтобы открыть панель Форматировать символ Mesh.
- Нажмите на вкладку Галерея и выберите Белые (используйте текстуры) с ребрами.
Теперь вы можете опубликовать свою сцену в своей организации ArcGIS organization для работы с ней в приложении Viewer.