Schnitt/Ansicht-Feinschliff: Kantenfilter, Print-Toggle, echte Fenster in der Ansicht

Vier Nutzer-Punkte:
1. Editieren im Schnitt funktioniert (Klick auf die Poché wählt das Bauteil,
   headless verifiziert) — die Störung waren die Kanten GESCHNITTENER
   Bauteile: der Extraktor projizierte auch deren Restkörper (Deckel-/
   Bodenkanten quer durch die eigene Poché). computeSection filtert sie jetzt;
   Ansichtskanten ungeschnittener Bauteile (Rückwand-Fenster etc.) bleiben.
2. Verdeckte Kanten (gestrichelt) sind Standard AUS — zuschaltbar je Ebene
   (DrawingLevel.hiddenLines, Checkbox in der Schnittlinien-Sektion).
3. Display/Print-Umschalter wirkt jetzt in ALLEN 2D-Darstellungen (Grundriss,
   Schnitt, Ansicht, Zeichnung) — war fälschlich auf den Grundriss begrenzt.
4. Fenster/Türen in der Ansicht als echtes Bauteil: Blendrahmen-Fläche →
   Flügelfelder (aus der Flügeltabelle, ungleiche Breiten/Pfosten) → Glas,
   Kämpfer/Oberlicht-Teilung, DIN-Öffnungssymbol (dezent gestrichelt,
   Dreh/Kipp/Drehkipp je Anschlag); Türen mit Rahmen + Blatt-Fläche.
737/737 grün; headless verifiziert (Schnitt A + Ansicht Süd).
This commit is contained in:
2026-07-11 02:18:09 +02:00
parent b96714641a
commit 4c4c9907af
8 changed files with 229 additions and 16 deletions
+9 -3
View File
@@ -5212,7 +5212,10 @@ export default function App() {
activeLayer={activeLayerName}
lineMode={lineMode}
onLineModeChange={setLineMode}
lineModeEnabled={planActive}
// Display/Print wirkt in ALLEN 2D-Darstellungen (Grundriss, Schnitt,
// Ansicht, Zeichnung — hairline fliesst überall hin); nur die
// 3D-Perspektive kennt keine Papier-Linienstärken.
lineModeEnabled={activeLevel.kind !== "floor" || viewType === "grundriss"}
snap={snap}
onSnapChange={setSnap}
/>
@@ -6841,8 +6844,11 @@ function SectionPlanView({
);
const sectionPlan = useMemo(
() => (!isElevation && output ? generateSectionPlan(output, mono) : null),
[isElevation, output, mono],
() =>
!isElevation && output
? generateSectionPlan(output, mono, { hiddenLines: level.hiddenLines })
: null,
[isElevation, output, mono, level.hiddenLines],
);
const plan = isElevation ? elevationPlan : sectionPlan;
const effStatus = isElevation ? (elevationPlan ? "ready" : "empty") : status;