Part JoinCutout/pl: Difference between revisions

From FreeCAD Documentation
(Created page with "Narzędzie 24px '''Wycięcie dla obiektu''' tworzy wycięcie w obiekcie ze ściankami ''(np. rurze)'', aby dopasować je do innego obiektu ze ściankami.")
(Created page with "{{Docnav/pl |Osadź obiekt |Komponent Podziel obiekty |środowisko pracy Część |IconL=Part_JoinEmbed.svg |IconR=Part_CompSplittingTools.png |IconC=Workbench_Part.svg }}")
 
(17 intermediate revisions by the same user not shown)
Line 26: Line 26:
[[image:JoinFeatures_Cutout.png|600px]]
[[image:JoinFeatures_Cutout.png|600px]]


==Usage==
<span id="Usage"></span>
==Użycie==


# Najpierw wybierz obiekt bazowy, a następnie obiekt do zdefiniowania wycięcia.
# 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).
<br> Kolejność wyboru jest ważna. Wystarczy wybrać jeden kształt podrzędny każdego obiektu ''(np. ściany)''.
# Invoke the Part JoinCutout command several ways:
# Polecenie Wycięcie dla obiektu można wywołać na kilka sposobów:
#* Pressing on the [[Image:Part_JoinCutout.svg|24px|link=Part_JoinCutout]] [[Part_JoinCutout|Part JoinCutout]] button in the Part toolbar
#* Naciśnij przycisk [[Image:Part_JoinCutout.svg|24px|link=Part_JoinCutout/pl]] '''Wycięcie dla obiektu''' na pasku narzędzi.
#* Using the {{MenuCommand|Part → Join → Cutout for Object}} entry in the Part menu
#* Użyj polecenia {{MenuCommand|Część → Połącz → Wycięcie dla obiektu}} w menu głównym.


Tworzony jest obiekt środowiska Część Wycięcie dla obiektu z ustawionym trybem "Wycięcie". Oryginalne obiekty są ukryte, a wynik osadzenia jest wyświetlany w oknie widoku 3D.
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==
<span id="Properties"></span>
==Właściwości==


{{TitleProperty|Base}}
{{TitleProperty|Podstawa}}


* {{PropertyData|Base}}: Reference to base object (the one to make the cutout in). The object should be a single solid.
* {{PropertyData|Baza}}: Odniesienie do obiektu bazowego (tego, w którym ma zostać wykonane wycięcie). Obiekt powinien być pojedynczą bryłą.
* {{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|Narzędzie}}: Odniesienie do obiektu narzędzia ''(obiektu, który ma pasować do wycięcia)''. Obiekt może być pojedynczą bryłą lub [[Part_Compound|prawidłowym złożeniem]] brył.
* {{PropertyData|Tryb}}: Tryb działania, równy ''Wycięcie'' ''(Zmiana, która przekształci narzędzie w inne Part_JoinXXX)''. Wartość "Obejdź" może być użyta do tymczasowego wyłączenia długich obliczeń ''(zostanie utworzone złożenie bazy i narzędzia, co jest szybką operacją)''.
* {{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|Ulepsz}}: Określa, czy zastosować operację [[Part_RefineShape/pl|ulepszenia]] do ostatecznego kształtu. wobec ostatecznego kształtu. Wartość domyślna jest określona przez pole wyboru "Automatycznie udoskonal model po wykonaniu operacji logicznej" w [[PartDesign_Preferences/pl|Preferencjach środowiska Projekt Części]]. Gdy właściwość '''Tryb''' ma wartość '''Obejdź''', Ulepszanie jest ignorowane ''(nigdy nie jest stosowane)''.
* {{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==
<span id="Example"></span>
==Przykład==


# Create a pipe by applying [[Part_Thickness|thickness]] to a [[Part_Cylinder|cylinder]]: <br />[[image:JoinFeatures_Example_step1.png|320px]]
# Utwórz rurę, stosując narzędzie [[Part_Thickness/pl|grubość]] do [[Part_Cylinder/pl|cylindra]]:
<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]]
# Utwórz kolejną rurę o mniejszej średnicy i [[Placement/pl|umieść]] ją tak, aby przebiła ścianę pierwszej rury:
# 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]]
<br>[[image:JoinFeatures_Example_step2.png|320px]]
# Zaznacz pierwszą rurę, a następnie drugą rurę ''(kolejność zaznaczania jest ważna)'' i kliknij opcję "Wycięcie dla obiektu" na rozwijanym pasku narzędzi '''Połącz obiekty'''.
<br>[[image:JoinFeatures_Example_step3_Cutout.png|320px]]


