VectorCraft had no Objects on Path. A click with the Objects on Path
tool attaches the selected objects to the path clicked. The tool is in
Edit Toolbar's Modify section and the Blend tool's flyout, and Object ›
Objects on Path › Attach and the context menu with two or more objects
selected choose it. The objects and the path go into an Objects on
Path group with the path at its bottom.
- object.objectsOnPath.attach orders the objects column by column from
left to right and top to bottom in each column. The first one sits
on the path's first anchor, the last one sits on the end of an open
path, and the rest are spread evenly by length; a closed path takes
them all the way round. Each object's attachment point (Pivot, one
of nine, default the center of its bounds without strokes) sits on
the path, and the object is turned to the path there. An object that
was rotated by an angle other than a multiple of 90° is first turned
to the nearest multiple of 90°. Rotate tilts every object by that
many degrees counter-clockwise. Symbol instances are measured by
their art. Guides, compound paths, type, paths without length and
graphs are refused with a reason.
- After every edit the objects go back on the path: editing the path
moves them, an object moved on its own goes back, and objects moved
into or out of the group in the Layers panel join the end of the
path or leave it. Scaling, shearing or reflecting the whole group
keeps each object's scale, shear or reflection, and the objects are
spread evenly along the transformed path again. Undo takes the path
and the objects back in one step, and a copied group stays live on
its own path.
- object.objectsOnPath.options changes Pivot and Rotate, and
object.objectsOnPath.expand leaves a plain group. Both act on the
groups that `ids` names, or on the groups of the selection when
`ids` is not given.
- The native file keeps the group live; SVG, PDF and the other exports
write plain art. The tool highlights the path under the pointer, has
a cursor entry, and Escape during a press cancels the click.
Part of #2545
Docs: docs/mcp.md, docs/target-app-parity.md.