基于规则的建模

CityEngine 中,通过 CGA 规则描述建筑物模型。 CGA 规则文件由定义如何创建实际的建筑物几何的多个规则组成。 将 CGA 规则文件分配给形状后,就可以开始从该形状开始生成建筑物模型。

创建和编写规则文件

您可以单击新建 > CityEngine > CGA 规则文件创建 CGA 形状语法规则文件。

将在工程的 rules/ 目录中创建新的 CGA 文件并打开 CGA 编辑器窗口。 在 CGA 编辑器中,可以通过定义建筑物参数来开始语法编写。 因此,最小和最大建筑物高度被定义为规则属性。 之后,可以在检查器窗口中针对单个建筑物更改这些值。

attr minheight = 10
attr maxheight = 30

要了解有关在 CGA 编辑器中创建规则的详细信息,请参阅使用规则

每个形状(地块或街道形状)都有特定的初始规则,该规则会触发规则文件中的规则。 例如,默认情况下,CityEngine 中生成的地块具有 Lot 初始规则。 选择一个地块并查看检查器窗口,以查看当前的初始规则。

所选形状的检查器视图
显示了所选形状的检查器视图。

要了解有关检查器窗口中规则属性的详细信息,请参阅规则

初始规则定义了从规则集触发的第一条规则。 因此,您可以编写建筑物的初始规则,如下所示:

Lot --> extrude ( rand ( minheight, maxheight )) Envelope

地块将拉伸为 minheightmaxheight 之间的随机高度。

注:

在 CGA 编辑器中按 Ctrl + 空格键触发代码完成功能。 可能的命令及其参数将作为建议列出,使您无需在参考中查找命令即可编写 CGA 代码。

分配规则和生成

将创建的规则文件分配给相应的形状(在上方示例中,分配给地块):

  1. 场景编辑器窗口中选择地块图层 Lots
  2. 单击形状,然后在主菜单中单击分配规则文件
  3. 从规则目录中选择 CGA 文件。
  4. 单击确定

    现在,所选地块已分配了规则文件。

  5. 视窗窗口中选择地块。
  6. 在工具栏中单击生成以生成建筑物。

    您可以在 CGA 文件中使用简单的拉伸规则查看生成的建筑物是否存在偏差。

    生成的拉伸模型
    显示生成的拉伸模型。