Arch CutPlane/de: Difference between revisions

From FreeCAD Documentation
(Created page with "{{docnav/de|Schedule|Add component|Arch}}")
No edit summary
Line 34: Line 34:
}}
}}


* Erstellt ein {{incode|cutObj}}-Objekt aus dem gegebenen {{incode|archObject}}, das von {{incode|cutPlane}} geschnitten wird, das eine Fläche eines anderen Objekts ist.
<div class="mw-translate-fuzzy">
** {{incode|archObject}} sollte ein {{incode|SelectionObject}} sein, das aus {{incode|FreeCADGui.Selection.SelectionEx()[0]}} stammt.
* ''archObject'' ist das zu beschneidende Objekt
** {{incode|cutPlane}} sollte ein {{incode|FaceObject}} sein, das aus {{incode|FreeCADGui.Selection.SelectionEx()[0].SubObjects[0]}} stammt.
* ''face'' ist die Oberfläche eines Objekts, das den Plan zum Beschneiden definiert
* {{incode|sideFace}} gibt die Seite an, auf der ein {{incode|FaceObject}} eines Volumenkörpers erzeugt werden soll; dieser Volumenkörper wird dann vom {{incode|archObject}} subtrahiert (subtracted). Falls {{incode|sideFace}} den Wert {{incode|0}} hat, wird ein Volumenkörper auf der Rückseite der Fläche erzeugt, anderenfalls auf der Vorderseite der Fläche.
* ''faceSide'' ist die zu beschneidende Seite der Oberfläche. 0 = Hinten, 1 = Vorne
</div>


Beispiel:
Beispiel:

Revision as of 21:13, 6 February 2019

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)
  • Erstellt ein cutObj-Objekt aus dem gegebenen archObject, das von cutPlane geschnitten wird, das eine Fläche eines anderen Objekts ist.
    • archObject sollte ein SelectionObject sein, das aus FreeCADGui.Selection.SelectionEx()[0] stammt.
    • cutPlane sollte ein FaceObject sein, das aus FreeCADGui.Selection.SelectionEx()[0].SubObjects[0] stammt.
  • sideFace gibt die Seite an, auf der ein FaceObject eines Volumenkörpers erzeugt werden soll; dieser Volumenkörper wird dann vom archObject subtrahiert (subtracted). Falls sideFace den Wert 0 hat, wird ein Volumenkörper auf der Rückseite der Fläche erzeugt, anderenfalls auf der Vorderseite der Fläche.

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()