Arch Schnittebene

From FreeCAD Documentation
Revision as of 22:06, 5 February 2019 by Le Loup (talk | contribs)

Arch CutPlane

Menüeintrag
Arch → Schneiden in einer Ebene
Arbeitsbereich
Arch
Standardtastenkürzel
Keiner
Eingeführt in Version
-
Siehe auch
Arch Remove

Beschreibung

Das Schneiden-in-einer-Ebene-Werkzeug erlaubt es, ein Arch-Objekt entsprechend einem Plan (plan) zu schneiden:

  • Du kannst ein Arch-Objekt mit der ausgewählten Oberfläche beschneiden, Vorder- oder Rückseite
  • Dies fügt dem Arch-Objekt eine Subtraction-Komponente namens CutVolume hinzu

Im obigen Bild werden zwei Arch-Strukturen mit jeweiliger Ebene beschnitten.

Anwendung

  1. Wähle das zu beschneidende Objekt, dann die Oberfläche (die Oberfläche muss zuletzt und in der 3D-Ansicht ausgewählt werden)
  2. Drücke die Schaltfläche Arch Schneiden in einer Ebene
  3. Wähle, ob das Objekt vor oder hinter der normale Oberfläche beschnitten werden soll
  4. Klicke auf den OK-Button

Scripting

Siehe auch: Arch API und FreeCAD Scripting Basics.

Das Werkzeug kann in Makros und aus der Python-Konsole heraus durch folgende Funktion angesprochen werden:

cutObj = cutComponentwithPlane(archObject, cutPlane, sideFace)
  • archObject ist das zu beschneidende Objekt
  • face ist die Oberfläche eines Objekts, das den Plan zum Beschneiden definiert
  • faceSide ist die zu beschneidende Seite der Oberfläche. 0 = Hinten, 1 = Vorne

Beispiel:

import FreeCAD, FreeCADGui, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 2000, 0)

Line = Draft.makeWire([p1, p2])
Wall = Arch.makeWall(Line, width=150, height=2000)

p3 = FreeCAD.Vector(0, 2000, 0)
p4 = FreeCAD.Vector(3000, 0, 0)

Line2 = Draft.makeWire([p3, p4])
Wall2 = Arch.makeWall(Line2, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

# Select the Wall
main_object = FreeCADGui.Selection.getSelectionEx()[0]

# Select the face of Wall2
selection = FreeCADGui.Selection.getSelectionEx()[0]
cut_face = selection.SubObjects[0]

cutObj = Arch.cutComponentwithPlane(main_object, cut_face, 0)
FreeCAD.ActiveDocument.recompute()

Wall3 = Draft.move(Wall, FreeCAD.Vector(-4000, 0, 0), copy=True)
Wall4 = Draft.move(Wall2, FreeCAD.Vector(-4000, 0, 0), copy=True)
FreeCAD.ActiveDocument.recompute()

# Select the Wall3
main_object2 = FreeCADGui.Selection.getSelectionEx()[0]

# Select the face of Wall4
selection2 = FreeCADGui.Selection.getSelectionEx()[0]
cut_face2 = selection2.SubObjects[0]

cutObj2 = Arch.cutComponentwithPlane(main_object2, cut_face2, 1)
FreeCAD.ActiveDocument.recompute()