语法
- shapeL(frontWidth, leftWidth) { selector operator operations | ... }
- shapeU(frontWidth, rightWidth, leftWidth) { selector operator operations | ... }
- shapeO(frontWidth, rightWidth, backWidth, leftWidth ) { selector operator operations | ... }
参数
- frontWidth - float前翼的深度。
- leftWidth - float左翼的宽度。
- rightWidth - float右翼的宽度。
- backWidth - float后翼的深度。
- selector - selector
- shape - setback 面(例如 L、U 或 O 形状)。
- remainder - 选择面的其余部分。
- operator - float运算符用于定义如何使用退缩面生成后续形状。 这同样适用于具有多个面的形状。 有效运算符如下:
- ":" 将每个面放入新形状。
- "=" 与选择器对应的所有面将合并成一个新形状。
- operations - float要在新创建的形状上执行的形状操作的顺序。
描述
shapeL、shapeU、shapeO 操作会根据预定义的空间选择器选择多条边,并使其退缩用户定义的距离。
相关内容
示例
L 形状
attr myFrontDepth = 5
attr myLeftWidth = 11
LotInner -->
Lot
Lot -->
offset(-3,inside)
shapeL(myFrontDepth,myLeftWidth) { shape : Footprint | remainder : NIL }
Footprint -->
extrude(rand(10,20))
color(1,0,0)
U 形状
attr myFrontDepth = 5
attr myRightWidth = 3
attr myLeftWidth = 11
LotInner -->
Lot
Lot -->
offset(-3, inside)
shapeU(myFrontDepth,myRightWidth,myLeftWidth) { shape : Footprint
| remainder : NIL }
Footprint -->
extrude(rand(10,20))
color(1,0,0)
O 形状
attr myFrontDepth = 5
attr myRightWidth = 3
attr myBackDepth = 2
attr myLeftWidth = 11
LotInner -->
Lot
Lot -->
offset( -3, inside)
shapeO( myFrontDepth, myRightWidth, myBackDepth, myLeftWidth )
{ shape : Footprint | remainder : NIL }
Footprint -->
extrude(rand(10,20))
color(1,0,0)