CE规则文件和注释的使用
1.CGA规则文件的使用
本次实验将创建一个简单的规则文件,以熟悉CGA规则文件的使用方法,包括起始规则的声明等,将其应用于初始形状并生成模型。
创建规则文件
在导航器窗口中选择工程的rules文件夹。单击新建→CityEngine→CGA规则文件。或者,在导航器窗口中右键单击规则文件夹,然后选择新建→CGA规则文件。定义规则文件的名称。单击完成。

图 1 创建规则文件
系统随即创建一个新的 CGA 文件,并在 CGA 编辑器窗口中将其打开。 除了含有某些标题信息外,该文件为空。

图 2 CGA编辑器窗口
CityEngine 可将注记 @StartRule识别为初始规则,因此在将规则文件分配给初始形状时无需手动指定初始规则。
Lot规则会将初始形状拉伸到一个高度,该高度将由您之前定义的两个属性的值之间的随机选择值进行定义。

图 3 分配规则文件

图 4 生成模型
2.CGA注释符
CGA注释符的三种表达方式:行注释、段落注释、行内注释
(1)行注释
CGA提供了两种注释符来进行行注释。一种是采用C语言的“//”注释符,另一种是采用Python语言的“#”注释符。
(2)段落注释
CGA采用C语言的“/…/”注释符为段落提供注释。
(3)行内注释
CGA允许在代码行内提供注释,同样采用C语言的“/…/”注释符标志。

图 5 CGA注释符
基本规则
定义属性:使用attr关键字定义属性,例如attr height = 250定义了一个名为height的属性,值为250。
拉伸:使用extrude函数将几何体拉伸到指定高度,可以通过指定高度参数或指定世界坐标轴和高度参数来进行拉伸。
面分割:使用comp(f)函数对面进行分割,可以指定不同的面和对应的分割规则。
边分割:使用comp(e)函数对边进行分割,可以指定不同的边和对应的分割规则。
点分割:使用comp(v)函数对点进行分割,可以指定不同的点和对应的分割规则。
颜色:使用color函数设置颜色,可以通过RGB值或十六进制值来指定颜色。