forked from 1b-agent/opencadstudio-upstream
fix(polyline): correct wide-polyline fill band arc center + add LWDISPLAY toggle
Wide LWPolyline/Polyline2D fill bands now sit on the centerline: - polyline_segment_fill arc center matched explode.rs / acadrust convention (signed d_perp = r·(1-b²)/(1+b²), handles major arcs correctly) - per-vertex hw0/hw1 taper applied along arc; tess density 24/circle - synced_hatch_models subtracts hatch_offset from band boundary so it lives in the same offset-rel space as the wire tessellation LWDISPLAY: - new command `LWDISPLAY [ON|OFF]` toggles header.lineweight_display - LWT status-bar pill (between ORTHO and POLAR) drives the same flag - bump_geometry() on change so the viewport re-tess immediately Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
1 parent
2790182067
commit
fb3dd58d09
6 files changed
+91
-21
No files matched your search
@@ -48,6 +48,8 @@ impl StatusBar {
|
||||
scale_popup_open: bool,
|
||||
// True when the scale pill is interactive (always model space; paper space only when a viewport is active/selected).
|
||||
scale_pill_enabled: bool,
|
||||
// LWDISPLAY header flag — controls lineweight visibility in the viewport.
|
||||
lineweight_display: bool,
|
||||
) -> Element<'a, Message> {
|
||||
let menu_btn = button(text("≡").size(14).color(ICON_COLOR))
|
||||
.on_press(Message::Command("MENU".into()))
|
||||
@@ -103,6 +105,10 @@ impl StatusBar {
|
||||
toggle_pill("ORTHO", ortho_mode, Message::ToggleOrtho),
|
||||
"Orthogonal Mode\nF8"
|
||||
),
|
||||
tip(
|
||||
toggle_pill("LWT", lineweight_display, Message::ToggleLineweightDisplay),
|
||||
"Show Lineweight\nLWDISPLAY"
|
||||
),
|
||||
polar_pill(polar_mode, polar_increment_deg),
|
||||
tip(
|
||||
toggle_pill("DYN", dyn_input, Message::ToggleDynInput),
|
||||
|
||||
Reference in new issue
Block a user