==Algorithm==
<span id="Algorithm"></span>
==Sposób działania==


Algorytmy stojące za narzędziami Połącz są dość proste, a ich zrozumienie jest ważne dla prawidłowego korzystania z narzędzi.
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly.


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).
1. Obiekt bazowy jest [[Part Cut/pl|wycięty logicznie]] za pomocą obiektu narzędzia. Wynikowy kształt jest zestawem ''([[Part_Compound/pl|złożeń]])'' nieprzecinających się brył ''(zazwyczaj dwóch)''.


2. Uzyskane złożenie jest kolejnie filtrowane, przy czym zachowywana jest tylko największa bryła.
2. The resulting compound is filtered: only the largest solid is kept.


4. Jeśli właściwość Ulepsz ma wartość {{true/pl}}, wynikowy kształt to obiekt funkcji [[Part RefineShape|Ulepsz]].
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]]


===Notes===
<span id="Notes"></span>
===Uwagi===


* Jeśli po kroku 1 obiekt pozostaje w jednym kawałku, wynik operacji Wycięcie będzie równoważny logicznej operacji[[Part_Fuse/pl|Wytnij]] bazy i narzędzia.
* 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.
* Obecnie narzędzie wygeneruje nieoczekiwany wynik, jeśli jako baza zostanie użyte złożenie. ''(Może to zostać zmienione w przyszłości.)''
* Now, the tool will produce unexpected result, if a compound is supplied as Base. This may be changed in the future.
* Ponieważ największy element jest określany przez porównanie objętości elementów, narzędzie może działać tylko z bryłami. ''(Może to zostać zmienione w przyszłości.)''
* 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==
<span id="Scripting"></span>
==Tworzenie skryptów==


