contextCount 函数(上下文查询)

语法

  • float contextCount(target, label)

参数

  1. target - selector
    • intra - 针对同一形状树中的标注形状(即来自同一初始形状)进行检查。
    • inter - 针对其他形状树中的标注形状(即由邻域中的其他初始形状生成)进行检查。
    • all - 检查 intrainter
  2. labelstring
    仅对与请求的 label 匹配的形状执行上下文查询。 不得为空。 如果 label 为空,将返回 0。

返回

具有给定 label 的形状数。 如果未找到与指定 label 匹配的形状,将返回 0。

描述

contextCount 函数是一个上下文查询,用于返回环境中具有指定标注的形状数。

注:

  • 了解有关条件和内部上下文中上下文查询的重要特性的详细信息。
  • 每个 label 操作不会“标注”当前形状,但是会创建单独计数的新标注形状。

相关内容

示例

在本示例中,地块规则将应用于单个初始形状(内部上下文)。 根据形状的大小,分割操作会生成不同数量的切片。 contextCount 查询用于根据具有标注“切片”的形状总数对切片进行着色。

Lot --> split(x) { ~1 : Split }*

Split --> split(z) { ~1 : Tile }*

Tile --> label("Tile") Color

Color --> case contextCount(intra, 
                            "Tile") <= 9 : 
                            color(0,1,0)
          else : color(1,0,0)
已应用 contextCount 的地块规则