Arch Couper selon un plan

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

Arch Couper selon un plan

Emplacement du menu
Arch → Couper selon un plan
Ateliers
Arch
Raccourci par défaut
Aucun
Introduit dans la version
-
Voir aussi
Aucun

Description

L'outil Arch Couper selon un plan coupe un objet solide Arch comme un Arch Mur ou une Arch Structure avec une face plane.

À gauche : avant d'appliquer l'outil Couper selon un plan.
Au milieu : mur résultant après la coupe.
À droite : un autre résultat

Utilisation

  1. Si le plan de coupe doit être dérivé d'une arête droite (introduit dans la version 0.22), vous pouvez aligner le plan de travail :
    • L'arête sélectionnée ne peut pas être parallèle à la normale du plan de travail.
    • La face de la coupe générée sera perpendiculaire au plan de travail.
  2. Sélectionnez l'objet à découper.
  3. Effectuez l'une des opérations suivantes :
  4. Il y a plusieurs façons de lancer la commande :
  5. Choisissez Derrière ou Devant pour indiquer de quel côté de la face de la coupe, la matière doit être enlevée.
  6. Appuyez sur le bouton OK.

Script

Voir aussi : Arch API et Débuter avec les scripts FreeCAD.

L'outil Couper selon un plan peut être utilisé dans une macro et à partir de la console Python en utilisant la fonction suivante :

cutObj = cutComponentwithPlane(archObject, cutPlane, sideFace)
  • Crée un objet cutObj à partir de archObject qui est coupé par cutPlane lequel est la face d'un autre objet.
    • archObject doit être un SelectionObject obtenu à partir de FreeCADGui.Selection.SelectionEx()[0].
    • cutPlane doit être un FaceObject obtenu à partir de FreeCADGui.Selection.SelectionEx()[0].SubObjects[0].
  • sideFace indique de quel côté de FaceObject un volume sera créé; ce volume sera ensuite utilisé pour être soustrait de archObject. Si sideFace vaut 0, cela créera un volume à l'arrière de la face, sinon il le créera devant la face.

Exemple :

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