> For the complete documentation index, see [llms.txt](https://mrwheel-docs.gitbook.io/yappgenerator_en/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mrwheel-docs.gitbook.io/yappgenerator_en/cutouts/shapes.md).

# Shapes

There are six shapes for cutouts: yappRectangl&#x65;**, rectangles with rounded corners, circles** , **circles with flat sides,** **circles with a key** and **polygons**.&#x20;

* yappRectangle
* yappRoundedRect
* yappCircle
* yappCircleWithFlats
* yappCircleWithKey
* yappPolygon

<figure><img src="/files/vzhur96riVkrg7ROlL17" alt=""><figcaption><p>5 basic shapes and polygon</p></figcaption></figure>

* yappRectangle
  * Uses the width and length parameters. radius is ignored
* yappRoundedRect
  * Uses the width and length parameters to define the rectangle and radius for the corner radius.
* yappCircle
  * Uses the radius parameter. Width and length are ignored.
* yappCircleWithFlats
  * Uses the radius parameters and the width parameter for the distance between the flat sides.
* yappCircleWithKey
  * Uses the radius parameters and the width parameter for the width of the key and the length as the depth of the key.
* yappPolygon
  * Uses the width and length parameters to scale the polygon.  The polygon should be defined with a base size of 1x1 (-0.5 to 0.5 in both X and Y). A yappPolygonDef is required.
