Arch CutPlane/ru: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 1: Line 1:
<languages/>
<languages/>


<div class="mw-translate-fuzzy">
{{Docnav/ru
{{Docnav/ru
|[[Arch_PipeConnector/ru|PipeConnector]]
|[[Arch_PipeConnector/ru|PipeConnector]]
Line 9: Line 10:
|IconC=Workbench_Arch.svg
|IconC=Workbench_Arch.svg
}}
}}
</div>


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 101: Line 103:




<div class="mw-translate-fuzzy">
{{Docnav/ru
{{Docnav/ru
|[[Arch_PipeConnector/ru|PipeConnector]]
|[[Arch_PipeConnector/ru|PipeConnector]]
Line 109: Line 112:
|IconC=Workbench_Arch.svg
|IconC=Workbench_Arch.svg
}}
}}
</div>


{{Arch Tools navi{{#translation:}}}}
{{Arch Tools navi{{#translation:}}}}

Revision as of 14:33, 8 January 2024

Arch CutPlane

Системное название
Arch CutPlane
Расположение в меню
Архитектура → Срезать по плоскости образца
Верстаки
Arch
Быстрые клавиши
Нет
Представлено в версии
-
См. также
Удалить компонент

Описание

Инструмент Cut Plane позволяет обрезать объект Arch в соответствии с плоскостью:

  • Вы можете обрезать объект Arch выделенной гранью, нормальной или противоположной плоскости фасада.
  • Это создаёт для объекта Arch компонент для вычитания CutVolume

Left: Before applying the CutPlane tool. Middle: resulting wall after the cut is done. Right: yet another optional result

Применение

  1. Select the object to be cut in the Tree view or the 3D view.
  2. Select a planar face. This must be selected in the 3D view.
  3. Press the Cut with plane button.
  4. Choose Behind or Front to indicate on which side of the cutting face material should be removed.
  5. Press the OK button.

Программирование

See also: Arch API and FreeCAD Scripting Basics.

The CutPlane tool can be used in macros and from the Python console by using the following function:

cutObj = cutComponentwithPlane(archObject, cutPlane, sideFace)
  • Creates a cutObj object from the given archObject, which is cut by cutPlane, which is the face of another object.
    • archObject should be a SelectionObject obtained from FreeCADGui.Selection.SelectionEx()[0].
    • cutPlane should be a FaceObject obtained from FreeCADGui.Selection.SelectionEx()[0].SubObjects[0].
  • sideFace specifies on which side of the FaceObject a volume will be created; this volume will then be used to subtract from the archObject. If sideFace is 0 it will create a volume in the rear of the face, otherwise it create it in front of the face.

Пример:

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