API reference / Common / Engine types / PathObject
Interface: PathObject
A path painted with an optional fill and/or stroke.
fill and stroke are boolean flags selecting which paint sides apply; the corresponding nonstroking_style and stroking_style are always present even when the side doesn't paint. This preserves the gs state at the time of capture (so round-trip emit knows what state to set up, and an editor toggle "turn on stroke" keeps the color/width already there) and mirrors PDF semantics where gs always has a complete state; operators select what gets applied, they don't conditionally exist.
winding_rule selects PDF f vs f* for the fill operator; it applies only when fill is true, but is preserved otherwise so round-trip emit can recover the original operator.
Properties
| Property | Description |
|---|---|
pathPath | Path geometry, shared via [Arc] so the layout's ComposedPathObject can hold the same allocation rather than deep-cloning it (path data dominates a PathObject's size). Editing geometry replaces the Arc with a fresh one — see the model's "edit a sub-piece by replacing the containing field" convention on [GraphicsObjectId]. |
windingRuleWindingRule | - |
nonstrokingStyleNonstrokingStyle | - |
strokingStyleStrokingStyle | - |
fillboolean | - |
strokeboolean | - |
renderStyleRenderStyle | - |
softMaskstring | null | - |