# orx-composition

Shape composition library

One can think of a Composition as a vector design made out of primitives
like ShapeContour, Shape, or LineSegment, each having its fill color,
stroke color and stroke weight.

Compositions can be loaded from SVG files and then queried or altered via code.

Composition can also be generated from scratch, typically using `drawComposition { ... }`, then saved as an SVG file.

Read about Composition [in the guide](https://guide.openrndr.org/drawing/drawingSVG.html).

_The code in `orx-composition` was previously found under `openrndr-draw` in the `openrndr` repository._

<!-- __demos__ -->
## Demos
### DemoCompositionDrawer01
[source code](src/jvmDemo/kotlin/DemoCompositionDrawer01.kt)

![DemoCompositionDrawer01Kt](https://raw.githubusercontent.com/openrndr/orx/media/orx-composition/images/DemoCompositionDrawer01Kt.png)

### DemoCompositionDrawer02
[source code](src/jvmDemo/kotlin/DemoCompositionDrawer02.kt)

![DemoCompositionDrawer02Kt](https://raw.githubusercontent.com/openrndr/orx/media/orx-composition/images/DemoCompositionDrawer02Kt.png)

### DemoCompositionDrawer03
[source code](src/jvmDemo/kotlin/DemoCompositionDrawer03.kt)

![DemoCompositionDrawer03Kt](https://raw.githubusercontent.com/openrndr/orx/media/orx-composition/images/DemoCompositionDrawer03Kt.png)
