resetGeometry 操作

语法

  • resetGeometry()

描述

resetGeometry 操作用于将几何重置为初始形状状态。 其他操作属性如下:

  • 修剪平面已移除,
  • 形状属性保持不变,但是范围枢轴重置为初始形状状态,
  • 声明为规则属性的通用属性保持不变(请参阅属性),
  • 投影矩阵保持不变。

相关内容

示例

递归退缩

退缩以递归的方式应用,以创建楼层面积总和(建筑面积)。 所有退缩均应针对初始形状应用。 因此,在应用退缩之前,将重置几何。 请注意,形状属性(在此指颜色)保持不变。

const maxGFA      = 5000
const floorHeight = 10
	
Example -->
    color("#FFAA00")
    SetBackRec(0, 0)

SetBackRec(sumGFA, iFloor) -->
    resetGeometry()
    setback(iFloor*3) {
        all       : NIL |
        remainder : 
          Floor(sumGFA + geometry.area, iFloor)
    }

Floor(sumGFA, iFloor) -->
    CreateFloor(sumGFA, iFloor)
    SetBackRec(sumGFA, iFloor + 1)
    
CreateFloor(sumGFA, iFloor) -->
    set(material.opacity,
        case sumGFA > maxGFA : 0.1 else : 1) 
    t(0, iFloor*floorHeight, 0)
    extrude(floorHeight)
递归退缩