cityEngine学习笔记(二)

2019-07-31 17:00:57 浏览数 (1)

简单规则篇

这次的推送,是对上一次推送中函数的简单应用。先来看一下建好的模型:

模型很简单,仅仅是将二维数据拉起来,屋顶也没做什么处理(ce本身支持好几种屋顶,后续应该能用到)。

目标

使用上次推送中的几个函数,将二维数据拉成三维体块,将建筑物的屋顶面与墙面分离。

建模一般套路

这张图流程清晰,直接拿来用了!

步骤

1、准备二维数据;

2、将二维数拉成三维体块,这一步骤用到的函数是extrude;

3、将三维体块分开,分成side与top两部分,这一步骤用到的函数是comp;

4.1、为屋顶设置一种颜色,这一步骤用到的函数是color;

4.2、将墙面分成3部分,并为每部分墙面设置一种颜色,这一步骤用到的函数是split与color;

5、得到最终模型。

实现代码

代码语言:javascript复制
Lot-->
    extrude(10)
    extrudeModel

extrudeModel -->
    comp(f) { side : SplitModel | top : ColorTopFacade }

SplitModel -->
    split(y){4:color(0,1,0) GroundFloor. | 3:color(1,1,0)MidFloor. | ~1:color(1,0,0) TopFloor.}

ColorTopFacade -->
    color(0,0,1)
    TopFacade.

小结

今天的这个推送,只是对上次推送中几个函数很简单的应用了一下。这两篇推送,完全是按照找的教材路子走的。先学基础,打好了基础,以后再发挥!ps:cga的语法有些奇葩,还在努力适应中!

0 人点赞