Blender имеет Python API. Поэтому я использую Python в Blender и импортирую библиотеки GDAL и создаю нативную сетку Blender непосредственно из данных ГИС. Единственное, с чем вам нужно быть осторожным, это то, что версия GDAL, которая у вас есть, соответствует версии Python в используемой вами версии Blender.
РЕДАКТИРОВАТЬ Плагины:
Если вы не хотите писать свой собственный скрипт с использованием Blender Python API и GDAL, есть несколько плагинов, которые доступны в стандартной комплектации, которые могут помочь:
- Импорт DXF
- Существуют импортеры для OBJ, X3D и VRML, и некоторые трехмерные ГИС-системы будут экспортировать в них (например, ArcScene и NVIZ), хотя этот маршрут может быть обязательно абсолютно бесплатным.
Существует дополнение для данных XYZ, но оно нестандартно и предназначено главным образом для молекулярных данных, хотя, возможно, вы могли бы согнуть их по своему желанию. Полный ассортимент готовых импортеров для Blender смотрите здесь . В Blender есть импортер PDS .IMG, но GDAL может только читать файлы IMG PDS (не путать с файлами Erdas IMG, которые отличаются).
Так что, действительно, лучший выбор, если у вас есть GeoTiff, ASC или любой другой растр данных о высоте, - это написать небольшой скрипт для итерации по растру, поскольку в большинстве случаев нет готового плагина, если вы не можете экспортируйте ваш DTM в DXF, VRML или OBJ.
Я обнаружил, что NVIZ (который входит в состав пакета GRASS) является полезным инструментом для визуализации данных матрицы высот в виде 3D-модели.
Чтобы установить плагин GRASS (если у вас уже установлен QGIS), просто перейдите в «Плагины» -> «Управление и установка плагинов» -> «Получить больше» и установите GRASS. Убедитесь, что он отмечен в вашем списке управления и установки плагинов!
После установки GRASS начните с добавления растрового слоя. Вы можете сделать это, перейдя в Layer -> Add Raster Layer -> Select
Затем создайте новый набор карт в GRASS. Сделайте это, перейдя в Плагины -> GRASS -> Новый набор карт или используйте панель инструментов GRASS, которая должна быть видимой. A. Выберите местоположение для вашего набора данных GRASS B. Введите новое имя местоположения по вашему выбору C. Выберите желаемую проекцию D. Выберите регион из выпадающего списка или выберите вручную, используя координаты широта / долгота (вы можете посмотреть широта / длина вашего местоположения в Интернете) E. Введите имя нового набора карт и затем нажмите «Готово».
Затем вы захотите загрузить свой DEM или растровый слой в GRASS. Вы сделаете это: A. Перейдите к плагинам -> GRASS -> Открыть инструменты GRASS B. В разделе «Список модулей» выберите «r.in.gdal.qgis» C. В разделе «Загруженный слой» выберите свой слой из выпадающий список и назовите выходной файл D. Нажмите «Выполнить»
Теперь вам нужно добавить растровый слой GRASS к вашему набору карт A. Перейдите к плагинам -> GRASS -> Добавить растровый слой GRASS или нажмите. Б. Выберите ваше местоположение и набор карт, затем выберите слой и нажмите «ОК».
Вы можете покрасить свой растр. Если это так, A. Убедитесь, что вы выбрали правильный выходной растровый слой B. Перейдите в Плагины -> GRASS -> Открыть инструменты GRASS C. В «Списке модулей» нажмите «r.colors.table». D. Выберите входной слой, а затем выберите «Тип таблицы цветов». E. Нажмите «Выполнить».
СЕЙЧАС для забавной части. Визуализация в 3D с использованием NVIZ. Таким образом, вы захотите A. Установить конкретную область карты для 3D-моделирования, перейдя в Плагины -> GRASS -> Редактировать текущую область GRASS. Затем либо вручную выберите нужную область, нарисовав мышью красную рамку, либо установите координаты в появившемся диалоговом окне. (Это помогает NVIZ определить, какое разрешение использовать). B. Перейдите к плагинам -> GRASS -> Открыть инструменты GRASS. C. В «Списке модулей» выберите «nviz». D. Выберите растр для «Высота» и «Цвет» (они могут быть одинаковыми. 1), и нажмите на квадрат справа (что означает «Использовать регион этой карты»). E. Нажмите «Бег».
Затем поиграйте с разными видами, высотой и освещением, пока не получите желаемое изображение!
Надеюсь, это поможет, и, пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы!
источник
Никогда не пробовал, но вот NVIZ . Все, что вам нужно, это QGIS, который вы можете скачать для Ubuntu Linux.
источник
nviz - это не отдельное приложение, а часть GRASS GIS для трехмерной визуализации и анимации. Если вы хотите экспортировать растры, вам нужна GRASS GIS (или GRASS в QGIS). Вы можете экспортировать матрицы высот в различные форматы файлов , включая поле высоты Terragen (.ter), VTK, PovRay, xyz и т. Д.
Вы также можете использовать Paraview, чтобы открыть файлы VTK и экспортировать их в другие различные форматы.
Но у Blender есть также плагины для непосредственного импорта DEMS, например, Blender Digital Elevation Importer или импорта шейп-файлов и растров ( ESRI Shapefile import / export и растровый импортер с географической привязкой ).
Kodex также представляет решение для визуализации данных QGIS с помощью Blender в формате SVG
Смотрите также Shaded Relief в Blender с данными SRTM
источник
Вы можете просто добавить файл dem как * .tif в blender с надстройкой «import image as plane». Посмотрите этот пост, где вы можете увидеть, как я сделал несколько 3d-карт высокого разрешения, используя демо в blender: -> /gis//a/80842/24809
После загрузки дема в блендер вы также можете редактировать его, как вы можете редактировать изображение.
источник
Взгляните на этот сайт: http://johnflower.org/tutorial/make-mountains-blender-height-maps
Это учебник по импорту DEM в Blender.
источник
Вы пробовали USGS & GTOPO30 DEM Importer ?
источник
IMO должна работать комбинация gdal2xyz.py и треугольника и реконфигурация выходных файлов треугольника (.node, .ele) в одном из поддерживаемых текстовых форматов blender или meshlab.
источник
terrain-obj Преобразование данных высот (обычно данных высот SRTM, файлов HGT) в 3D-модели Wavefront OBJ
https://github.com/perliedman/terrain-obj
источник