Part Slice/ru: Difference between revisions

From FreeCAD Documentation
(Created page with "Общее действие инструмента очень похоже на 24px Boolean Fragments, за...")
(Updating to match new version of source page)
 
(45 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<div class="mw-translate-fuzzy">
{{Docnav/ru
{{Docnav/ru
|[[Part_SliceApart/ru|Slice a part]]
|[[Part_SliceApart/ru|Slice to compoundApart]]
|[[Part_XOR/ru|XOR]]
|[[Part_XOR/ru|Boolean XOR]]
|[[Part_Module/ru|Part]]
|[[Part_Workbench/ru|Верстак Part]]
|IconL=Part_SliceApart.svg
|IconL=Part_SliceApart.svg
|IconR=Part_XOR.svg
|IconC=Workbench_Part.svg
|IconC=Workbench_Part.svg
|IconR=Part_XOR.svg
}}
}}
</div>


<div class="mw-translate-fuzzy">
{{GuiCommand/ru
{{GuiCommand/ru
|Name=Part Slice
|Name=Part Slice
|Name/ru=Part Slice
|Name/ru=Part Slice
|MenuLocation=Деталь → Split → Slice
|MenuLocation=Деталь → Split → Slice
|Workbenches=[[Part_Workbench/ru|Part]]
|Version=0.17.8053
|Version=0.17
|Workbenches=[[Part Module/ru|Part]]
|SeeAlso=[[Part_BooleanFragments/ru|Part Boolean Fragments]], [[Part_XOR/ru|Part XOR]], [[Part_CompJoinFeatures/ru|Part Join features]], [[Part Boolean/ru|Part Boolean]]}}
|SeeAlso=[[Part_BooleanFragments/ru|Part Boolean Fragments]], [[Part_XOR/ru|Part XOR]], [[Part_CompJoinFeatures/ru|Part Join features]], [[Part_Boolean/ru|Part Boolean]]
}}
</div>


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


[[Image:Part_Slice.svg|24px]] [[Part Slice\ru|Part Slice]], так же известный как "Разделить в компаунд", это инструмент, используемый для разделения фигур через пересечение с другими фигурами. Например, для куба и плоскости создаётся компаунд из двух тел.
Команда [[Image:Part_Slice.svg|24px]] [[Part_Slice/ru|Разрезать]], которую также можно применить, чтобы "сделать надрез", это инструмент, используемый для разделения фигур через пересечение с другими фигурами. Например, из куба будет создана композиция из двух тел, если разрезать его плоскостью.


[[image:Part_Slice_Demo.png|600px]]
[[image:Part_Slice_Demo.png|600px]]
Line 25: Line 31:
{{Caption|Выше: части были впоследствии раздвинуты вручную, чтобы показать разрез}}
{{Caption|Выше: части были впоследствии раздвинуты вручную, чтобы показать разрез}}


<div class="mw-translate-fuzzy">
Имеются две команды для разделения фигуры: [[Image:Part_SliceApart.svg|24px]] [[Part SliceApart/ru|Slice apart]] и [[Image:Part_Slice.svg|24px]] [[Part Slice|Slice to compound]]. Они оба создают параметрический объект «Срез», который объединяет разрезанные части в компаунд. В то же время [[Image:Part_SliceApart.svg|24px]] [[Part SliceApart/ru|Slice Apart]] разбивает полученное соединение на отдельные объекты. «Slice to compound» полностью параметрический, и не имеет проблем при изменении количества частей. «Slice apart» не будет обновлять количество объектов при изменении числа частей.
Имеются две команды для разделения фигуры: [[Image:Part_SliceApart.svg|24px]] [[Part SliceApart/ru|Slice apart]] и [[Image:Part_Slice.svg|24px]] [[Part Slice|Slice to compound]]. Они оба создают параметрический объект «Срез», который объединяет разрезанные части в компаунд. В то же время [[Image:Part_SliceApart.svg|24px]] [[Part SliceApart/ru|Slice Apart]] разбивает полученное соединение на отдельные объекты. «Slice to compound» полностью параметрический, и не имеет проблем при изменении количества частей. «Slice apart» не будет обновлять количество объектов при изменении числа частей.
</div>


<div class="mw-translate-fuzzy">
Итоговая форма занимают то же место, что и оригинал. Но она разделена там, где пересекается с другими формами. Разделенные части складываются в компаунд (или композит), поэтому кажется, что объект остается одним целым. Вам нужно взорвать соединение, чтобы получить отдельные части. Если вы хотите получить доступ к отдельным частям параметрическим способом, вы можете использовать для этой цели [[Image:Part_CompoundFilter.svg|24px]] [[Part_CompoundFilter/ru|Part CompoundFilter]]. Для быстрого, непараметрического доступа используйте [[Image:Draft_Downgrade.svg|24px]] [[Draft Downgrade/ru|Downgrade]].
Итоговая форма занимают то же место, что и оригинал. Но она разделена там, где пересекается с другими формами. Разделенные части складываются в компаунд (или композит), поэтому кажется, что объект остается одним целым. Вам нужно взорвать соединение, чтобы получить отдельные части. Если вы хотите получить доступ к отдельным частям параметрическим способом, вы можете использовать для этой цели [[Image:Part_CompoundFilter.svg|24px]] [[Part_CompoundFilter/ru|Part CompoundFilter]]. Для быстрого, непараметрического доступа используйте [[Image:Draft_Downgrade.svg|24px]] [[Draft Downgrade/ru|Downgrade]].
</div>


Инструмент имеет три режима: «Standard», «Split» и «CompSolid». Формы выбора нет, они предопределены, но доступны после операции на уровне результирующих срезов.
Инструмент имеет три режима: «Standard», «Split» и «CompSolid». Формы выбора нет, они предопределены, но доступны после операции на уровне результирующих срезов.
Line 37: Line 47:
В режиме «CompSolid» на выходе получается compsolid (или соединение compsolids, если полученные твердые тела образуют более одного острова связности). Compsolid - это набор тел, соединенных гранями; они связаны с твердыми телами, как полилинии связаны с ребрами, а оболочки связаны с гранями; название, вероятно, является сокращённым словосочетанием «композитное твердое тело».
В режиме «CompSolid» на выходе получается compsolid (или соединение compsolids, если полученные твердые тела образуют более одного острова связности). Compsolid - это набор тел, соединенных гранями; они связаны с твердыми телами, как полилинии связаны с ребрами, а оболочки связаны с гранями; название, вероятно, является сокращённым словосочетанием «композитное твердое тело».


<div class="mw-translate-fuzzy">
Общее действие инструмента очень похоже на [[Image:Part_BooleanFragments.svg|24px]] [[Part BooleanFragments/ru|Boolean Fragments]], за исключением того, что в результате получаются части только из первой формы.
Общее действие инструмента очень похоже на [[Image:Part_BooleanFragments.svg|24px]] [[Part BooleanFragments/ru|Boolean Fragments]], за исключением того, что в результате получаются части только из первой формы.
</div>


==Usage==
<span id="Usage"></span>
==Применение==


<div class="mw-translate-fuzzy">
# Select the object to be sliced, first, and then some objects to slice with. <br /> The order of selection is important. Compounds with self-intersections are not allowed (self-intersections sometimes can be accounted for by passing the compound through [[Image:Part_BooleanFragments.svg|24px]] [[Part_BooleanFragments|BooleanFragments]])
# Сначала выберите объект для нарезки, а затем несколько объектов чтобы резать. <br /> Порядок выбора важен. Соединения с самопересечениями не допускаются (самопересечения иногда можно учесть, передав соединение через [[Image:Part_BooleanFragments.svg|24px]] [[Part_BooleanFragments/ru|BooleanFragments]])
# Invoke the Part Slice command several ways:
# Вызвать команду Part Slice одним из способов:
#* Press the [[Image:Part_Slice.svg|24px]] [[Part Slice]] button in the Part toolbar
#* Нажмите кнопку [[Image:Part_Slice.svg|24px]] [[Part Slice/ru|Part Slice]] на панели инструментов Part
#* Use the {{MenuCommand|Part → Split → Slice}} entry in the Part menu
#* Используйте пункт {{MenuCommand|Деталь → Разделить → Slice apart}} в меню Деталь
</div>


# Примечаниеː Объекты для разрезания должны полностью разделять объект, который нужно нарезать. Таким образом, куб не может быть разрезан проволокой, а может быть разрезан, например, плоскостью, полученной экструдированием проволоки.
# Noteː The Objects to slice with must completely separate the object to be sliced. Thus a cube cannot be sliced by a wire, but by a plane derived from an extruded wire for instance.


<div class="mw-translate-fuzzy">
A Slice parametric object is created. Original objects are hidden, and the result of intersection is shown in [[3D view]].
Создается параметрический объект Slice. Исходные объекты скрываются, а результат пересечения показываются в [[3D view/ru|Окне трёхмерного вида]].
</div>


<div class="mw-translate-fuzzy">
===Tree structure of Slice ===
===Древовидная структура Slice===
The Slice command creates a sliced object. In the following example a cube is sliced by a face.
Команда Slice создаёт нарезанный объект. В следующем примере куб разрезается гранью.
</div>


Создаётся ннарезка, и каждый её фрагмент объединяется в компаунд.
The slice is created and each piece of it is united in a Compound.


[[Image:Part_SliceTree.png]]
[[Image:Part_SliceTree.png]]


==Properties==
<span id="Properties"></span>
==Свойства==


{{TitleProperty|Slice}}
{{TitleProperty|Slice}}
* {{PropertyData|Base}}: Object to be sliced.
* {{PropertyData|Base}}: объект для нарезки.
* {{PropertyData|Tools}}: List of objects to slice with. (as of FreeCAD v0.17.8053, this property is not displayed in property editor, and can only be accessed via Python).
* {{PropertyData|Tools}}: список объектов для нарезки. (начиная с FreeCAD v0.17.8053, это свойство не отображается в редакторе свойств и доступно только через Python).
* {{PropertyData|Mode}}: «Standard», «Split» или «CompSolid». "Разделить" по умолчанию. Стандартный и Разделить отличаются действием инструмента на фигуры типа агрегирования: если Разделить, они разделяются; в противном случае они хранятся вместе (получаются дополнительные сегменты).
* {{PropertyData|Mode}}: "Standard", "Split", or "CompSolid". "Split" is default. Standard and Split differ by the action of the tool on aggregation type shapes: if Split, those are separated; otherwise they are kept together (get extra segments).
* {{PropertyData|Tolerance}}: значение "нечеткости". Это дополнительный допуск, который следует применять при поиске пересечений в дополнение к допускам, сохраненным во входных формах.
* {{PropertyData|Tolerance}}: "fuzziness" value. This is an extra tolerance to apply when searching for intersections, in addition to tolerances stored in the input shapes.


̈Примечаниеː Свойства доступны на внутреннем объекте срезов, а не на уровне результата.
̈Noteː Properties are accessible on the slices inner object, not on the result level.


==Example==
<span id="Example"></span>
==Пример==


<span id="Creating_a_Puzzle"></span>
===Creating a Puzzle===
===Создание головоломки===


<div class="mw-translate-fuzzy">
# Switch to [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher Workbench]]
# Переключитесь на [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher_Workbench/ru|Sketcher Workbench]]
#* Create a new sketch.
#* Создайте новый эскиз.
#* Draw a rectangle that will outline the overall shape of the puzzle.
#* Нарисуйте прямоугольник, который обозначит общую форму головоломки.
#* Close the sketch.<br />[[image:slice_example_step1.png|320px]]
#* Закройте эскиз.<br />[[image:slice_example_step1.png|320px]]
# Switch to [[Image:Workbench_Part.svg|24px]] [[Part Module|Part workbench]].
# Переключитесь на [[Image:Workbench_Part.svg|24px]] [[Part_Workbench/ru|Верстак Part]].
#* Select the sketch, and pick {{MenuCommand|Part → Create face from sketch}} .<br />[[image:slice_example_step2.png|320px]]
#* Выберите эскиз и выберите {{MenuCommand|Деталь → Create face from sketch}}.<br />[[image:slice_example_step2.png|320px]]
# Switch back to [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher Workbench]]
# Вернитесь к [[Image:Workbench_Sketcher.svg|24px]] [[Sketcher Workbench/ru|верстаку Sketcher]]
#* Create another sketch on the same plane.
#* Создайте еще один эскиз на той же плоскости.
#* Using polyline tool, draw the lines that will split the puzzle into pieces.<br />[[image:slice_example_step3.png|320px]]
#* Используя инструмент полилинии, нарисуйте линии, которые разделят головоломку на части.<br />[[image:slice_example_step3.png|320px]]
# Switch back to [[Image:Workbench_Part.svg|24px]] [[Part Module|Part Workbench]].
# Вернитесь к [[Image:Workbench_Part.svg|24px]] [[Part_Workbench/ru|Верстак Part]].
#* Select the splitter sketch, and apply [[Image:Part_BooleanFragments.svg|24px]] [[Part BooleanFragments|Part Boolean Fragments]]. This will insert vertices where lines of splitter sketch intersect. Having them is essential for the next step to work.<br />[[image:slice_example_step4.png|320px]]
#* Выделите эскиз разделителя и используйте [[Image:Part_BooleanFragments.svg|24px]] [[Part BooleanFragments/ru|Part Boolean Fragments]]. Это вставит вершины в места пересечения линий эскиза разделителя. Их наличие необходимо для работы на следующем этапе.<br />[[image:slice_example_step4.png|320px]]
# Select the rectangular face, and the BooleanFragments of splitter sketch, and apply [[Image:Part_Slice.svg|24px]] Part Slice.<br />[[image:slice_example_step5.png|320px]]
# Выберите прямоугольную грань и BooleanFragments эскиза разделителя и используйте [[Image:Part_Slice.svg|24px]] Part Slice.<br />[[image:slice_example_step5.png|320px]]
# Use [[Image:Part_ExplodeCompound.svg|24px]] [[Part ExplodeCompound]] on the sliced face, to break apart the compound made by Part Slice into individual pieces.
# Используйте [[Image:Part_ExplodeCompound.svg|24px]] [[Part ExplodeCompound/ru|Part ExplodeCompound]] к разрезанной грани, чтобы разбить соединение, созданное Part Slice, на отдельные части.
</div>


<div class="mw-translate-fuzzy">
'''Note:''' Steps 5 and 6 can be done in single click using [[Image:Part_SliceApart.svg|24px]] [[Part SliceApart]]
'''Примечание:''' Шаги 5 и 6 можно выполнить одним щелчком мыши, используя [[Image:Part_SliceApart.svg|24px]] [[Part_SliceApart/ru|Part SliceApart]]
</div>


==Notes==
<span id="Notes"></span>
==Примечания==


<div class="mw-translate-fuzzy">
* The tool was introduced in FreeCAD v0.17.8053. FreeCAD needs to be compiled with OCC 6.9.0 or later; otherwise, the tool is unavailable.
* Инструмент был представлен в FreeCAD v0.17.8053. FreeCAD необходимо скомпилировать с OCC 6.9.0 или новее; иначе инструмент будет недоступен.
* ̈Properties are accessible on the slices inner object, not on the result level.
* ̈Свойства доступны на внутреннем объекте срезов, а не на уровне результата.
* The Objects to slice with must completely separate the object to be sliced. Thus a cube cannot be sliced by a wire, but by a plane derived from an extruded wire for instance.
* Нарезающие объекты должны полностью разделять объект, который нужно нарезать. Таким образом, куб не может быть разрезан проволокой, а может быть разрезан, например, плоскостью, полученной из экструдированной проволоки.
* Slicing object must pass BOP check. See [[Image:Part_CheckGeometry.svg|24px]] [[Part CheckGeometry]].
* Нарезанный объект должен пройти проверку BOP. См. [[Image:Part_CheckGeometry.svg|24px]] [[Part_CheckGeometry/ru|Part CheckGeometry]].
</div>


==Scripting==
<span id="Scripting"></span>
==Программирование==


<div class="mw-translate-fuzzy">
The tool can by used in [[macros]] and from the python console by using the following function:
Инструмент можно использовать в [[macros/ru|макросах]] и из консоли Python, используя следующую функцию:
</div>
{{Code|code=BOPTools.SplitFeatures.makeSlice(name)}}
{{Code|code=BOPTools.SplitFeatures.makeSlice(name)}}


* Создает пустую функцию Slice. Свойства 'Base' и 'Tools' должны быть назначены впоследствии явно.
* Creates an empty Slice feature. The 'Base' and 'Tools' properties must be assigned explicitly, afterwards.
* Возвращает вновь созданный объект.
* Returns the newly created object.


Slice также может применяться к простым формам, без необходимости наличия объекта документа, с помощью:
Slice can also be applied to plain shapes, without the need to have a document object, via:
{{Code|code=BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)}}
{{Code|code=BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)}}
Это может быть полезно для создания пользовательских сценарных атрибутов на Python.
This can be useful for making custom Python scripted features.




