Cutouts

For each plane (face) there is an array in which you can specify per line where cutouts should come, what the origin of such a recess is, what shape the recess should have (Rectangle, RoundedRect, Circle, CircleWithFlats, CircleWithKey or Polygon).
Depending on the plane, the first element is the position on the X-axis (lid-, base-, left- or rightPlane) or the Y-axis (front- or backPlane) and the second element is the position on the Y-axis (lid-, base-, left- or rightPlane) and the Z-axis (front-, back-, left- or rightPlane).
===================================================================
*** Cutouts ***
There are 6 cutouts one for each surface:
cutoutsBase, cutoutsLid, cutoutsFront, cutoutsBack, cutoutsLeft, cutoutsRight
-------------------------------------------------------------------
Default origin = yappCoordPCB
Required Not Used Note
----------------------+-----------------------+---------------+------------------------------------
yappRectangle | width, length | radius |
yappCircle | radius | width, length |
yappRoundedRect | width, length, radius | |
yappCircleWithFlats | width, radius | length | length=distance
| | | between flats
yappCircleWithKey | width, length, radius | | width = key width
| | | length=key depth
yappPolygon | width, length | radius | yappPolygonDef object
| | | must be provided
----------------------+-----------------------+---------------+------------------------------------
Parameters:
Required:
p(0) = from Back
p(1) = from Left
p(2) = width
p(3) = length
p(4) = radius
p(5) = shape : { yappRectangle | yappCircle | yappPolygon | yappRoundedRect
| yappCircleWithFlats | yappCircleWithKey }
Optional:
p(6) = depth : Default = 0/Auto : 0 = Auto (plane thickness)
p(7) = angle : Default = 0
n(a) = { yappPolygonDef } : Required if shape = yappPolygon specified -
n(b) = { yappMaskDef } : If a yappMaskDef object is added it will be used as a mask
for the cutout.
n(c) = { [yappMaskDef, hOffset, vOffset, rotation] } : If a list for a mask is added
it will be used as a mask for the cutout. With the Rotation
and offsets applied. This can be used to fine tune the mask
placement within the opening.
n(d) = { <yappCoordPCB> | yappCoordBox | yappCoordBoxInside }
n(e) = { <yappOrigin>, yappCenter }
n(f) = { <yappGlobalOrigin>, yappAltOrigin } // Only affects Top(lid), Back and Right Faces
n(g) = [yappPCBName, "XXX"] : Specify a PCB. Defaults to [yappPCBName, "Main"]
n(h) = { yappFromInside } Make the cut from the inside towards the outside
-------------------------------------------------------------------