Raeume: Umriss auf die Wand-Innenflaeche + neutral statt farbig

- Sample-Raum R1: boundary auf die echte Innenkante der Aussenwaende
  (Achse +/- halbe Wanddicke 0.1725 bei Wandtyp aw 0.345 m) statt 0.1-Inset -
  der Umriss lag bisher ~7 cm im Wandkoerper.
- Raumfarbe #5a7a9a -> neutrales Grau #6b7280 (Umriss + Stempel).
- ROOM_FILL_ALPHA 33 -> 00: keine transluzente Farbfuellung mehr
  (Plandarstellung schwarz/grau); das Polygon bleibt fuer die Auswahl
  erhalten (Hit-Test laeuft ueber pointInPolygon, nicht ueber die Fuellung).

Offen: automatische Ableitung der Raum-Boundary aus den Wand-Innenflaechen
fuer spaeter gezeichnete Raeume.
This commit is contained in:
2026-07-03 21:07:11 +02:00
parent b028fc6b31
commit 4d721a62f7
2 changed files with 30 additions and 16 deletions
+19 -9
View File
@@ -1241,8 +1241,15 @@ function addCeilingPoche(
});
}
/** Deckkraft (0..255) der transluzenten Raum-Füllung → 2-stelliges Hex-Suffix. */
const ROOM_FILL_ALPHA = "33"; // ~20 % Deckkraft
/**
* Deckkraft (0..255) der Raum-Füllung → 2-stelliges Hex-Suffix. Transluzente
* Farbfüllung entfällt — Plandarstellung schwarz/grau; Farbe bleibt späteren
* Schema-Ebenen vorbehalten. Alpha 0 = unsichtbar; das Polygon bleibt als
* `roomId`-Primitiv erhalten (Auswahl per Punkt-in-Polygon in PlanView, NICHT
* über die native Pointer-Trefferfläche der Füllung — die volle Fläche bleibt
* damit trotz Alpha 0 klickbar).
*/
const ROOM_FILL_ALPHA = "00";
/** Basis-Schriftgrösse des Raum-Stempels in Punkt (pt). */
const ROOM_STAMP_PT = 10;
@@ -1252,12 +1259,14 @@ function withAlpha(color: string, alphaHex: string): string {
}
/**
* Raum (SIA-416-Fläche) im Grundriss: eine transluzente farbige Füllfläche über
* dem lichten Umriss + eine dünne Umrisslinie (beide `roomId`-getaggt für die
* Auswahl) + ein Raum-Stempel (Text) am Anker (Centroid oder `stampAnchor`) mit
* Name, Fläche „24.30 m²" und SIA-Kürzel. Der Stempel entfällt beim Detailgrad
* „grob"; Fläche/Umfang/Schwerpunkt werden aus `boundary` abgeleitet (nie
* gespeichert). Wird UNTER der Wand-Poché gezeichnet.
* Raum (SIA-416-Fläche) im Grundriss: eine (unsichtbare, nur klickbare) Füll-
* fläche über dem lichten Umriss + eine dünne neutrale Umrisslinie (beide
* `roomId`-getaggt für die Auswahl) + ein Raum-Stempel (Text) am Anker
* (Centroid oder `stampAnchor`) mit Name, Fläche „24.30 m²" und SIA-Kürzel.
* Keine Farbwäsche — Plandarstellung schwarz/grau, Farbe bleibt späteren
* Schema-Ebenen vorbehalten. Der Stempel entfällt beim Detailgrad „grob";
* Fläche/Umfang/Schwerpunkt werden aus `boundary` abgeleitet (nie gespeichert).
* Wird UNTER der Wand-Poché gezeichnet.
*/
function addRoomArea(
out: Primitive[],
@@ -1270,7 +1279,8 @@ function addRoomArea(
const res = evaluateRoom(pts, room.siaCategory);
const stroke = room.color;
// Transluzente Farbfüllung.
// Unsichtbare Füllfläche (Alpha 0): keine Farbwäsche im Plan, das Polygon
// bleibt aber als `roomId`-Primitiv für die Punkt-in-Polygon-Auswahl erhalten.
out.push({
kind: "polygon",
pts,