Пример:
Example:
{{code|code=
{{code|code=
import BOPTools.SplitFeatures
import BOPTools.SplitFeatures
Line 115: Line 147:
}}
}}


The tool itself is implemented in Python, see {{FileName|/Mod/Part/BOPTools/SplitFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/BOPTools/SplitFeatures.py GitHub link]) within the FreeCAD installation directory.
Сам инструмент выполнен на Python, смотрите {{FileName|/Mod/Part/BOPTools/SplitFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/BOPTools/SplitFeatures.py GitHub link]) внутри каталога установки FreeCAD.




==Tutorials==
<span id="Tutorials"></span>
==Учебники==


* [https://www.youtube.com/watch?v=tzHkQaHgrfQ FreeCad 0.18 Part WB using Slice and Slice Apart] (English language), author: Ha Gei
* [https://www.youtube.com/watch?v=tzHkQaHgrfQ FreeCad 0.18 Part WB using Slice and Slice Apart] (English language), author: Ha Gei
Line 124: Line 157:
* [https://www.youtube.com/watch?v=JJAL5JmqqKQ FreeCAD Slice und Slice Apart und andere Tricks] (German language), author: Ha Gei
* [https://www.youtube.com/watch?v=JJAL5JmqqKQ FreeCAD Slice und Slice Apart und andere Tricks] (German language), author: Ha Gei



{{Docnav
<div class="mw-translate-fuzzy">
|[[Part_SliceApart|Slice a part]]
{{Docnav/ru
|[[Part_XOR|XOR]]
|[[Part_SliceApart/ru|SliceApart]]
|[[Part_Module|Part]]
|[[Part_XOR/ru|XOR]]
|[[Part_Workbench/ru|Part]]
|IconL=Part_SliceApart.svg
|IconL=Part_SliceApart.svg
|IconC=Workbench_Part.svg
|IconR=Part_XOR.svg
|IconR=Part_XOR.svg
|IconC=Workbench_Part.svg
}}
}}
</div>


{{Part Tools navi{{#translation:}}}}
{{Part Tools navi{{#translation:}}}}

Latest revision as of 09:25, 14 April 2023

Part Slice

Системное название
Part Slice
Расположение в меню
Деталь → Split → Slice
Верстаки
Part
Быстрые клавиши
Нет
Представлено в версии
0.17
См. также
Part Boolean Fragments, Part XOR, Part Join features, Part Boolean

Описание

Команда Разрезать, которую также можно применить, чтобы "сделать надрез", это инструмент, используемый для разделения фигур через пересечение с другими фигурами. Например, из куба будет создана композиция из двух тел, если разрезать его плоскостью.

Выше: части были впоследствии раздвинуты вручную, чтобы показать разрез

Имеются две команды для разделения фигуры: Slice apart и Slice to compound. Они оба создают параметрический объект «Срез», который объединяет разрезанные части в компаунд. В то же время Slice Apart разбивает полученное соединение на отдельные объекты. «Slice to compound» полностью параметрический, и не имеет проблем при изменении количества частей. «Slice apart» не будет обновлять количество объектов при изменении числа частей.

Итоговая форма занимают то же место, что и оригинал. Но она разделена там, где пересекается с другими формами. Разделенные части складываются в компаунд (или композит), поэтому кажется, что объект остается одним целым. Вам нужно взорвать соединение, чтобы получить отдельные части. Если вы хотите получить доступ к отдельным частям параметрическим способом, вы можете использовать для этой цели Part CompoundFilter. Для быстрого, непараметрического доступа используйте Downgrade.

Инструмент имеет три режима: «Standard», «Split» и «CompSolid». Формы выбора нет, они предопределены, но доступны после операции на уровне результирующих срезов.

«Standard» и «Split» различаются действием инструмента на рёбра, оболочки и составные тела: если «Split», они разделяются; если «Standard», они остаются вместе (получают дополнительные сегменты).

Составная структура в режимах «Standard» и «Split» следует за составной структурой разрезаемой формы.

В режиме «CompSolid» на выходе получается compsolid (или соединение compsolids, если полученные твердые тела образуют более одного острова связности). Compsolid - это набор тел, соединенных гранями; они связаны с твердыми телами, как полилинии связаны с ребрами, а оболочки связаны с гранями; название, вероятно, является сокращённым словосочетанием «композитное твердое тело».

Общее действие инструмента очень похоже на Boolean Fragments, за исключением того, что в результате получаются части только из первой формы.

Применение

  1. Сначала выберите объект для нарезки, а затем несколько объектов чтобы резать.
    Порядок выбора важен. Соединения с самопересечениями не допускаются (самопересечения иногда можно учесть, передав соединение через BooleanFragments)
  2. Вызвать команду Part Slice одним из способов:
    • Нажмите кнопку Part Slice на панели инструментов Part
    • Используйте пункт Деталь → Разделить → Slice apart в меню Деталь
  1. Примечаниеː Объекты для разрезания должны полностью разделять объект, который нужно нарезать. Таким образом, куб не может быть разрезан проволокой, а может быть разрезан, например, плоскостью, полученной экструдированием проволоки.

Создается параметрический объект Slice. Исходные объекты скрываются, а результат пересечения показываются в Окне трёхмерного вида.

Древовидная структура Slice

Команда Slice создаёт нарезанный объект. В следующем примере куб разрезается гранью.

Создаётся ннарезка, и каждый её фрагмент объединяется в компаунд.

Свойства

Slice

  • ДанныеBase: объект для нарезки.
  • ДанныеTools: список объектов для нарезки. (начиная с FreeCAD v0.17.8053, это свойство не отображается в редакторе свойств и доступно только через Python).
  • ДанныеMode: «Standard», «Split» или «CompSolid». "Разделить" по умолчанию. Стандартный и Разделить отличаются действием инструмента на фигуры типа агрегирования: если Разделить, они разделяются; в противном случае они хранятся вместе (получаются дополнительные сегменты).
  • ДанныеTolerance: значение "нечеткости". Это дополнительный допуск, который следует применять при поиске пересечений в дополнение к допускам, сохраненным во входных формах.

̈Примечаниеː Свойства доступны на внутреннем объекте срезов, а не на уровне результата.

Пример

Создание головоломки

  1. Переключитесь на Sketcher Workbench
    • Создайте новый эскиз.
    • Нарисуйте прямоугольник, который обозначит общую форму головоломки.
    • Закройте эскиз.
  2. Переключитесь на Верстак Part.
    • Выберите эскиз и выберите Деталь → Create face from sketch.
  3. Вернитесь к верстаку Sketcher
    • Создайте еще один эскиз на той же плоскости.
    • Используя инструмент полилинии, нарисуйте линии, которые разделят головоломку на части.
  4. Вернитесь к Верстак Part.
    • Выделите эскиз разделителя и используйте Part Boolean Fragments. Это вставит вершины в места пересечения линий эскиза разделителя. Их наличие необходимо для работы на следующем этапе.
  5. Выберите прямоугольную грань и BooleanFragments эскиза разделителя и используйте Part Slice.
  6. Используйте Part ExplodeCompound к разрезанной грани, чтобы разбить соединение, созданное Part Slice, на отдельные части.

Примечание: Шаги 5 и 6 можно выполнить одним щелчком мыши, используя Part SliceApart

Примечания

  • Инструмент был представлен в FreeCAD v0.17.8053. FreeCAD необходимо скомпилировать с OCC 6.9.0 или новее; иначе инструмент будет недоступен.
  • ̈Свойства доступны на внутреннем объекте срезов, а не на уровне результата.
  • Нарезающие объекты должны полностью разделять объект, который нужно нарезать. Таким образом, куб не может быть разрезан проволокой, а может быть разрезан, например, плоскостью, полученной из экструдированной проволоки.
  • Нарезанный объект должен пройти проверку BOP. См. Part CheckGeometry.

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

Инструмент можно использовать в макросах и из консоли Python, используя следующую функцию:

BOPTools.SplitFeatures.makeSlice(name)
  • Создает пустую функцию Slice. Свойства 'Base' и 'Tools' должны быть назначены впоследствии явно.
  • Возвращает вновь созданный объект.

Slice также может применяться к простым формам, без необходимости наличия объекта документа, с помощью:

BOPTools.SplitAPI.slice(base_shape, tool_shapes, mode, tolerance = 0.0)

Это может быть полезно для создания пользовательских сценарных атрибутов на Python.


Пример:

import BOPTools.SplitFeatures
j = BOPTools.SplitFeatures.makeSlice(name= 'Slice')
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tools = FreeCADGui.Selection.getSelection()[1:]

Сам инструмент выполнен на Python, смотрите /Mod/Part/BOPTools/SplitFeatures.py (GitHub link) внутри каталога установки FreeCAD.


Учебники