Wand-Outlines temporaer deaktiviert (Tech-Drawing-Konflikt)
Die Outline-Curves lagen exakt auf z=0 wie die unteren Brep-Edges. Rhinos Technical-Drawing Hidden-Line-Analyse choked nach jedem Regen mit Duplikat- Linien → wireframe-Fallback. - _regen_wall_lines.outline branch auskommentiert - _migrate_strip_wand_outlines_once raeumt existierende wand_outline-Curves beim naechsten Doc-Open weg - Centerline (offset, dashed, locked) bleibt — kein Edge-Overlap Wenn Outline-Visualisierung wieder gewollt: via Display-Conduit (visual-only, keine Tech-Drawing-Interferenz).
This commit is contained in:
+36
-6
@@ -3276,12 +3276,16 @@ def _regen_wall_lines(doc, wall_id, in_cluster=False):
|
|||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
print("[ELEMENTE] AddCurve centerline:", ex)
|
print("[ELEMENTE] AddCurve centerline:", ex)
|
||||||
|
|
||||||
outline = _make_wall_outline(axis_curve, dicke, referenz)
|
# Outline-Curve TEMPORAER deaktiviert: lag exakt auf z=0 wie die unteren
|
||||||
if outline is not None:
|
# Brep-Edges → Technical-Drawing Hidden-Line-Analyse choked nach jedem
|
||||||
try: doc.Objects.AddCurve(outline, _build_attrs("wand_outline",
|
# Regen. Wenn der User die outline-Visualisierung braucht, muessen wir
|
||||||
dashed=False))
|
# auf Display-Conduit umstellen (nicht Tech-Drawing analysiert).
|
||||||
except Exception as ex:
|
# outline = _make_wall_outline(axis_curve, dicke, referenz)
|
||||||
print("[ELEMENTE] AddCurve outline:", ex)
|
# if outline is not None:
|
||||||
|
# try: doc.Objects.AddCurve(outline, _build_attrs("wand_outline",
|
||||||
|
# dashed=False))
|
||||||
|
# except Exception as ex:
|
||||||
|
# print("[ELEMENTE] AddCurve outline:", ex)
|
||||||
|
|
||||||
|
|
||||||
# Alias fuer Backwards-Compat — alte Callsites benutzen den alten Namen.
|
# Alias fuer Backwards-Compat — alte Callsites benutzen den alten Namen.
|
||||||
@@ -15634,6 +15638,29 @@ def _migrate_plangrafik_60_to_80_once(doc):
|
|||||||
except Exception: pass
|
except Exception: pass
|
||||||
|
|
||||||
|
|
||||||
|
def _migrate_strip_wand_outlines_once(doc):
|
||||||
|
"""One-shot: alle bestehenden wand_outline Curves loeschen (Feature
|
||||||
|
temporaer deaktiviert wegen Technical-Drawing Hidden-Line-Konflikt).
|
||||||
|
Bei spaeterer Re-Aktivierung als Display-Conduit hinfaellig."""
|
||||||
|
if doc is None: return
|
||||||
|
try: key = "_dossier_wand_outlines_strip_" + str(doc.RuntimeSerialNumber)
|
||||||
|
except Exception: key = "_dossier_wand_outlines_strip_default"
|
||||||
|
if sc.sticky.get(key): return
|
||||||
|
sc.sticky[key] = True
|
||||||
|
n = 0
|
||||||
|
try:
|
||||||
|
for obj in list(doc.Objects):
|
||||||
|
try:
|
||||||
|
if obj.Attributes.GetUserString(_KEY_TYPE) == "wand_outline":
|
||||||
|
doc.Objects.Delete(obj.Id, True)
|
||||||
|
n += 1
|
||||||
|
except Exception: pass
|
||||||
|
except Exception as ex:
|
||||||
|
print("[ELEMENTE] strip wand_outlines migration:", ex)
|
||||||
|
if n > 0:
|
||||||
|
print("[ELEMENTE] Strip-Wand-Outlines Migration: {} entfernt".format(n))
|
||||||
|
|
||||||
|
|
||||||
def _migrate_strip_wall_auto_groups_once(doc):
|
def _migrate_strip_wall_auto_groups_once(doc):
|
||||||
"""One-shot pro Dokument: alle wand_axis-Achsen aus ihren Auto-Groups
|
"""One-shot pro Dokument: alle wand_axis-Achsen aus ihren Auto-Groups
|
||||||
raus (= alte Memberships von _add_to_wall_group). Group-Inhalt-Check:
|
raus (= alte Memberships von _add_to_wall_group). Group-Inhalt-Check:
|
||||||
@@ -15893,6 +15920,9 @@ def _on_idle_selection(sender, e):
|
|||||||
# One-shot: alte Wand-Auto-Groups stripten (Axis war frueher mit Volume
|
# One-shot: alte Wand-Auto-Groups stripten (Axis war frueher mit Volume
|
||||||
# gegruppt — jetzt sollen Click auf Linie nur die Linie selektieren)
|
# gegruppt — jetzt sollen Click auf Linie nur die Linie selektieren)
|
||||||
_migrate_strip_wall_auto_groups_once(doc)
|
_migrate_strip_wall_auto_groups_once(doc)
|
||||||
|
# One-shot: alte wand_outline Curves entfernen (Feature deaktiviert
|
||||||
|
# wegen Technical-Drawing Konflikt)
|
||||||
|
_migrate_strip_wand_outlines_once(doc)
|
||||||
# Oeffnungen-Tree in dossier_ebenen anlegen falls noch nicht vorhanden
|
# Oeffnungen-Tree in dossier_ebenen anlegen falls noch nicht vorhanden
|
||||||
# (sonst erscheinen die neuen Sublayer nicht im Ebenen-Panel).
|
# (sonst erscheinen die neuen Sublayer nicht im Ebenen-Panel).
|
||||||
_ensure_oeff_ebenen_once(doc)
|
_ensure_oeff_ebenen_once(doc)
|
||||||
|
|||||||
Reference in New Issue
Block a user