Part JoinConnect/pl: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(26 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav
{{Docnav/pl
|[[Part_CompJoinFeatures|CompJoinFeatures]]
|[[Part_CompJoinFeatures/pl|Komponent Połącz obiekty]]
|[[Part_JoinEmbed|JoinEmbed]]
|[[Part_JoinEmbed/pl|Osadź obiekt]]
|[[Part_Workbench|Part]]
|[[Part_Workbench/pl|środowisko pracy Część]]
|IconL=Part_JoinConnect.svg
|IconL=Part_JoinConnect.svg
|IconR=Part_JoinEmbed.svg
|IconR=Part_JoinEmbed.svg
Line 9: Line 10:
}}
}}


{{GuiCommand
{{GuiCommand/pl
|Name=Part JoinConnect
|Name=Part JoinConnect
|Name/pl=Część: Połącz obiekty
|MenuLocation=Part → Join → Connect objects
|MenuLocation=Część → Połącz → Połącz obiekty
|Workbenches=[[Part_Workbench|Part]]
|Workbenches=[[Part_Workbench/pl|Część]]
|Version=0.16
|Version=0.16
|SeeAlso=[[Part_JoinEmbed|Part JoinEmbed]], [[Part_JoinCutout|Part JoinCutout]], [[Part_Boolean|Part Boolean]], [[Part_Thickness|Part Thickness]]
|SeeAlso=[[Part_JoinEmbed/pl|Osadź obiekty]], [[Part_JoinCutout/pl|Wycięcie dla obiektu]], [[Part_Boolean/pl|Operacja logiczna]], [[Part_Thickness/pl|Grubość]]
}}
}}


==Description==
<span id="Description"></span>
==Opis==


Narzędzie Połącz łączy wnętrza obiektów posiadających dwie ścianki ''(np. rur)''. Może również łączyć powłoki i linie.
Connect tool connects interiors of two walled objects (e.g., pipes). It can also join shells and wires.


[[image:JoinFeatures_Connect.png|600px]]
[[image:JoinFeatures_Connect.png|600px]]


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


# Wybierz obiekty do połączenia.
# Select objects to be connected. <br /> The order of selection is not important, since the action of the tool is symmetric. It is enough to select one sub-shape of each object (e.g., faces). You can also select a compound containing all the shapes to be connected, e.g. [[Draft_OrthoArray|Draft OrthoArray]].
<br> Kolejność wyboru nie ma znaczenia, ponieważ działanie narzędzia jest symetryczne. Wystarczy wybrać jeden z kształtów podrzędnych każdego obiektu ''(np. ściany)''. Można również wybrać złożenie zawierające wszystkie kształty do połączenia, np. [[Draft_OrthoArray/pl|Szyk ortogonalny]].
# Invoke the Part JoinConnect command using several ways:
# Polecenie '''Połącz obiekty''' można wywołać na kilka sposobów:
#* Press the [[Image:Part_JoinConnect.svg|24px]] [[Part_JoinConnect|Part JoinConnect]] button in the Part toolbar
#* Naciśnij przycisk [[Image:Part_JoinConnect.svg|24px]] '''Połącz obiekty''' na pasku narzędzi.
#* Use the {{MenuCommand|Part → Join → Connect objects}} entry in the Part menu
#* Użyj polecenia {{MenuCommand|Część → Połącz → Połącz obiekty}} w menu głównym.


Tworzony jest obiekt parametryczny Połączenie. Oryginalne obiekty są ukrywane, a wynik połączenia jest wyświetlany w oknie [[3D_view/pl|widoku 3D]].
A Connect parametric object is created. Original objects are hidden, and the result of connecting is shown in [[3D view]].


==Properties==
<span id="Properties"></span>
==Właściwości==


