Part JoinCutout/ru: Difference between revisions
(Updating to match new version of source page) |
(Created page with "{{TitleProperty|Основные}}") |
||
(22 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
{{Docnav|[[Part_JoinEmbed|Embed]]|[[Part_CompSplittingTools|CompSplittingTools]]|[[Part_Module|Part]]|IconL=Part JoinEmbed.png|IconC=Workbench_Part.svg|IconR=Part_CompSplittingTools.png}} |
|||
{{Docnav/ru |
|||
|[[Part_JoinEmbed/ru|Встроить]] |
|||
|[[Part_CompSplittingTools/ru|Инструменты разделения]] |
|||
|[[Part_Workbench/ru|Верстак Part]] |
|||
|IconL=Part_JoinEmbed.svg |
|||
|IconR=Part_CompSplittingTools.png |
|||
|IconC=Workbench_Part.svg |
|||
}} |
|||
<div class="mw-translate-fuzzy"> |
|||
{{GuiCommand/ru |
{{GuiCommand/ru |
||
|Name=Part JoinCutout |
|Name=Part JoinCutout |
||
|Name/ru=Part JoinCutout |
|Name/ru=Part JoinCutout |
||
|MenuLocation=Деталь → Join → Cutout for Object |
|MenuLocation=Деталь → Join → Cutout for Object |
||
|Workbenches=[[ |
|Workbenches=[[Part_Workbench/ru|Part]] |
||
⚫ | |||
|SeeAlso=[[Part_JoinConnect/ru|Connect]], [[Part_JoinEmbed/ru|Embed]], [[Part |
|SeeAlso=[[Part_JoinConnect/ru|Connect]], [[Part_JoinEmbed/ru|Embed]], [[Part Boolean/ru|Part Boolean]], [[Part Thickness/ru|Part Thickness]] |
||
}} |
}} |
||
</div> |
|||
==Описание== |
|||
==Description== |
|||
⚫ | |||
⚫ | |||
[[image:JoinFeatures_Cutout.png|600px]] |
[[image:JoinFeatures_Cutout.png|600px]] |
||
==Применение== |
|||
==Usage== |
|||
# Select the base object first, then the object to define the cutout. <br /> The order of selection is important. It is enough to select one sub-shape of each object (e.g., faces). |
# Select the base object first, then the object to define the cutout. <br /> The order of selection is important. It is enough to select one sub-shape of each object (e.g., faces). |
||
# Invoke the Part JoinCutout command |
# Invoke the Part JoinCutout command several ways: |
||
#* Pressing on the [[Image:Part_JoinCutout.svg|24px|link=Part_JoinCutout]] [[Part_JoinCutout|Part JoinCutout]] button in the Part toolbar |
|||
#* Using the {{MenuCommand|Part → Join → Cutout for Object}} entry in the Part menu |
|||
A Part JoinFeature object is created, with Mode set to 'Cutout'. Original objects are hidden, and the result of cutting is shown in 3D view. |
A Part JoinFeature object is created, with Mode set to 'Cutout'. Original objects are hidden, and the result of cutting is shown in [[3D_view|3D view]]. |
||
==Свойства== |
|||
⚫ | |||
==Properties== |
|||
⚫ | |||
* {{PropertyData|Base}}: Reference to base object (the one to make the cutout in). The object should be a single solid. |
* {{PropertyData|Base}}: Reference to base object (the one to make the cutout in). The object should be a single solid. |
||
* {{PropertyData|Tool}}: Reference to tool object (the object that is to fit into the cutout). The object can be a single solid, or a [[ |
* {{PropertyData|Tool}}: Reference to tool object (the object that is to fit into the cutout). The object can be a single solid, or a [[Part_Compound|valid compound]] of solids. |
||
* {{PropertyData|Mode}}: The mode of operation, equals 'Cutout' (Changing that will transform the tool into another Part_JoinXXX). The value of 'bypass' can be used to temporarily disable the long computations (a compound of Base and Tool will be created, which is a fast operation). |
* {{PropertyData|Mode}}: The mode of operation, equals 'Cutout' (Changing that will transform the tool into another Part_JoinXXX). The value of 'bypass' can be used to temporarily disable the long computations (a compound of Base and Tool will be created, which is a fast operation). |
||
* {{PropertyData|Refine}}: Sets whether to apply [[ |
* {{PropertyData|Refine}}: Sets whether to apply [[Part_RefineShape|Refine]] operation or not, to the final shape. The default value is determined by a 'Automatically refine shape after boolean operation' checkbox in PartDesign preferences. When Mode property is 'bypass', Refine is ignored (never applied). |
||
==Пример== |
|||
==Example== |
|||
# Create a pipe by applying [[Part_Thickness|thickness]] to a [[Part_Cylinder|cylinder]]: <br />[[image:JoinFeatures_Example_step1.png|320px]] |
# Create a pipe by applying [[Part_Thickness|thickness]] to a [[Part_Cylinder|cylinder]]: <br />[[image:JoinFeatures_Example_step1.png|320px]] |
||
# Create another, smaller diameter pipe, and [[Placement|place]] it so that it pierces the wall of the first pipe: <br />[[image:JoinFeatures_Example_step2.png|320px]] |
# Create another, smaller diameter pipe, and [[Placement|place]] it so that it pierces the wall of the first pipe: <br />[[image:JoinFeatures_Example_step2.png|320px]] |
||
# Select the first pipe, then the second pipe (order of selection is important), and click the 'Cutout for object' option from the Join tools dropdown toolbar button. <br />[[image:JoinFeatures_Example_step3_Cutout.png|320px]] |
# Select the first pipe, then the second pipe (order of selection is important), and click the 'Cutout for object' option from the Join tools dropdown toolbar button. <br />[[image:JoinFeatures_Example_step3_Cutout.png|320px]] |
||
==Алгоритм== |
|||
==Algorithm== |
|||
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly. |
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly. |
||
1. Base object is [[ |
1. Base object is [[Part_Cut|boolean-cut]] with Tool object. The resulting shape is a set ([[Part_Compound|compound]]) of non-intersecting solids (typically, two). |
||
2. The resulting compound is filtered: only the largest solid is kept. |
2. The resulting compound is filtered: only the largest solid is kept. |
||
3. If Refine property is true, the resulting shape is [[ |
3. If Refine property is true, the resulting shape is [[Part_RefineShape|refined]]. |
||
<br /><br />[[image:JoinFeatures-Algo-Cutout.png|800px]] |
<br /><br />[[image:JoinFeatures-Algo-Cutout.png|800px]] |
||
=== |
===Примечания=== |
||
* If after step 1, the object remains in one piece, the result of Cutout will be equivalent to [[ |
* If after step 1, the object remains in one piece, the result of Cutout will be equivalent to [[Part_Cut|boolean cut]] of Base with Tool. |
||
* Now, the tool will produce unexpected result, if a compound is supplied as Base. This may be changed in the future. |
* Now, the tool will produce unexpected result, if a compound is supplied as Base. This may be changed in the future. |
||
* Because the largest piece is determined by comparing volumes of pieces, the tool can only work with solids. This may be changed in the future. |
* Because the largest piece is determined by comparing volumes of pieces, the tool can only work with solids. This may be changed in the future. |
||
==Программирование== |
|||
==Scripting== |
|||
The Join tools can by used in [[macros]] and from the python console by using the following function: |
The Join tools can by used in [[macros]] and from the python console by using the following function: |
||
{{Code|code=JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout')}} |
|||
* Creates an empty Cutout feature (or other Join feature, depending on mode passed). The properties Base and Tool must be assigned explicitly, afterwards. |
* Creates an empty Cutout feature (or other Join feature, depending on mode passed). The properties Base and Tool must be assigned explicitly, afterwards. |
||
* Returns the newly created object. |
* Returns the newly created object. |
||
Пример: |
|||
Example: |
|||
{{code|code= |
{{code|code= |
||
import JoinFeatures |
import JoinFeatures |
||
Line 64: | Line 83: | ||
j.Tool = FreeCADGui.Selection.getSelection()[1] |
j.Tool = FreeCADGui.Selection.getSelection()[1] |
||
}} |
}} |
||
⚫ | |||
⚫ | |||
⚫ | |||
The tool was introduced in FreeCAD v0.16.5069 |
|||
{{Docnav|[[Part_JoinEmbed|Embed]]|[[Part_CompSplittingTools|CompSplittingTools]]|[[Part_Module|Part]]|IconL=Part JoinEmbed.png|IconC=Workbench_Part.svg|IconR=Part_CompSplittingTools.png}} |
|||
{{Docnav/ru |
|||
⚫ | |||
|[[Part_JoinEmbed/ru|Встроить]] |
|||
|[[Part_CompSplittingTools/ru|Инструменты разделения]] |
|||
⚫ | |||
|[[Part_Workbench/ru|Верстак Part]] |
|||
|IconL=Part_JoinEmbed.svg |
|||
|IconR=Part_CompSplittingTools.png |
|||
|IconC=Workbench_Part.svg |
|||
}} |
|||
⚫ | |||
{{clear}} |
|||
⚫ |
Latest revision as of 10:38, 12 September 2021
Part JoinCutout |
Системное название |
---|
Part JoinCutout |
Расположение в меню |
Деталь → Join → Cutout for Object |
Верстаки |
Part |
Быстрые клавиши |
Нет |
Представлено в версии |
0.16.5069 |
См. также |
Connect, Embed, Part Boolean, Part Thickness |
Описание
The Part JoinCutout tool creates a cutout in a walled object (e.g., a pipe) to fit another walled object.
Применение
- Select the base object first, then the object to define the cutout.
The order of selection is important. It is enough to select one sub-shape of each object (e.g., faces). - Invoke the Part JoinCutout command several ways:
- Pressing on the Part JoinCutout button in the Part toolbar
- Using the Part → Join → Cutout for Object entry in the Part menu
A Part JoinFeature object is created, with Mode set to 'Cutout'. Original objects are hidden, and the result of cutting is shown in 3D view.
Свойства
Основные
- ДанныеBase: Reference to base object (the one to make the cutout in). The object should be a single solid.
- ДанныеTool: Reference to tool object (the object that is to fit into the cutout). The object can be a single solid, or a valid compound of solids.
- ДанныеMode: The mode of operation, equals 'Cutout' (Changing that will transform the tool into another Part_JoinXXX). The value of 'bypass' can be used to temporarily disable the long computations (a compound of Base and Tool will be created, which is a fast operation).
- ДанныеRefine: Sets whether to apply Refine operation or not, to the final shape. The default value is determined by a 'Automatically refine shape after boolean operation' checkbox in PartDesign preferences. When Mode property is 'bypass', Refine is ignored (never applied).
Пример
- Create a pipe by applying thickness to a cylinder:
- Create another, smaller diameter pipe, and place it so that it pierces the wall of the first pipe:
- Select the first pipe, then the second pipe (order of selection is important), and click the 'Cutout for object' option from the Join tools dropdown toolbar button.
Алгоритм
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly.
1. Base object is boolean-cut with Tool object. The resulting shape is a set (compound) of non-intersecting solids (typically, two).
2. The resulting compound is filtered: only the largest solid is kept.
3. If Refine property is true, the resulting shape is refined.
Примечания
- If after step 1, the object remains in one piece, the result of Cutout will be equivalent to boolean cut of Base with Tool.
- Now, the tool will produce unexpected result, if a compound is supplied as Base. This may be changed in the future.
- Because the largest piece is determined by comparing volumes of pieces, the tool can only work with solids. This may be changed in the future.
Программирование
The Join tools can by used in macros and from the python console by using the following function:
JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout')
- Creates an empty Cutout feature (or other Join feature, depending on mode passed). The properties Base and Tool must be assigned explicitly, afterwards.
- Returns the newly created object.
Пример:
import JoinFeatures
j = JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout' )
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tool = FreeCADGui.Selection.getSelection()[1]
The tool itself is implemented in Python, see /Mod/Part/JoinFeatures.py (Github link) under where FreeCAD is installed.
- Примитивы: Куб(Параллелограмм), Конус, Цилиндр, Сфера, Тор, Полый цилиндр,Примитивы, Связующие формы
- Создание и правка: Выдавливание, Построение фигуры вращения, Отражение, Скругление, Фаска, Создать плоскость из граней, Ruled Surface, Профиль, Sweep, Section, Cross sections, 3D Offset, 2D Offset, Создать полый объект, Projection on surface, Прикрепление
- Булевы операции: Соединить, Разорвать связь, Compound Filter, Булевы операции, Cut, Fuse, Common, Connect, Embed, Cutout, Boolean fragments, Slice apart, Slice, XOR
- Измерительные: Measure Linear, Measure Angular, Measure Refresh, Clear All, Toggle All, Toggle 3D, Toggle Delta
- Начинающим
- Установка: Загрузка, Windows, Linux, Mac, Дополнительных компонентов, Docker, AppImage, Ubuntu Snap
- Базовая: О FreeCAD, Интерфейс, Навигация мыши, Методы выделения, Имя объекта, Настройки, Верстаки, Структура документа, Свойства, Помоги FreeCAD, Пожертвования
- Помощь: Учебники, Видео учебники
- Верстаки: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework