Część: Rozetnij

From FreeCAD Documentation
Revision as of 12:17, 4 July 2023 by Kaktus (talk | contribs)

Część: Rozbij

Lokalizacja w menu
Część → Rozdziel → Rozbij
Środowisko pracy
Część
Domyślny skrót
brak
Wprowadzono w wersji
0.18
Zobacz także
Krojenie, Rozbij kształt złożony

Opis

Jest to narzędzie do dzielenia kształtów przez przecięcie innym kształtem. Na przykład dla prostopadłościanu i płaszczyzny tworzone są dwie bryły.

Powyżej: elementy zostały później ręcznie rozsunięte, aby uwidocznić cięcie.

Slice apart is the same as Part Slice followed by Part Explode Compound. While "Slice to compound" is fully-parametric, and causes no trouble as the number of pieces changes, "Slice apart" will not update the number of objects as the number of pieces changes. They both create Slice parametric feature, that puts the sliced pieces into a compound, but "Slice apart" explodes the resulting compound into separate objects.

The output shape occupies the same space as the original. But it is split where it intersects with other shapes. The split pieces are individual pieces.


Please visit Part Slice page for more info.

Tree structure of Slice Apart

The Slice Apart command creates more than only the sliced object. In the following example a cube is sliced by a face.

The slice is created and for each piece of it there is a Part CompoundFilter created, thus the same slice occurs multiple times below each CompoundFilter. All these CompoundFilters are united in a Compound.

Example

  • Making a puzzle: see Part Slice example Steps 1 to 6

Scripting

The tool can by used in macros and from the python console by using the following function:

BOPTools.SplitFeatures.makeSlice(name)

Set mode to split for slice apart

  • Creates an empty Slice feature. The 'Base' and 'Tools' properties must be assigned explicitly, afterwards.
  • Returns the newly created object.

Slice can also be applied to plain shapes, without the need to have a document object, via:

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

This can be useful for making custom Python scripted features.


Example:

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

The tool itself is implemented in Python, see /Mod/Part/BOPTools/SplitFeatures.py (GitHub link) within the FreeCAD installation directory.

Notes

Slice Apart was introduced in FreeCAD v0.18.15506. FreeCAD needs to be compiled with OCC 6.9.0 or later; otherwise, the tool is unavailable.

Video-Tutorials