Narzędzie Osadź może być używane w [[Macros/pl|makrodefinicjach]] i z konsoli [[Python/pl|Python]] za pomocą następującej funkcji:
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')}}
{{Code|code=JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout')}}
* Tworzy pusty element Wycięcia ''(lub inną cechę dołączania, w zależności od przekazanego trybu)''. Następnie należy jawnie przypisać właściwości Baza i Narzędzie.
* Creates an empty Cutout feature (or other Join feature, depending on mode passed). The properties Base and Tool must be assigned explicitly, afterwards.
* Zwraca nowo utworzony obiekt.
* Returns the newly created object.


Przykład:
Example:
{{code|code=
{{code|code=
import JoinFeatures
import JoinFeatures
Line 83: Line 93:
}}
}}


The tool itself is implemented in Python, see {{FileName|/Mod/Part/JoinFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/JoinFeatures.py Github link]) under where FreeCAD is installed.
Samo narzędzie jest zaimplementowane w środowisku Python, patrz {{FileName|/Mod/Part/JoinFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/JoinFeatures.py Link do Github]) w miejscu, w którym zainstalowany jest FreeCAD.




{{Docnav
{{Docnav/pl
|[[Part_JoinEmbed|JoinEmbed]]
|[[Part_JoinEmbed/pl|Osadź obiekt]]
|[[Part_CompSplittingTools|CompSplittingTools]]
|[[Part_CompSplittingTools/pl|Komponent Podziel obiekty]]
|[[Part_Workbench|Part]]
|[[Part_Workbench/pl|środowisko pracy Część]]
|IconL=Part_JoinEmbed.svg
|IconL=Part_JoinEmbed.svg
|IconR=Part_CompSplittingTools.png
|IconR=Part_CompSplittingTools.png

Latest revision as of 15:18, 3 July 2023

Część: Wycięcie dla obiektu

Lokalizacja w menu
Part → Join → Wycięcie dla obiektu
Środowisko pracy
Część
Domyślny skrót
brak
Wprowadzono w wersji
0.16
Zobacz także
Połącz obiekty, Osadź obiekty, Operacja logiczna, Grubość

Opis

Narzędzie Wycięcie dla obiektu tworzy wycięcie w obiekcie ze ściankami (np. rurze), aby dopasować je do innego obiektu ze ściankami.

Użycie

  1. Najpierw wybierz obiekt bazowy, a następnie obiekt do zdefiniowania wycięcia.


Kolejność wyboru jest ważna. Wystarczy wybrać jeden kształt podrzędny każdego obiektu (np. ściany).

  1. Polecenie Wycięcie dla obiektu można wywołać na kilka sposobów:
    • Naciśnij przycisk Wycięcie dla obiektu na pasku narzędzi.
    • Użyj polecenia Część → Połącz → Wycięcie dla obiektu w menu głównym.

Tworzony jest obiekt środowiska Część Wycięcie dla obiektu z ustawionym trybem "Wycięcie". Oryginalne obiekty są ukryte, a wynik osadzenia jest wyświetlany w oknie widoku 3D.

Właściwości

Podstawa

  • DANEBaza: Odniesienie do obiektu bazowego (tego, w którym ma zostać wykonane wycięcie). Obiekt powinien być pojedynczą bryłą.
  • DANENarzędzie: Odniesienie do obiektu narzędzia (obiektu, który ma pasować do wycięcia). Obiekt może być pojedynczą bryłą lub prawidłowym złożeniem brył.
  • DANETryb: Tryb działania, równy Wycięcie (Zmiana, która przekształci narzędzie w inne Part_JoinXXX). Wartość "Obejdź" może być użyta do tymczasowego wyłączenia długich obliczeń (zostanie utworzone złożenie bazy i narzędzia, co jest szybką operacją).
  • DANEUlepsz: Określa, czy zastosować operację ulepszenia do ostatecznego kształtu. wobec ostatecznego kształtu. Wartość domyślna jest określona przez pole wyboru "Automatycznie udoskonal model po wykonaniu operacji logicznej" w Preferencjach środowiska Projekt Części. Gdy właściwość Tryb ma wartość Obejdź, Ulepszanie jest ignorowane (nigdy nie jest stosowane).

Przykład

  1. Utwórz rurę, stosując narzędzie grubość do cylindra:


  1. Utwórz kolejną rurę o mniejszej średnicy i umieść ją tak, aby przebiła ścianę pierwszej rury:


  1. Zaznacz pierwszą rurę, a następnie drugą rurę (kolejność zaznaczania jest ważna) i kliknij opcję "Wycięcie dla obiektu" na rozwijanym pasku narzędzi Połącz obiekty.


Sposób działania

Algorytmy stojące za narzędziami Połącz są dość proste, a ich zrozumienie jest ważne dla prawidłowego korzystania z narzędzi.

1. Obiekt bazowy jest wycięty logicznie za pomocą obiektu narzędzia. Wynikowy kształt jest zestawem (złożeń) nieprzecinających się brył (zazwyczaj dwóch).

2. Uzyskane złożenie jest kolejnie filtrowane, przy czym zachowywana jest tylko największa bryła.

4. Jeśli właściwość Ulepsz ma wartość Prawda, wynikowy kształt to obiekt funkcji Ulepsz.

Uwagi

  • Jeśli po kroku 1 obiekt pozostaje w jednym kawałku, wynik operacji Wycięcie będzie równoważny logicznej operacjiWytnij bazy i narzędzia.
  • Obecnie narzędzie wygeneruje nieoczekiwany wynik, jeśli jako baza zostanie użyte złożenie. (Może to zostać zmienione w przyszłości.)
  • Ponieważ największy element jest określany przez porównanie objętości elementów, narzędzie może działać tylko z bryłami. (Może to zostać zmienione w przyszłości.)

Tworzenie skryptów

Narzędzie Osadź może być używane w makrodefinicjach i z konsoli Python za pomocą następującej funkcji:

JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout')
  • Tworzy pusty element Wycięcia (lub inną cechę dołączania, w zależności od przekazanego trybu). Następnie należy jawnie przypisać właściwości Baza i Narzędzie.
  • Zwraca nowo utworzony obiekt.

Przykład:

import JoinFeatures
j = JoinFeatures.makePartJoinFeature(name = 'Cutout', mode = 'Cutout' )
j.Base = FreeCADGui.Selection.getSelection()[0]
j.Tool = FreeCADGui.Selection.getSelection()[1]

Samo narzędzie jest zaimplementowane w środowisku Python, patrz /Mod/Part/JoinFeatures.py (Link do Github) w miejscu, w którym zainstalowany jest FreeCAD.