Sketch Offset gets its own tool window with a typed Distance, Flip and Chain, as a variant of the sketch modify window.
83 lines
3.4 KiB
JSON
83 lines
3.4 KiB
JSON
[
|
|
{"note": "#162 item 1 (\"the size of the offset seems random\"): sketch.offset gets a tool window carrying Curves, Distance, Flip and Chain, instead of a bare click-pick that measured the distance off the second click."},
|
|
{"start": "sketch.create"},
|
|
{"click": {"plane": "XY"}},
|
|
{"expect": {"sketching": true}},
|
|
{"start": "sketch.circle.center"},
|
|
{"click": {"sketch": [0, 0]}},
|
|
{"click": {"sketch": [10, 0]}},
|
|
{"key": "Escape"},
|
|
{"expect": {"sketch_curves": {"own": 1}, "errors": 0}},
|
|
|
|
{"note": "Starting the command opens the window and commits nothing."},
|
|
{"start": "sketch.offset"},
|
|
{"expect": {"dialog": "Offset", "sketch_curves": {"own": 1}, "errors": 0}},
|
|
{"click": {"sketch": [10, 0]}},
|
|
{"expect": {"dialog": "Offset", "sketch_curves": {"own": 1}, "errors": 0}},
|
|
|
|
{"note": "The typed number reaches the command unchanged: a 10 mm circle offset 3 mm is a 7 mm circle."},
|
|
{"click": {"handle": "dialog:Distance"}},
|
|
{"key": "A", "cmd": true},
|
|
{"text": "3"},
|
|
{"key": "Enter"},
|
|
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 2}}},
|
|
{"expect": {"query": {"command": "sketch.inspect", "path": ["curves", 1, "radius"], "value": 7}}},
|
|
|
|
{"note": "Flip reverses the side: the same 3 mm grows the circle to 13 mm."},
|
|
{"start": "sketch.offset"},
|
|
{"click": {"sketch": [10, 0]}},
|
|
{"click": {"handle": "dialog:Flip"}},
|
|
{"click": {"handle": "dialog:Distance"}},
|
|
{"key": "A", "cmd": true},
|
|
{"text": "3"},
|
|
{"key": "Enter"},
|
|
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 3}}},
|
|
{"expect": {"query": {"command": "sketch.inspect", "path": ["curves", 2, "radius"], "value": 13}}},
|
|
{"shot": "sketch_offset_circle"},
|
|
{"start": "sketch.finish"},
|
|
|
|
{"note": "Chain on (the default): one picked edge of a rectangle offsets the whole connected chain, four curves. The inner rectangle is 34 by 24, so the offset came from the typed 3 mm on every side."},
|
|
{"start": "sketch.create"},
|
|
{"click": {"plane": "XZ"}},
|
|
{"start": "sketch.rectangle.two_point"},
|
|
{"click": {"sketch": [0, 0]}},
|
|
{"click": {"sketch": [40, 30]}},
|
|
{"key": "Escape"},
|
|
{"expect": {"sketch_curves": {"own": 4}, "errors": 0}},
|
|
{"start": "sketch.offset"},
|
|
{"click": {"sketch": [20, 0]}},
|
|
{"expect": {"dialog": "Offset", "sketch_curves": {"own": 4}}},
|
|
{"click": {"handle": "dialog:Distance"}},
|
|
{"key": "A", "cmd": true},
|
|
{"text": "3"},
|
|
{"key": "Enter"},
|
|
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 8}}},
|
|
{"expect": {"query": {"command": "sketch.inspect", "path": ["profiles", 1, "area_mm2"], "value": 816}}},
|
|
{"shot": "sketch_offset_chain"},
|
|
{"start": "sketch.finish"},
|
|
|
|
{"note": "Chain cleared: the same pick offsets that one curve, so the sketch gains one."},
|
|
{"start": "sketch.create"},
|
|
{"click": {"plane": "YZ"}},
|
|
{"start": "sketch.rectangle.two_point"},
|
|
{"click": {"sketch": [0, 0]}},
|
|
{"click": {"sketch": [40, 30]}},
|
|
{"key": "Escape"},
|
|
{"expect": {"sketch_curves": {"own": 4}, "errors": 0}},
|
|
{"start": "sketch.offset"},
|
|
{"click": {"sketch": [20, 0]}},
|
|
{"click": {"handle": "dialog:Chain"}},
|
|
{"click": {"handle": "dialog:Distance"}},
|
|
{"key": "A", "cmd": true},
|
|
{"text": "3"},
|
|
{"key": "Enter"},
|
|
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 5}}},
|
|
|
|
{"note": "Escape closes the window and leaves the sketch exactly as it was."},
|
|
{"start": "sketch.offset"},
|
|
{"click": {"sketch": [20, 0]}},
|
|
{"expect": {"dialog": "Offset"}},
|
|
{"key": "Escape"},
|
|
{"expect": {"dialog": null, "errors": 0, "sketch_curves": {"own": 5}}}
|
|
]
|