CIM的发展与建设逐步进入快车道,而其建设离不开三维模型的支持。作为大规模城市快速建模工具,CityEngine将发挥越来越重要的作用。CityEngine是Esri旗下的一款三维软件,基于CGA(Computer Generated Architecture)规则进行建模,具有使用方便、支持大场景、快速建模等特点,与ArcGIS系列软件配合使用,可以极大的提高效率。
如果你喜欢这篇文章,欢迎收藏和转载,转载请注明出处:https://blog.csdn.net/shaxiaozilove/article/details/116902881
如果有任何问题,也欢迎随时与我沟通和联系。
官方提供学习资源 https://doc.arcgis.com/en/cityengine/
一、建模流程
1、创建cityengine工程
工程目录分析
2、创建scene
坐标系的选择及修改
坐标系等信息的查看设置
3、导入建模数据(shapefile或gdb)
4、创建cga文件
建筑物高度是基本信息,与矢量数据属性楼层数(floor)关联
5、cga文件的应用
选中建筑矢量对象
应用cga文件
开始规则
定义属性及其值
对象属性
节点
生成模型
6、模型的导出(坐标系与scene坐标系一致)
针对arcgis
gdb -> arcgis pro中生成slpk时可以修改坐标系
slpk
针对threejs
gltf/glb
dae
obj
二、建模分析
- 需要解决或避免的问题
- 建模思路分析
三、CGA文件分析(以wuhan_texture.cga为例)
由属性、对象规则、函数、变量等构成
1、坐标系
参考https://blog.csdn.net/qq_25236045/article/details/50329353
2、属性的设置
设置初始值
值与对象属性关联
3、对象规则
开始规则
建模的过程:建筑矢量对象在规则之间按顺序流转
四、城市级数据分区建模(针对贴图模型?)
- 分区规则
按现在的切片规则进行划分(存在建筑物被分割的问题)
按街区进行划分(街道、社区)
- 对每一个分区,记录数据外包围盒范围、中心点等信息,通过索引文件对不同分区模型文件进行组织(类似于3DTiles)
- 模型加载(threejs arcgis js api)
threejs中的模型加载,仅通过position以及rotation设置,位置正确性