mirror of
https://github.com/storytold/figcraft.git
synced 2026-11-10 20:29:33 -06:00
M0.9: document that x/y offset a vector path by its own box
node.create / vector.create (and MCP create_node) place a vector made from SVG path data or points at x/y plus the box's unscaled offset: a path whose box starts at (30, 0) with x 830 lands at 860. That is deliberate and pinned by vector_path_set_tests, but the MCP schema described x as the layer's left, which misled an agent drawing a poster. The x, y and path descriptions and the node.create / vector.create parameter docs now say so, and an MCP test pins the placement for path and points, the 0,0 alternative, set_properties x moving the left edge, and the documentation. CI: fmt, clippy, layers, assets and wasm pass; every test passes except board_tables_tests::a_double_click_types_in_the_cell_and_its_row_grows_with_the_text and clipboard_fence_tests::a_synthetic_copy_shortcut_leaves_the_system_clipboard_alone, which fail the same way on main without this change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
958b9b8c44
commit
57f0185f41
@@ -55,7 +55,7 @@ pub fn specs() -> Vec<CommandSpec> {
|
||||
spec!(
|
||||
"node.create",
|
||||
"Create layer",
|
||||
"{type: rectangle|ellipse|polygon|star|line|arrow|vector|text|frame|section|component|slice, x?, y? (relative to the parent frame; groups don't count), width?, height?, parent? (id; default: the page), index?, name?, text? | characters? (for text), path? | points? (vector: SVG path data | [[x,y],..]), closed? (vector), props? {node.set keys}, select? (default true)}",
|
||||
"{type: rectangle|ellipse|polygon|star|line|arrow|vector|text|frame|section|component|slice, x?, y? (relative to the parent frame; groups don't count), width?, height?, parent? (id; default: the page), index?, name?, text? | characters? (for text), path? | points? (vector: SVG path data | [[x,y],..]; x/y move their own origin, so the layer's left/top is x/y plus their box's unscaled offset), closed? (vector), props? {node.set keys}, select? (default true)}",
|
||||
true,
|
||||
create
|
||||
),
|
||||
@@ -102,7 +102,7 @@ pub fn specs() -> Vec<CommandSpec> {
|
||||
spec!(
|
||||
"vector.create",
|
||||
"Vector",
|
||||
"{path (SVG path data) | points [[x,y],..], closed?, x?, y?, width?, height? (scale the path; one keeps its proportion), parent?, index?, name?, props?, select? (default true)}",
|
||||
"{path (SVG path data) | points [[x,y],..], closed?, x?, y? (move the path's own origin: the layer's left/top is x/y plus the box's unscaled offset), width?, height? (scale the path; one keeps its proportion), parent?, index?, name?, props?, select? (default true)}",
|
||||
true,
|
||||
|s, p| create_kind(s, p, "vector")
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user