Arch Überprüfen

From FreeCAD Documentation
This page is a translated version of the page Arch Check and the translation is 100% complete.

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 Part- oder Arch-Objekte, die keine Festkörper sind und Probleme bereiten könnten, da die meisten Operationen des Arbeitsbereichs Arch Festkörper erfordern.

Anwendung

  1. Die Schaltfläche Überprüfung drücken oder den Menüeintrag ArchDienstprogramme Überprüfung auswählen.

Skripten

Siehe auch: Arch API und FreeCAD Grundlagen Skripten.

Dieses Werkzeug kann in Makros und von der Python-Konsole aus durch folgende 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)