Cursor-HUD + Winkel-Badge im Programm-Look (dunkle Dropdown-Pille)
Statt weissem Kasten mit blauem VW-Rahmen tragen HUD und Winkel-Badge jetzt die dunkle Pille der Dropdown-Trigger (#2c2c2c/#4a4a4a, helle Schrift, Pillen-Rundung) — derselbe Look wie die schwebenden Viewport-Knöpfe über dem Papier. Aktives Tab-Feld als leicht angehobene Fläche, gelockte Werte voll weiss/fett; Führungslinie neutral grau statt rötlich.
This commit is contained in:
@@ -2483,7 +2483,7 @@ function DraftHud({
|
|||||||
let cx = x + padX;
|
let cx = x + padX;
|
||||||
return (
|
return (
|
||||||
<g className="plan-hud" pointerEvents="none">
|
<g className="plan-hud" pointerEvents="none">
|
||||||
<rect className="plan-hud-box" x={x} y={y} width={w} height={h} rx={2 * vbPerPx} />
|
<rect className="plan-hud-box" x={x} y={y} width={w} height={h} rx={6 * vbPerPx} />
|
||||||
{segs.map((s, i) => {
|
{segs.map((s, i) => {
|
||||||
const sx = cx;
|
const sx = cx;
|
||||||
cx += widths[i] + gap;
|
cx += widths[i] + gap;
|
||||||
@@ -2496,7 +2496,7 @@ function DraftHud({
|
|||||||
y={y + 1.5 * vbPerPx}
|
y={y + 1.5 * vbPerPx}
|
||||||
width={widths[i] + 4 * vbPerPx}
|
width={widths[i] + 4 * vbPerPx}
|
||||||
height={h - 3 * vbPerPx}
|
height={h - 3 * vbPerPx}
|
||||||
rx={2 * vbPerPx}
|
rx={5 * vbPerPx}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
<text
|
<text
|
||||||
@@ -2569,7 +2569,7 @@ function AngleGuide({
|
|||||||
y={badgeAt.y - h / 2}
|
y={badgeAt.y - h / 2}
|
||||||
width={w}
|
width={w}
|
||||||
height={h}
|
height={h}
|
||||||
rx={2 * vbPerPx}
|
rx={6 * vbPerPx}
|
||||||
/>
|
/>
|
||||||
<text
|
<text
|
||||||
className="plan-angle-badge-text"
|
className="plan-angle-badge-text"
|
||||||
|
|||||||
+21
-17
@@ -2030,46 +2030,50 @@ body {
|
|||||||
}
|
}
|
||||||
/* Cursor-HUD (Vectorworks-Stil): weisser Kasten, blauer Rahmen, blauer
|
/* Cursor-HUD (Vectorworks-Stil): weisser Kasten, blauer Rahmen, blauer
|
||||||
Monospace-Text „L: 3.118m W: 60.000°". */
|
Monospace-Text „L: 3.118m W: 60.000°". */
|
||||||
|
/* Cursor-HUD im Programm-Look: dieselbe dunkle Pille wie die Dropdown-Trigger
|
||||||
|
(.tb-dd-trigger #2c2c2c/#4a4a4a, helle Schrift) — sitzt wie die schwebenden
|
||||||
|
Viewport-Knöpfe dunkel über dem hellen Papier. */
|
||||||
.plan-svg .plan-hud-box {
|
.plan-svg .plan-hud-box {
|
||||||
fill: #ffffff;
|
fill: #2c2c2c;
|
||||||
fill-opacity: 0.92;
|
fill-opacity: 0.94;
|
||||||
stroke: #2864ff;
|
stroke: #4a4a4a;
|
||||||
stroke-width: 1.25;
|
stroke-width: 1;
|
||||||
}
|
}
|
||||||
.plan-svg .plan-hud-text {
|
.plan-svg .plan-hud-text {
|
||||||
fill: #2864ff;
|
fill: #e8e8e8;
|
||||||
font-family: var(--mono, ui-monospace, monospace);
|
font-family: var(--mono, ui-monospace, monospace);
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
/* Aktives Tab-Feld im HUD: blaue Pille, weisser Text (VW: Eingabefeld-Optik). */
|
/* Aktives Tab-Feld im HUD: leicht angehobene Pille (wie Hover-Flächen), weisser Text. */
|
||||||
.plan-svg .plan-hud-active {
|
.plan-svg .plan-hud-active {
|
||||||
fill: #2864ff;
|
fill: #ffffff;
|
||||||
|
fill-opacity: 0.16;
|
||||||
}
|
}
|
||||||
.plan-svg .plan-hud-text.active {
|
.plan-svg .plan-hud-text.active {
|
||||||
fill: #ffffff;
|
fill: #ffffff;
|
||||||
}
|
}
|
||||||
/* Gelockter (getippter) Wert: dunkler + fett, unterscheidet sich vom Live-Wert. */
|
/* Gelockter (getippter) Wert: voll weiss + fett — hebt sich vom Live-Grau ab. */
|
||||||
.plan-svg .plan-hud-text.locked {
|
.plan-svg .plan-hud-text.locked {
|
||||||
fill: #143a99;
|
fill: #ffffff;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Weicher Winkel-Snap: gestrichelte Führungslinie (dezent) + gelbliches
|
/* Weicher Winkel-Snap: gestrichelte Führungslinie (dezent) + Winkel-Badge in
|
||||||
Winkel-Badge nahe der Liniemitte. */
|
derselben dunklen Dropdown-Pille wie das Cursor-HUD. */
|
||||||
.plan-svg .plan-angle-guide-line {
|
.plan-svg .plan-angle-guide-line {
|
||||||
stroke: #b06a6a;
|
stroke: #8a8a8a;
|
||||||
stroke-width: 1;
|
stroke-width: 1;
|
||||||
stroke-dasharray: 5 4;
|
stroke-dasharray: 5 4;
|
||||||
opacity: 0.75;
|
opacity: 0.8;
|
||||||
}
|
}
|
||||||
.plan-svg .plan-angle-badge-box {
|
.plan-svg .plan-angle-badge-box {
|
||||||
fill: #fff3c4;
|
fill: #2c2c2c;
|
||||||
fill-opacity: 0.95;
|
fill-opacity: 0.94;
|
||||||
stroke: #6b5b1e;
|
stroke: #4a4a4a;
|
||||||
stroke-width: 1;
|
stroke-width: 1;
|
||||||
}
|
}
|
||||||
.plan-svg .plan-angle-badge-text {
|
.plan-svg .plan-angle-badge-text {
|
||||||
fill: #4a3f10;
|
fill: #e8e8e8;
|
||||||
font-family: var(--mono, ui-monospace, monospace);
|
font-family: var(--mono, ui-monospace, monospace);
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user