Arch Überprüfen

From FreeCAD Documentation
Revision as of 12:35, 1 December 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Arch Überprüfen

Menüeintrag
Arch → Dienstprogramme → Überprüfen
Arbeitsbereich
Arch
Standardtastenkürzel
Keiner
Eingeführt in Version
-
Siehe auch
Arch SchließeLöcher

Beschreibung

Dieses Werkzeug prüft das aktuelle Dokument oder die ausgewählten Objekte auf nicht Volumenkörper Part oder Arch Objekte, die Probleme bereiten könnten, da die meisten Operationen des Arch Moduls Volumenkörper erfordern.

Anwendung

  1. Drücke die Überprüfung Schaltfläche oder ArchDienstprogramme Überprüfung im oberen Menü.

Skripten

Siehe auch: Arch API und FreeCAD Grundlagen Skripten.

Dieses Werkzeug kann in Makros und von der Python Konsole aus mit der folgenden Funktion verwendet werden:

list_bad = check(objectslist, includehidden=False)
  • Prüft, ob es sich bei allen angegebenen Objekten in objectslist um Volumenkörper (solids) handelt.
  • Wenn includehidden den Wert True hat, werden auch alle versteckten Objekte berücksichtigt, anderenfalls von der Suche ausgenommen.
  • Liefert in list_bad eine Liste mit Objekten zurück, die nicht von einem Part::Feature abgeleitet sind oder Komponenten, die nicht geschlossen, nicht valide sind, keine Volumenkörper sind oder die Flächen enthalten, die nicht Teil irgendeines Volumenkörpers sind. Diese Liste wird im Arch- oder Draft-Arbeitsbereich genutzt, um Linienzüge und Profile zu erkennen, die keine Volumenkörper sind.
    • Jedes Element in list_bad ist eine weitere Liste object, message, wobei object der erkannte nicht-Volumenkörper ist und message den Grund angibt, warum er in dieser Liste enthalten ist.

Beispiel:

import FreeCAD, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 0, 0)
baseline = Draft.makeLine(p1, p2)
Wall1 = Arch.makeWall(baseline, length=None, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

Wall2 = Arch.makeWall(None, length=2000, width=200, height=1000)
FreeCAD.ActiveDocument.recompute()

Circle = Draft.makeCircle(450)
Wire = Draft.makeWire([FreeCAD.Vector(1000, 0, 0), FreeCAD.Vector(1500, 1000, 0), FreeCAD.Vector(2500, -1000, 0)])

list_bad = Arch.check([Wall1, Wall2, Circle, Wire], includehidden=True)
print(list_bad)