Fenster: Linienstärke/Farbe (sashLine) wirkt jetzt auch bei 1:100
Die einzige bei "grob" sichtbare Glaslinie war fest codiert (weder Opening. color noch die neuen Kategorie-Übersteuerungen griffen dort). Nutzt jetzt sashLine (Fenster-Kategorie), konsistent mit mittel/fein.
This commit is contained in:
@@ -2265,9 +2265,20 @@ function addOpeningSymbol(
|
|||||||
|
|
||||||
if (detail === "grob") {
|
if (detail === "grob") {
|
||||||
// SIA 1:100 — nur eine dünne Glaslinie mittig über die weisse Öffnung.
|
// SIA 1:100 — nur eine dünne Glaslinie mittig über die weisse Öffnung.
|
||||||
|
// Zählt zur "Fenster"-Kategorie (sashLine) — dieselbe Glaslinie, die bei
|
||||||
|
// mittel/fein früher sichtbar war (jetzt dort entfernt, s. Fenster-Session).
|
||||||
const g = sym.glassLines[Math.floor(sym.glassLines.length / 2)] ?? sym.glassLines[0];
|
const g = sym.glassLines[Math.floor(sym.glassLines.length / 2)] ?? sym.glassLines[0];
|
||||||
if (g) {
|
if (g) {
|
||||||
out.push({ kind: "line", a: g[0], b: g[1], cls: "window-glass", weightMm: SYMBOL_HAIRLINE_MM, greyed, openingId: o.id });
|
out.push({
|
||||||
|
kind: "line",
|
||||||
|
a: g[0],
|
||||||
|
b: g[1],
|
||||||
|
cls: "window-glass",
|
||||||
|
weightMm: o.sashLine?.weight ?? SYMBOL_HAIRLINE_MM,
|
||||||
|
color: o.sashLine?.color ?? strokeColor,
|
||||||
|
greyed,
|
||||||
|
openingId: o.id,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Linien-Kategorien einzeln übersteuerbar (Nutzer-Wunsch): Rahmen (Blend-
|
// Linien-Kategorien einzeln übersteuerbar (Nutzer-Wunsch): Rahmen (Blend-
|
||||||
|
|||||||
@@ -389,6 +389,17 @@ describe("generatePlan — Linien-Übersteuerung je Kategorie (Opening.frameLine
|
|||||||
expect(sill[0].kind === "line" && sill[0].color).toBe("#0000ff");
|
expect(sill[0].kind === "line" && sill[0].color).toBe("#0000ff");
|
||||||
expect(sill[0].kind === "line" && sill[0].weightMm).toBeCloseTo(0.4, 6);
|
expect(sill[0].kind === "line" && sill[0].weightMm).toBeCloseTo(0.4, 6);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("sashLine wirkt auch bei 'grob' (1:100) auf die einzige dort sichtbare Glaslinie", () => {
|
||||||
|
const p = project(
|
||||||
|
{ ...baseWindow, typeId: "wt1", sashLine: { color: "#00ff00", weight: 0.3 } },
|
||||||
|
[twoSashType],
|
||||||
|
);
|
||||||
|
const g = linesOfClass(p, "window-glass", "grob");
|
||||||
|
expect(g.length).toBe(1);
|
||||||
|
expect(g[0].kind === "line" && g[0].color).toBe("#00ff00");
|
||||||
|
expect(g[0].kind === "line" && g[0].weightMm).toBeCloseTo(0.3, 6);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("generatePlan — Rollladenkasten shading (Item 3)", () => {
|
describe("generatePlan — Rollladenkasten shading (Item 3)", () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user