在我们的生活中,大家经常乘坐汽车、动车等交通工具,会经过如隧道这样的路段,也许大家在经过隧道的时候会有一种疑惑,这隧道是如何修建的?对于我们GISer来讲,可能会考虑如何将其数字化,是以二维的线数据表示还是用三维模型展示。今天我们谈谈如何利用CityEngine快速生成隧道模型。
其实,对于CityEngine来讲生成隧道模型很简单,主要通过模型替换的方法,所使用到的关键函数就是“i()”。
1、在建立规则之前,我们需要制作出隧道的模型组件,可以用3Dmax或sketchup完成。
2、接下来就是在CityEngine中新建工程“File-->New-->CityEngine Project”。
3、工程建立之后,我们需要建立场景(.cej),在Scenes文件下右键新建场景。
4、接下来将需要的素材(隧道组件)拷贝到“assets”文件夹中。
5、最关键的一步就是写规则,实现隧道的生成,规则如下:
Lot -->
extrude(world.y,10)
s('1,'1,'1.13)
center(xz)
comp(f){world.up:SuiDao_tex}
SuiDao_tex-->
extrude(world.y,10)
alignScopeToGeometry(yUp, 0,2)
i("suidao02.obj")
r(0,0,180)
center(xz)
t(0,-20,0)
setupProjection(0,scope.xy,6,4)
texture("texture.png")
projectUV(0)
6、规则建好以后我们就可以实际的体验一下了,首先在场景里面绘制一条道路,点击菜单“Graph—>Create Street Tools”,在场景里面绘制一条道路。
7、在右边的属性面板下,调整一下参数,如下。
8、然后再选中的状态下,把规则文件拖放到道路上,神奇的隧道就会生成啦!
9、看到这里大家可能觉得没有什么特别的呀,那么,大家可以尝试一下绘制一条弯曲的道路试试,再拖上规则,隧道沿着弯曲的道路生成,效果如下。