当前位置: 首页 > news >正文

Blender中使用BlenderGIS插件快速生成城市建筑模型

导入下载 BlenderGIS 插件

去github上下载其压缩包,地址如下:

https://github.com/domlysz/BlenderGIS

在BlenderGIS中导入这个插件压缩包:

点击上方菜单栏的编辑,点击偏好设置

`

插件>从磁盘安装中导入刚刚下载的压缩包

image-20241205103646727

可以看到上方的菜单栏出现了GIS选项,这就说明插件导入成功了

image-20241205104703954

但是若你想使用,会发现弹出一个报错:No imaging library available. ImagelO module was not correctly installed.

image-20241127214132271

网上给出的一个比较可行的方法是:进入blender的文件夹,在python/bin/的文件目录下cmd,输入命令安装imageio:

python.exe -m pip install imageio

影像数据

点击GIS插件,选中Web geodata>Basemap

image-20241205111145097

我这里使用的是国产的天地图,不过这需要额外配置,具体操作可以看这篇文章:Blender关于GIS插件的安装及使用和天地图的配置 - 简书

可以看到影像地图已经显示在界面上了:

image-20241205114023242

Ctrl+G进行定位,输入位置和缩放级别(不过对于我额外配置的天地图好像不适用)

image-20241205114526331

定位到你所感兴趣的位置:

image-20241205115555086

E键可以将视口中的瓦片截取下来:

image-20241205115735076

载入地形起伏

blenderGIS可以从NASA SRTM获取获取海拔数据以生成地形起伏

不过:

image-20241205120132924

去官网获取API,注册然后申请就可以了:

Home | OpenTopography

image-20241209212433247

偏好设置>插件中输入你刚刚申请的API:
image-20241205120836773

选中GIS插件Web geodata>Get elevation

image-20241205120933803

在弹出的弹窗中点击确定:

image-20241205121235190

可以看到地图上已经有地形起伏了,可是不太显眼:

image-20241205121421289

我们直接在右侧的编辑器中控制其Z轴上缩放等级,调整达到一个你认为合适的数值即可:

image-20241205121838686

生成建筑模型

选择Web geodata>Get OSM,获取OSM的建筑路网等信息:

image-20241205122501753

选择你想要生成的模型类型,我这里选择的是建筑(building)、路网(highway)、土地(landuse)、自然(natural)和水路(waterway),记得勾选Elevation from object 这样可以让模型紧贴地形

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

模型已经生成了:

image-20241205141020176

如果需要的话还可以设置一下道路宽度,这样更加美观,可以看这篇文章:blender设置highway道路宽度_blender画路面-CSDN博客

我们也可以到OpenStreetMap官网获取数据

image-20241205132530935

定位框选你所想要的区域,再导出后缀为.osm的数据:

image-20241205133152355

在GIS插件中选择导入>Open Street Map xml导入下载的osm数据

image-20241205141301202

导出数据

点击文件>导出 导出模型数据,我这里选择导出glb格式

image-20241205143759047

在线模型网站中预览模型

image-20241205143956321

http://www.lryc.cn/news/500709.html

相关文章:

  • 【单元测试】单元测试的重要性
  • Codeforces Round 992 (Div. 2)
  • el-table一键选择全部行,切换分页后无法勾选
  • 负载均衡最佳实践及自定义负载均衡器
  • 大模型 LMDeploy 量化部署
  • 算法设计5_分支限界法
  • 2025年人工智能专业可以考哪些证书呢?
  • 仿真技术助力高尔夫球打破传统设计局限,实现球杆强大的功能
  • 微前端架构学习笔记
  • DApp开发:从合约到系统快速上线解决方案
  • react 中 useState 中的 set 方法异步解决
  • UAC2.0 speaker——带反馈端点的 USB speaker(16bit 单声道)
  • docker的简单使用
  • Selenium:强大的 Web 自动化测试工具
  • 设计模式 在PLM系统的应用场景介绍
  • C#请求https提示未能为 SSL/TLS 安全通道建立信任关系
  • 【人工智能】GaussDB数据库技术及应用
  • OpenAI12天 –第3天的实时更新,包括 ChatGPT、Sora、o1 等
  • 删除Yocto中build-x9hp_ms_a12_vemmc_ap2/tmp/work/aarch64-sdrv-linux/package后再编译出错问题
  • 2024三掌柜赠书活动第三十五期:Redis 应用实例
  • 观察者模式的理解和实践
  • 查看Windows系统上的Redis服务器是否设置了密码
  • 认识Java中的异常(半成品)
  • 生成SSH秘钥文件
  • wsl2子系统ubuntu发行版位置迁移步骤
  • 协程设计原理与实现
  • 合并区间C和C++的区别、布尔、整型、浮点、指针类型和0做比较、malloc、calloc、realloc的区别
  • Flutter 图片编辑板(一) 事件路由
  • 【Java】—— 图书管理系统
  • 数据库基础入门:从零开始学习数据库的核心概念