YAPPgenerator_en
  • Yet Another Parametric Projectbox generator
  • What you need
  • Getting Started
  • Design Philosophy
  • Coordinate Systems
  • YAPPgenerator API
  • YAPP Box Settings
    • Multiple PCBs
  • Standoffs
    • pcbStands (advanced)
  • Connecting Base and Lid
    • Connecting Base and Lid (advanced)
  • Cutouts
    • n(h) - yappFromInside
    • p(6) - Cutout Depth
    • Placement of the project box
      • Cutouts in the Base Plane
      • Cutouts in the Lid Plane
      • Cutouts in the Front Plane
      • Cutouts in the Back Plane
      • Cutouts in the Left Plane
      • Cutouts in the Right Plane
    • Shapes
    • Optional Parameters
      • p(7) - Angle
      • n(a) = Polygon Definition
      • n(b)/n(c) - Mask Definition
      • n(d) - Coordinate System
      • n(e) - Position reference
      • n(f) - Alternate Origin
      • n(g) - PCB Selection
  • Box Mounts
    • boxMounts (advanced)
  • Snap Joins
  • Light Tubes
  • Push Buttons
    • Optional Parameters
  • Ridge Extension
  • Labels
  • Images
  • Hooks
  • Debugging
  • Advanced Options
    • Specify a PCB
    • Position reference
    • Polygon Definitions
    • Mask Definitions
  • Generating STL file from KiCad
  • License
Powered by GitBook
On this page

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
-------------------------------------------------------------------

PreviousConnecting Base and Lid (advanced)Nextn(h) - yappFromInside

Last updated 1 year ago