{{TitleProperty|Connect}}
{{TitleProperty|Połączenie}}
* {{PropertyData|Objects}}: List of objects to be connected. Generally, at least two objects are needed, but a single compound containing the shapes to connect will do as well. (as of FreeCAD v0.17.8053, this property is not displayed in [[Property editor]], and can only be accessed via [[#Scripting|Python]]).
* {{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]].
* {{PropertyData|Tolerance}}: "fuzziness" value. This is an extra tolerance to apply when searching for intersections, in addition to tolerances stored in the input shapes.


* {{PropertyData|Obiekty}}: Lista obiektów do połączenia. Ogólnie rzecz biorąc, potrzebne są co najmniej dwa obiekty, ale wystarczy również pojedyncze złożenie zawierające kształty do połączenia. ''(od wersji FreeCAD v0.17.8053 właściwość ta nie jest wyświetlana w [[Property_editor/pl|Edytorze właściwości]] i można uzyskać do niej dostęp tylko za pośrednictwem skryptów [[#Tworzenie skryptów|Python]])''.
==Example==
* {{PropertyData|Ulepsz}}: Określa, czy zastosować operację [[Part_RefineShape/pl|ulepszania]] 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]].
* {{PropertyData|Tolerancja}}: wartość "rozmycia". Jest to dodatkowa tolerancja stosowana podczas wyszukiwania przecięć, oprócz tolerancji przechowywanych w przetwarzanych kształtach wejściowych.


<span id="Example"></span>
# Create a pipe by applying [[Part_Thickness|thickness]] to a [[Part_Cylinder|cylinder]]: <br />[[image:JoinFeatures_Example_step1.png|320px]]
==Przykład==
# 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 and the second pipe, and click the 'Connect objects' option from the Join tools dropdown toolbar button. <br />[[image:JoinFeatures_Example_step3_Connect.png|320px]]
# Use some cross-section tool ([[Std_ToggleClipPlane|Clipping plane]], [[Arch_SectionPlane|Arch Section Plane]], [[Arch_CutPlane|Arch Cut Plane]]) to reveal internals. In the picture below, Arch Section Plane is used.<br />[[image:JoinFeatures_Example_step4_Connect.png|320px]]


# Utwórz rurę, stosując narzędzie [[Part_Thickness/pl|grubość]] do bryły [[Part_Cylinder/pl|cylindra]]:
==Algorithm==
<br />[[image:JoinFeatures_Example_step1.png|320px]]
The algorithms behind Join tools are quite simple, and understanding them is important to use the tools correctly. The algorithm of Connect, in particular, is quite a bit more complex than others, but it's generally enough to think of it as a symmetric variant of [[Part_JoinEmbed#Algorithm|Embed algorithm]]
# Utwórz kolejną rurę o mniejszej średnicy i [[Placement/pl|umieść]] ją tak, aby przebiła ścianę pierwszej rury:
<br />[[image:JoinFeatures_Example_step2.png|320px]]
# Zaznacz pierwszą i drugą rurę, a następnie kliknij polecenie '''Połącz obiekty''' na rozwijanym pasku narzędzi Połącz.
<br />[[image:JoinFeatures_Example_step3_Connect.png|320px]]
# Zastosuj narzędzie przekroju ''([[Std_ToggleClipPlane/pl|Przełącz płaszczyznę tnącą]], [[Arch_SectionPlane/pl|Płaszczyzna przekroju]] środowiska Architektura, [[Arch_CutPlane/pl|Płaszczyzna cięcia]] środowiska Architektura)'', aby odsłonić elementy wewnętrzne. Na poniższym obrazku użyto narzędzia Płaszczyzna przekroju środowiska Architektura.
<br />[[image:JoinFeatures_Example_step4_Connect.png|320px]]


<span id="Algorithm"></span>
1. Each object is split into pieces by intersections with other objects. (see [[Part BooleanFragments]])
==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. Zauważmy, że algorytm narzędzia Połącz jest nieco bardziej złożony od innych, ale wystarczy myśleć o nim jako o symetrycznym wariancie algorytmu [[Part_JoinEmbed/pl#Sposób_działania|osadzania]].
2. From the pieces of an object, only the largest one is kept; all the rest are thrown away.


1. Każdy obiekt jest dzielony na części przez skrzyżowania z innymi obiektami. ''(patrz [[Part_BooleanFragments/pl|Fragmentacja funkcją logiczną]])''.
3. Intersection pieces that touch at least two objects are added to result. Then, the pieces are joined together to form the result of Connect.


2. Z kawałków danego obiektu zachowuje się tylko największy, wszystkie pozostałe są usuwane.
===Notes===


3. Elementy przecięcia, które dotykają co najmniej dwóch obiektów, są dodawane do wyniku. Następnie elementy są łączone, aby utworzyć wynik operacji połączenia.
* If at step 1 each object remains in one piece, the result of Connect will be equivalent to [[Part_Fuse|union]] of Objects.
* Now, all compounds supplied are exploded prior to connecting. This means that self-intersecting compounds, which are invalid for all other Boolean operations, are valid for Connect. (This may be changed in the future.)
* The "largest" piece is the one that has largest mass. That is, for solids, volumes are compared; for shells and faces, areas are compared, and so on.
* Since FreeCAD v0.17.8053, and if OCC version is 6.9.0 and above, Connect is almost as fast as all other Boolean operations. For older versions, Connect is approximately 5 times slower than a regular Boolean operation, and works only on solids.


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

* Jeśli w kroku 1 każdy obiekt pozostaje w jednym kawałku, wynik połączenia będzie równoważny działaniu funkcji [[Part_Fuse/pl|połączenia logicznego]] obiektów.
* Teraz wszystkie dostarczone złożenia są rozbijane przed połączeniem. Oznacza to, że samoprzecinające się złożenia, które są nieprawidłowe dla wszystkich innych operacji logicznych, są prawidłowe dla funkcji Połącz ''(Może to zostać zmienione w przyszłości)''.
* "Największy" element to ten, który ma największą masę. Oznacza to, że dla brył porównywane są objętości; dla powłok i ścian porównywane są powierzchnie i tak dalej.
* Od wersji FreeCAD v0.17.8053 i wersji OCC 6.9.0 lub wyższej, funkcja Połącz jest prawie tak szybka, jak wszystkie inne operacje logiczne. W starszych wersjach funkcja Połącz jest około 5 razy wolniejsza niż zwykła operacja logiczna i działa tylko na bryłach.

<span id="Scripting"></span>
==Tworzenie skryptów==

Narzędzie '''Połącz obiekty''' 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:
'''BOPTools.JoinFeatures.makeConnect(name)'''
'''BOPTools.JoinFeatures.makeConnect(name)'''
* Creates an empty Connect feature. The 'Objects' property must be assigned explicitly, afterwards.
* Returns the newly created object.


* Tworzy pustą funkcję Połącz. Właściwość "Obiekty" musi zostać przypisana jawnie, a następnie.
Connect can also be applied to plain shapes, without the need to have a document object, via:
* Zwraca nowo utworzony obiekt.

Funkcja Połącz może być również stosowana do zwykłych kształtów, bez konieczności posiadania obiektu dokumentu:

'''Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)'''
'''Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)'''
This can be useful for making custom Python scripted features.


Może to być przydatne do tworzenia niestandardowych funkcji skryptowych Python.
Example:

Przykład:

{{code|code=
{{code|code=
import Part
import Part
Line 79: Line 100:
j.Objects = FreeCADGui.Selection.getSelection()
j.Objects = FreeCADGui.Selection.getSelection()
}}
}}
The tool itself is implemented in Python, see {{FileName|/Mod/Part/BOPTools/JoinFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/BOPTools/JoinFeatures.py Github link]) under where FreeCAD is installed.

==History==
* The tool was introduced in FreeCAD v0.16.5069


Samo narzędzie jest zaimplementowane w środowisku Python, patrz {{FileName|/Mod/Part/BOPTools/JoinFeatures.py}} ([https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Part/BOPTools/JoinFeatures.py Link do Github]) w miejscu, w którym zainstalowany jest FreeCAD.
* The tool was re-implemented to work via generalFuse in FreeCAD v0.17.8053




{{Docnav
{{Docnav/pl
|[[Part_CompJoinFeatures|CompJoinFeatures]]
|[[Part_CompJoinFeatures/pl|Komponent Połącz obiekty]]
|[[Part_JoinEmbed|JoinEmbed]]
|[[Part_JoinEmbed/pl|Osadź obiekt]]
|[[Part_Workbench|Part]]
|[[Part_Workbench/pl|środowisko pracy Część]]
|IconL=Part_JoinConnect.svg
|IconL=Part_JoinConnect.svg
|IconR=Part_JoinEmbed.svg
|IconR=Part_JoinEmbed.svg
Line 98: Line 115:
{{Part Tools navi{{#translation:}}}}
{{Part Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Latest revision as of 15:56, 2 July 2023

Część: Połącz obiekty

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

Opis

Narzędzie Połącz łączy wnętrza obiektów posiadających dwie ścianki (np. rur). Może również łączyć powłoki i linie.

Użycie

  1. Wybierz obiekty do połączenia.


Kolejność wyboru nie ma znaczenia, ponieważ działanie narzędzia jest symetryczne. Wystarczy wybrać jeden z kształtów podrzędnych każdego obiektu (np. ściany). Można również wybrać złożenie zawierające wszystkie kształty do połączenia, np. Szyk ortogonalny.

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

Tworzony jest obiekt parametryczny Połączenie. Oryginalne obiekty są ukrywane, a wynik połączenia jest wyświetlany w oknie widoku 3D.

Właściwości

Połączenie

  • DANEObiekty: Lista obiektów do połączenia. Ogólnie rzecz biorąc, potrzebne są co najmniej dwa obiekty, ale wystarczy również pojedyncze złożenie zawierające kształty do połączenia. (od wersji FreeCAD v0.17.8053 właściwość ta nie jest wyświetlana w Edytorze właściwości i można uzyskać do niej dostęp tylko za pośrednictwem skryptów Python).
  • DANEUlepsz: Określa, czy zastosować operację ulepszania 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.
  • DANETolerancja: wartość "rozmycia". Jest to dodatkowa tolerancja stosowana podczas wyszukiwania przecięć, oprócz tolerancji przechowywanych w przetwarzanych kształtach wejściowych.

Przykład

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


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


  1. Zaznacz pierwszą i drugą rurę, a następnie kliknij polecenie Połącz obiekty na rozwijanym pasku narzędzi Połącz.


  1. Zastosuj narzędzie przekroju (Przełącz płaszczyznę tnącą, Płaszczyzna przekroju środowiska Architektura, Płaszczyzna cięcia środowiska Architektura), aby odsłonić elementy wewnętrzne. Na poniższym obrazku użyto narzędzia Płaszczyzna przekroju środowiska Architektura.


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. Zauważmy, że algorytm narzędzia Połącz jest nieco bardziej złożony od innych, ale wystarczy myśleć o nim jako o symetrycznym wariancie algorytmu osadzania.

1. Każdy obiekt jest dzielony na części przez skrzyżowania z innymi obiektami. (patrz Fragmentacja funkcją logiczną).

2. Z kawałków danego obiektu zachowuje się tylko największy, wszystkie pozostałe są usuwane.

3. Elementy przecięcia, które dotykają co najmniej dwóch obiektów, są dodawane do wyniku. Następnie elementy są łączone, aby utworzyć wynik operacji połączenia.

Uwagi

  • Jeśli w kroku 1 każdy obiekt pozostaje w jednym kawałku, wynik połączenia będzie równoważny działaniu funkcji połączenia logicznego obiektów.
  • Teraz wszystkie dostarczone złożenia są rozbijane przed połączeniem. Oznacza to, że samoprzecinające się złożenia, które są nieprawidłowe dla wszystkich innych operacji logicznych, są prawidłowe dla funkcji Połącz (Może to zostać zmienione w przyszłości).
  • "Największy" element to ten, który ma największą masę. Oznacza to, że dla brył porównywane są objętości; dla powłok i ścian porównywane są powierzchnie i tak dalej.
  • Od wersji FreeCAD v0.17.8053 i wersji OCC 6.9.0 lub wyższej, funkcja Połącz jest prawie tak szybka, jak wszystkie inne operacje logiczne. W starszych wersjach funkcja Połącz jest około 5 razy wolniejsza niż zwykła operacja logiczna i działa tylko na bryłach.

Tworzenie skryptów

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

BOPTools.JoinFeatures.makeConnect(name)
  • Tworzy pustą funkcję Połącz. Właściwość "Obiekty" musi zostać przypisana jawnie, a następnie.
  • Zwraca nowo utworzony obiekt.

Funkcja Połącz może być również stosowana do zwykłych kształtów, bez konieczności posiadania obiektu dokumentu:

Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)

Może to być przydatne do tworzenia niestandardowych funkcji skryptowych Python.

Przykład:

import Part
j = Part.BOPTools.JoinFeatures.makeConnect(name= 'Connect')
j.Objects = FreeCADGui.Selection.getSelection()

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