Technical specification for the "Chiseled Ribbon" 3D geometry engine, including Bezier-first paths, intersection graph solving, and V-notch cap rendering.
This skill documents the unique 3D ribbon architecture used in the application. It defines how flat 2D paths are transformed into chiseled, shaded vector ribbons with professional "dovetail" notches.
The engine prioritizes mathematical smoothness over raw point density.
To support overlapping and branching strokes, the engine uses a non-linear graph solver:
GraphNodes and GraphEdges).NODE_MERGE_DIST (0.8px) to prevent floating-point "jitter" from breaking the miter geometry.The ribbon is a 3D illusion created through light-aware face shading.
S).n by RIBBON_WIDTH.LIGHT_DIR (default {-0.5, -1}) is used to dot against the surface normal.palette.light to palette.dark.Dead-ends (nodes with only one edge) use a specific "Chiseled Notch" geometry:
RIBBON_WIDTH (1:1 ratio).fill: palette.dark) fills the resulting notch to close the 3D shape.| Constant | Value | Description |
|---|---|---|
RIBBON_WIDTH | 12 | Total width of the ribbon. |
NODE_MERGE_DIST | 0.8 | Tolerance for merging adjacent intersection points. |
MITER_LIMIT | 120 | Max length of corner spikes before beveling. |
COLLINEAR_DOT | -1.0 | Threshold for treating a corner as a straight pass-through. |