This repository has no description
1# Shapemaker Graphics module
2
3Handles objects that can be rendered to SVG
4
5Actual implementation of the SVG rendering logic is in `../rendering`, not here.
6
7A Shapemaker image is represented by a Canvas, which is comprised of multiple Layers. Those Layers contain multiple Colored Objects.
8
9Those Colored Objects are a combination of a Fill, possibly Filters and Transformations, as well as a "plain" Object (which can be a Line, a Polygon, a Point, a BigCircle, etc. (check the enum's different variants))
10
11A Fill is made up of a Color alongside the Fill variant: Solid, Hatched, Dotted, Translucent etc.
12
13A color is "abstract", meaning its just a named color (red, green, etc). Actual hex values are given when rendering, through a ColorMapping.
14
15```mermaid
16graph TD
17 Layer --> Canvas
18 ColoredObject --> Layer
19 Object --> ColoredObject
20 Filter --> ColoredObject
21 Transformation --> ColoredObject
22 Fill --> ColoredObject
23 Color --> Fill
24```
25