set 操作

语法

  • set(attribute, value)

参数

  1. attribute - 选择器
    要设置的形状属性的名称。
  2. value -(布尔、浮点型、字符串、bool[], float[], string[] - 与属性类型相同)
    要分配给形状属性的值。
    注:

    并非所有形状属性均可写入。

描述

set 操作用于将值分配给当前形状的形状属性。 共有两种类型的形状属性:内置属性,例如 material.colorscope.tx;以及通用属性,声明为规则属性(请参阅 CGA 属性)。

相关内容

示例

内置形状属性

  • 启用水平修剪平面
  • 设置范围 0 的 x 平移
  • 将材料颜色的红色组件设置为 0.5
  • 将内置测试纹理分配给色彩映射表通道
  • set(trim.horizontal, true)
  • set(scope.tx, 0)
  • set(material.color.r, 0.5)
  • set(material.colormap, "builtin:uvtest.png")

通用形状属性

在通用属性 floorHeight 中存储楼层索引。 然后使用属性将所有第 3 层窗户的颜色变为粉色。

attr floorNumber = -1

const floorHeight = 4

Init-->
   extrude(30)
   comp(f) {side : Side }
   
Side-->
   split(y) { ~floorHeight: Floor }*
   
Floor-->
   set(floorNumber, split.index)
   split(x) { ~1   : Wall 
            | {~3  : Tile }* 
            | ~1   : Wall } 
Tile-->
   split(x) { 0.5  : Wall 
            | ~1   : MidTile 
            | 0.5  : Wall }
MidTile-->
   split(y) { 0.5  : Wall 
            | ~1   : Window 
            | 0.5  : Wall }
			
Window-->
   case floorNumber % 3 == 0:
        color(1.0, 0.0, 1.0)
        X
   else:
        X
使用 floorHeight 属性存储楼层索引

在本主题中