shapeO operation


  • shapeO(frontWidth, rightWidth, backWidth, leftWidth ) { selector operator operations | selector operator operations


  1. frontWidthfloat
    Depth of front wing.
  2. rightWidthfloat
    Width of right wing.
  3. backWidthfloat
    Depth of rear wing.
  4. leftWidthfloat
    Width of left wing.
  5. selectorselector
    • shape—The setback polygon
    • remainder—Selects the remainder of the polygon.
  6. operatorfloat
    The operator defines how the setback polygons are used to generate successor shapes. This also applies to shapes with more than one faces. Valid operators are:
    • : —each polygon is put into a new shape.
    • =—all polygons corresponding to the selector are combined into one new shape.
  7. operationsfloat
    A sequence of CGA operations to execute.


The shapeO operation selects a number of edges, depending on predefined spatial selectors, and set them back by a user-defined distance.


This operation is another way of applying setbacks. For example

shapeL(frontWidth, leftWidth) { selector operator operations | ... }

can also be achieved with the setback operation and the comp function:

setback( comp(fe) { front=frontWidth | left=leftWidth } ) { selector operator operations | ... }




A block filled with O-shapes:

attr myFrontDepth = 5
attr myRightWidth = 3
attr myBackDepth = 2
attr myLeftWidth = 11

LotInner -->
Lot -->
    offset(-3, inside)
    shapeO(myFrontDepth,myRightWidth,myBackDepth,myLeftWidth) { shape     : Footprint 
	                                                          | remainder : NIL }

Footprint -->
Block filled with O-shapes

In this topic