功夫不负苦心人
—— 三维模型符号创建亲历记
北京北方数慧 李小青
 
在对某市规划局综合管线管理信息系统的售前项目中,需要对该市的某一地段地面建筑物进行三维建模,但在构建的过程当中发现ArcScene提供的房屋模型符号都是国外的样式模型,有极少数的模型适合于中国的建筑形状。于是开始了“寻找”中国房屋建筑模型的历程。
首先在网络上搜索一番,希望能在网上找到一个中国式的ArcScene模型符号库,借助于别人的东西总是最简单的,也是最省事的做法,但最终以失败告终。那就找几个建筑模型吧,可惜“3D”模型不是那么好找,找到的一般都是一些三维模型平面图片,好不容易找到的几个立体“3D”模型,但太过于复杂,而且模型上也没有材质还需要自己再粘贴。此外如果使用这些复杂的模型,必定与其他ArcScene当中的原有模型符号不协调。怎么办呢,最终还是决定自己亲手做模型,然后将建筑的实际照片贴上去,一个中国式建筑的三维模型不就有了吗,先上网搜搜是怎么个做法,结果没有搜到,还是自己摸索吧。
以前从未用过3Dmax,看那一大堆的工具条就不知所措,怎么办?找高手!终于在一长期做3D设计的专业人士指导下在极短时间内学会了建实体——打散实体——贴面,一个小房屋就这样很快建起来了。但问题也接着而来,如何将建好的模型放到ArcScene符号库中,并使用这些模型符号进行地面房屋的构建?一番仔细的琢磨和咨询ESRI人员之后,终于清楚了。开始动手,建模——贴图——导出模型——转到Arcscene符号库,不行,发现导入到Arcscene中的房屋贴面材质丢失了,赶紧请教3D专业人士。3D专业人士认为要想在其他软件中使用3DMax的文件,必须导出成*3ds文件,相当于我们GIS软件中的点、线、面文件,但它本身不包括对模型的渲染和材质等,要带出渲染和材质必须是*max文件,即相当于我们GIS软件的*mxd工程文件,但在ArcScene中只识别*3ds文件,怎么办呢?
此时项目组给我的时间所剩无几了,没办法只能拿ArcScene中自带的洋楼房将就了,就这样将任务完成。但总是不相信国内就没有软件可以做这个的,再次请教ESRI的人员,将我遇到的问题进行阐述,人家认为是在导出*3ds文件时贴面的文件和模型文件不在同一路径下造成的。到底是3D专业人士的话可信还是非3D的咨询人员话可信?相信3D专业人士的话意味着方法是不可行的,要放弃;相信ESRI咨询人员的话就是一定可以做出来。还是试一把吧。在3Dmax下重新做了一个房屋模型,贴面文件和房屋模型放在同一路径下导出,放到ArcScene一试,还是不行,看不到贴面,唉,看来是要放弃了。
晚上回到家,虽然手上干着其他的事情,但心里还是想着建模的事,为什么就不行呢,难道真的没有一个软件能做吗?早上来上班,大衣没放开始重新试,还是不行,在网上搜索有关三维方面的文章,在一篇文章中提到maya的文件如果文件名是中文材质就会丢失,那我的模型是不是也是这个原因呢,修改文件名,哇,终于成功了,典型的中国房屋,真是功夫不负苦心的人啊。
在此附上在ArcScene中创建自己三维模型符号的步骤,供同胞们做此类技术参考。
(1) 在3Dmax或者是maya等三维软件中创建一个模型,导出成*3DS的文件,切记导出时文件名字一定要为英文,并在导出文件时导出的文件存放路径要和贴面文件以及模型文件在同一路径下;
(2) 打开符号管理器,ArcScene——〉tools——〉styles——〉styles manager,弹出如下图1对话框:

 
 
图1
(3) 点击对话框右侧的“styles”按钮,选择“create new”项,创建你自己的符号库,保存在一定的路径下。创建好的符号库在图1对话框左侧列表中将显示出来。
(4)在图1对话框左侧列表上点击刚创建的符号库名称,展开里边包括多个文件夹,在 “Marker Symbols”文件夹上点击,此时对话框右边显示空白。
(5)在图1对话框右边空白处点击鼠标右键显示“new”功能,点击将弹出下图2对话框:

 
图2
(6) 点击对话框上的“properties”栏中的“type”下拉菜单,选择“3D Marker Symbol”项,将弹出打开对话框,此时将你创建好的*3ds模型打开,点击“OK”,创建完成。若有多个模型,用这种方法一一添加,就可以完成你自己的符号库。
 
其实在创建自己的模型时,贴面的图片可以是拍摄的照片,为了简便也可以将ArcScene中的模型符号放大,将各个面切图然后再贴在模型上,使用这种方法可以简便的创建出很多种符合于自己需要的模型符号。