Arch CutPlane/ru: Difference between revisions

From FreeCAD Documentation
(Created page with "{{GuiCommand/ru |Name=Arch CutPlane |Name/ru=Arch CutPlane |Workbenches=Arch |MenuLocation=Архитектура → Cut Plane |SeeAlso=Arch Remove/ru|У...")
 
(Updating to match new version of source page)
 
(40 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<languages/>

<div class="mw-translate-fuzzy">
{{Docnav/ru
|[[Arch_PipeConnector/ru|PipeConnector]]
|[[Arch_CutLine/ru|CutLine]]
|[[Arch_Workbench/ru|Архитектурный верстак "Arch"]]
|IconL=Arch_PipeConnector.svg
|IconR=Arch_CutLine.svg
|IconC=Workbench_Arch.svg
}}
</div>

<div class="mw-translate-fuzzy">
{{GuiCommand/ru
{{GuiCommand/ru
|Name=Arch CutPlane
|Name=Arch CutPlane
|Name/ru=Arch CutPlane
|Name/ru=Arch CutPlane
|MenuLocation=Архитектура → Срезать по плоскости образца
|Workbenches=[[Arch Module/ru|Arch]]
|Workbenches=[[Arch_Workbench/ru|Arch]]
|MenuLocation=Архитектура → Cut Plane
|SeeAlso=[[Arch Remove/ru|Убрать компонент]]
|SeeAlso=[[Arch Remove/ru|Удалить компонент]]
}}
}}
</div>


==Description==
<span id="Description"></span>
==Описание==


<div class="mw-translate-fuzzy">
The Cut Plane tool allows you to cut an Arch object according to a plan:
Инструмент Cut Plane позволяет обрезать объект Arch в соответствии с плоскостью:
* You can cut an Arch object with the selected face, normal or opposite of the face plan.
* Вы можете обрезать объект Arch выделенной гранью, нормальной или противоположной плоскости фасада.
* This add a substraction component CutVolume to the Arch object
* Это создаёт для объекта Arch компонент для вычитания CutVolume
</div>


[[Image:Arch CutPlane example.jpg|640px]]
[[Image:Arch_CutPlane_example.jpg|400px]]
{{Caption|Left: Before applying the CutPlane tool. Middle: resulting wall after the cut is done. Right: yet another optional result}}


<span id="Usage"></span>
In the above image, two Arch Structure are cut with respective plane.
==Применение==


# If the cutting plane is to be derived from a straight edge ({{Version|1.0}}) optionally align the [[Draft_SelectPlane|working plane]]:
==How to use==
#* The selected edge cannot be parallel to the normal of the working plane.
#* The generated cutting face will be perpendicular to the working plane.
# Select the object to be cut.
# Do one of the following:
#* Select an object with a single planar face. {{Version|1.0}}
#* Select a planar face in the [[3D_view|3D view]].
#* Select an object with a single straight edge. {{Version|1.0}}
#* Select a straight edge in the [[3D_view|3D view]]. {{Version|1.0}}
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Arch_CutPlane.svg|16px]] [[Arch_CutPlane|Cut with plane]]}} button.
#* Select the {{MenuCommand|Arch → [[Image:Arch_CutPlane.svg|16px]] Cut with plane}} option from the menu.
# Choose {{MenuCommand|Behind}} or {{MenuCommand|Front}} to indicate on which side of the cutting face material should be removed.
# Press the {{Button|OK}} button.


<span id="Scripting"></span>
# Select the object to be cut, then the face (the face must be the last one you selected)
==Программирование==
# Press the {{KEY|[[Image:Arch_CutPlane.svg|16px]] '''Cut Plane'''}} button
# Choose if the object is cut '''behind''' the normale face or '''front''' of the normale face
# Click the Ok button


{{Emphasis|See also:}} [[Arch_API|Arch API]] and [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].
==Scripting==

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


The CutPlane tool can by used in [[macros]] and from the python console by using the following function:
{{Code|code=
{{Code|code=
cutObj = cutComponentwithPlane(archObject, cutPlane, sideFace)
cutComponentwithPlane (archObject,face,faceSide)
}}
}}

* archObject is the object to cut
* Creates a {{incode|cutObj}} object from the given {{incode|archObject}}, which is cut by {{incode|cutPlane}}, which is the face of another object.
* face is the face of an object that come the plan from
** {{incode|archObject}} should be a {{incode|SelectionObject}} obtained from {{incode|FreeCADGui.Selection.SelectionEx()[0]}}.
* faceSide is the side of the face to cut. 0 = Behind, 1 = Front
** {{incode|cutPlane}} should be a {{incode|FaceObject}} obtained from {{incode|FreeCADGui.Selection.SelectionEx()[0].SubObjects[0]}}.
<languages/>
* {{incode|sideFace}} specifies on which side of the {{incode|FaceObject}} a volume will be created; this volume will then be used to subtract from the {{incode|archObject}}. If {{incode|sideFace}} is {{incode|0}} it will create a volume in the rear of the face, otherwise it create it in front of the face.

Пример:

{{Code|code=
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()
}}


<div class="mw-translate-fuzzy">
{{Docnav/ru
|[[Arch_PipeConnector/ru|PipeConnector]]
|[[Arch_CutLine/ru|CutLine]]
|[[Arch_Workbench/ru|Архитектурный верстак "Arch"]]
|IconL=Arch_PipeConnector.svg
|IconR=Arch_CutLine.svg
|IconC=Workbench_Arch.svg
}}
</div>

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

Latest revision as of 09:52, 21 April 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. If the cutting plane is to be derived from a straight edge (introduced in version 1.0) optionally align the working plane:
    • The selected edge cannot be parallel to the normal of the working plane.
    • The generated cutting face will be perpendicular to the working plane.
  2. Select the object to be cut.
  3. Do one of the following:
  4. There are several ways to invoke the command:
    • Press the Cut with plane button.
    • Select the Arch → Cut with plane option from the menu.
  5. Choose Behind or Front to indicate on which side of the cutting face material should be removed.
  6. 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()