Graphite
Graphite copied to clipboard
An open source graphics editor for 2025: comprehensive 2D content creation tool suite for graphic design, digital art, and interactive real-time motion graphics — featuring node-based procedural editi...
The *Path* (vector modify) node must store modifications for each shape's element ID now that we support multiple rows of vector data thanks to the work in #1834. For now,...
In order to apply the vector modify node on a graphic group, it is necessary to be able to identify which graphic element within the graphic group. We could do...
To finish the transition to domains and attributes, we need to take the current `GraphicElement` enum definition and make it more standardized so it can be extended in the future...
- [x] 1. Write the `Instances` struct. Wrap `VectorData` to become `Instances`, `ImageFrame` to become `Instances`, `GraphicGroup` to become `Instances`, which lets us leave `transform`/`alpha_blending` alone for now. Places that...
`VectorData` has the `pub style: PathStyle` field which should be moved to an attribute of the Region domain. This will require updating the renderer so split the shape out into...
- Build the frontend (@Keavon) - Hook it up to the backend-supplied domain/attribute data
Replace `SegmentDomain::handles` with a `Curvature` enum which describes the Bezier handle(s) or other curvature info like None for a polyline, Cubic, Quadratic, or even Arc or Conic or Euler Spiral...
When double clicking vector data without the "shape" node (e.g. a rectangle drawn with the rectangle tool), the select tool should switch to the path tool.
When in the path tool with a group selected, it should allow editing child vector data.
In the node graph on the left (where the tools usually are) there should be icons for all the node categories that can be used to insert the nodes. Blocked...