2D: Multiline-Werkzeug (Basislinie + N-1 parallele Kopien in einer Geste)
Neuer Befehl multiline.ts, baut auf derselben Offset-Geometrie auf wie der bestehende offset-Befehl (offsetSegment) — erzeugt aber alle Kopien auf einmal statt einzeln nacheinander offsetten zu müssen. Deckt gerade Basislinien ab (häufigster Fall: Grenzlinie+Abstand, Leitungspaar, Randlinien), keine mehrsegmentige Variante. Ablauf: Start-/Endpunkt (Tab-Felder Länge/Winkel wie line.ts), dann Abstand per Maus-Klick (Seite bestimmt Vorzeichen, wie bei offset.ts) oder getippt; die Anzahl (Default 3, Bereich 2-6) zyklt über eine Inline-Option und bleibt wie Abstand/Seite über Aufrufe hinweg persistent. In Registry/Aliase (ml/parallel), ToolsPanel (COMMANDS_EDIT neben Offset), CommandIcon, i18n de/en aufgenommen. 2 neue Tests. tsc -b / vitest run (916/916) / npm run build grün.
This commit is contained in:
@@ -29,6 +29,7 @@ import { trimCommand } from "./cmds/trim";
|
||||
import { extendCommand } from "./cmds/extend";
|
||||
import { filletCommand } from "./cmds/fillet";
|
||||
import { chamferCommand } from "./cmds/chamfer";
|
||||
import { multilineCommand } from "./cmds/multiline";
|
||||
import { importCommand } from "./cmds/import";
|
||||
import { terrainCommand } from "./cmds/terrain";
|
||||
import { measureCommand } from "./cmds/measure";
|
||||
@@ -64,6 +65,7 @@ export const COMMANDS: Record<string, Command> = {
|
||||
extend: extendCommand,
|
||||
fillet: filletCommand,
|
||||
chamfer: chamferCommand,
|
||||
multiline: multilineCommand,
|
||||
import: importCommand,
|
||||
terrain: terrainCommand,
|
||||
measure: measureCommand,
|
||||
@@ -121,6 +123,8 @@ export const ALIASES: Record<string, string> = {
|
||||
verrunden: "fillet",
|
||||
ch: "chamfer",
|
||||
fasen: "chamfer",
|
||||
ml: "multiline",
|
||||
parallel: "multiline",
|
||||
imp: "import",
|
||||
ter: "terrain",
|
||||
schnittlinie: "sectionline",
|
||||
|
||||
Reference in New Issue
Block a user