2D: Chamfer (Eckpunkt-Fasung) neu gebaut und verdrahtet

Anders als Fillet/Extend existierte hierfür noch gar keine Geometrie —
chamferCorner (src/geometry/kernel2d.ts) ist neu: gleicher Abstand vom Eck
auf beiden Schenkeln, gerade verbunden (klassischer Gleichabstands-Chamfer,
analog zu filletCorner, nur ohne Bogen — daher exakt statt tesselliert).

commands/cmds/chamfer.ts wortwörtlich nach dem fillet.ts-Muster: Ecke wählen,
Distanz per Maus oder getippt (Tab-Feld). In Registry/Aliase
(ch/fasen), ToolsPanel (COMMANDS_EDIT neben Fillet), CommandIcon, i18n
de/en aufgenommen.

3 neue Tests (Fasung, Fehltreffer, Distanz-zu-gross-No-op). tsc -b /
vitest run (914/914) / npm run build grün.
This commit is contained in:
2026-08-20 21:01:15 +02:00
parent 51e594ee90
commit 245b7d7fe1
8 changed files with 387 additions and 1 deletions
+4
View File
@@ -28,6 +28,7 @@ import { extrudeCommand } from "./cmds/extrude";
import { trimCommand } from "./cmds/trim";
import { extendCommand } from "./cmds/extend";
import { filletCommand } from "./cmds/fillet";
import { chamferCommand } from "./cmds/chamfer";
import { importCommand } from "./cmds/import";
import { terrainCommand } from "./cmds/terrain";
import { measureCommand } from "./cmds/measure";
@@ -62,6 +63,7 @@ export const COMMANDS: Record<string, Command> = {
trim: trimCommand,
extend: extendCommand,
fillet: filletCommand,
chamfer: chamferCommand,
import: importCommand,
terrain: terrainCommand,
measure: measureCommand,
@@ -117,6 +119,8 @@ export const ALIASES: Record<string, string> = {
verlängern: "extend",
fi: "fillet",
verrunden: "fillet",
ch: "chamfer",
fasen: "chamfer",
imp: "import",
ter: "terrain",
schnittlinie: "sectionline",