CGA 样式

您可以使用样式来保存一组属性值。 这有助于您保存、管理和检索给定规则的偏好设置。

创建新样式

  1. 生成以下规则并选择模型。

    @Color
    attr col = "#FF0000"
    attr height = 1
    
    Lot --> 
        color(col)
        extrude(height)

  2. 检查器中更改属性值。
  3. 打开默认样式下拉菜单,然后单击添加新样式

    该操作将打开创建并应用新样式对话框,其中具有以下选项:

    样式名称

    为您的样式使用唯一的名称。 系统将覆盖具有相同名称的现有样式。

    基于

    新样式所基于的参考样式。 该样式可以是默认样式,也可以是当前样式(如果已应用)。

    描述

    样式的可选描述。

  4. 单击确定
    • 已创建一个新样式并将其应用于所选形状。
    • 该新样式已添加到 CGA 文件中。

样式管理器

要将 CGA 样式应用于形状,请执行以下操作:

  1. 选择一个已分配了规则文件的形状。
  2. 检查器规则选项卡中打开样式下拉菜单。
  3. 选择预览并选择样式...

    样式管理器将显示所有可用样式。 未定义样式的规则文件仅会显示一种样式(默认样式)。

  4. 单击要分配至所选形状的样式。
  5. 单击确定(或双击该样式)。

或者,可单击红色十字以删除样式。

工具栏选项

  • 切片视图/滚动视图:将 CGA 样式显示为切片或列表。
  • 无用户属性/具有用户属性:可有选择地在形状上保留用户设置的属性以及覆盖默认样式属性。

CGA 规则文件中的样式

在使用创建样式向导创建新样式时,系统将修改活动 CGA 规则文件,并在规则文件底部创建一个新样式部分。 系统会根据具体创建选项,将不同的属性集添加到新样式。

  • 根据默认样式创建新样式:系统会将所有用户设置的属性作为属性添加到新样式,并将其用户值设置为初始值(默认规则值)。
    style MyStyle
    attr col = "#006600"
    attr height = 2
  • 根据当前样式创建新样式:新样式将对当前样式进行扩展。 系统仅会将不同于基本样式的属性作为属性添加到新样式,并将继承基本样式的属性。
    style MyStyle1 extends MyStyle
    attr col = "#99FF99"
注:
  • 当基于现有样式创建新样式时,新样式将扩展父样式。
  • 除了使用向导之外,您还可以在 CGA 编辑器中添加和修改样式,请参阅 CGA 参考中的样式

样式关键字

# -- facade.cga
...
attr Window_Width = 1.2
attr Door_Height = 2.5

...
// all your Facade CGA rules
...

style Facade_Wide
attr Window_Width = 2.2
attr Door_Height = 2.8

通过使用样式关键字和样式名称来添加新样式,您可以定义新的“命名空间”。 样式关键字下方的所有定义均仅对此样式有效。 在上面的示例中,在默认样式中设置为 1.2 的 attr Window_Width 将在 Facade_Wide 样式中被覆盖为 2.2。

扩展关键字

# -- facade.cga
...
attr Window_Width = 1.2
attr Door_Height = 2.5
...
// all your Facade CGA rules
style Facade_Wide
attr Window_Width = 2.2
attr Door_Height = 2.8

style Facade_Wide_2 extends Facade_Wide
attr Window_Width = 2.4

style Facade_Wide_3
attr Window_Width = 2.4

样式可从现有样式进行扩展。 扩展样式将会从其父样式继承所有定义。 在上例中,

  • 样式 Facade_Wide_2 将从其父样式 Facade_Wide 中继承 Door_Height(其生成值为 2.8)。
  • 样式 Facade_Wide_3 不会扩展父样式,且将从默认样式继承其 Door_Height 的值(生成为 2.5)。
注:

所有样式(无论是否扩展)都将隐式扩展默认样式。