setback(distance) { selector operator operations | ... }
setback(distance, uvSet) { selector operator operations | ... }
setback(distances) { selector operator operations | ... }
setback(distances, uvSet) { selector operator operations | ... }
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
distance | float | — | 退缩距离。正值向内退缩。 |
distances | float[] | — | 每条边的退缩距离数组。 |
uvSet | int | 0 | UV 集编号。用于保留原始 UV。 |
从形状的边界向内退缩指定距离,生成退缩后的内部形状和边界条带。常用于生成建筑红线内的可用地块。
基本退缩:
Lot --> setback(2) { front : FrontYard | back : BackYard | remainder : Building }
按边不同距离退缩:
Lot --> setback([2, 1, 3, 1]) { all : Garden | remainder : Building }
CGA.js 中的 setback 实现基于 CityEngine 2025.1 官方文档。
@StartRule\nLot --> primitiveCube(8, 0.2, 6)\n setback(1) { front: Yard | remainder: Building }\n\nYard --> color(0.2, 0.8, 0.2)\nBuilding --> extrude(4) color(0.6, 0.6, 0.7)