Surface Filling/pl: Difference between revisions
(Created page with "{{GuiCommand |Name=Surface Filling |Name/pl=Powierzchnia 3D: Wypełnianie |MenuLocation=Surface → Filling |Workbenches=Powierzchnia 3D |Version=0.17 }}") |
No edit summary |
||
(27 intermediate revisions by the same user not shown) | |||
Line 10: | Line 10: | ||
}} |
}} |
||
{{GuiCommand |
{{GuiCommand/pl |
||
|Name=Surface Filling |
|Name=Surface Filling |
||
|Name/pl=Powierzchnia 3D: Wypełnianie |
|Name/pl=Powierzchnia 3D: Wypełnianie |
||
Line 18: | Line 18: | ||
}} |
}} |
||
= |
<span id="Description"></span> |
||
==Opis== |
|||
{{Button|[[File:Surface_Filling.svg|16px]] |
Polecenie {{Button|[[File:Surface_Filling.svg|16px]] '''Wypełnianie'''}} tworzy powierzchnię z serii połączonych krawędzi granicznych. Krzywizna powierzchni może być dodatkowo kontrolowana przez krawędzie i wierzchołki, które nie są krawędziami granicznymi, oraz powierzchnię podpierającą. |
||
Geometria bazowa może należeć do krzywych utworzonych za pomocą środowiska [[Draft_Workbench/pl|Rysunek Roboczy]] lub [[Sketcher_Workbench/pl|Szkicownik]], ale może również należeć do obiektów bryłowych, takich jak te utworzone za pomocą środowiska [[Part_Workbench/pl|Część]] lub [[PartDesign_Workbench/pl|Projekt Części]]. |
|||
[[Image:Surface_Filling_example.png|600px]] |
[[Image:Surface_Filling_example.png|600px]] |
||
{{Caption|Dwie wypełnione powierzchnie ograniczone czterema krawędziami znajdującymi się na płaszczyźnie XY. Powierzchnia po prawej stronie jest dodatkowo kontrolowana przez krawędź niebędącą granicą.}} |
|||
{{Caption|Two filled surfaces delimited by four edges located on the XY plane. The surface on the right is additionally controlled by a non-boundary edge.}} |
|||
= |
<span id="Usage"></span> |
||
==Użycie== |
|||
# |
# Naciśnij przycisk {{Button|[[File:Surface_Filling.svg|16px]] '''Wypełnianie'''}}. |
||
# |
# Otworzy się panel zadań {{MenuCommand|Granice}}. Zobacz dostępne [[#Opcje|Opcje]]. |
||
# |
# Wybierz dwie lub więcej krawędzi w oknie [[3D_view/pl|widoku 3D]]: |
||
#* |
#* W tym momencie nie ma potrzeby naciskania przycisku {{Button|Dodaj krawędź}} w sekcji {{MenuCommand|Granice}}. |
||
#* Krawędzie muszą być wybrane w odpowiedniej kolejności. |
|||
#* The edges must be selected in consecutive order. |
|||
#* Krawędzie muszą być połączone, ale cała granica nie musi być zamknięta. |
|||
#* The edges must be connected, but the complete boundary need not be closed. |
|||
#* Kompletna granica nie powinna się przecinać. |
|||
#* The complete boundary should not self-intersect. |
|||
#* W przypadku okrągłej granicy 360° można wybrać dwie półokrągłe krawędzie. |
|||
#* For a 360° circular boundary two semicircular edges can be selected. |
|||
# Podgląd ostatecznego kształtu zostanie wyświetlony po wybraniu wystarczającej ilości prawidłowej geometrii. |
|||
# A preview of the final shape will be shown once enough valid geometry has been selected. |
|||
# |
# Opcjonalnie wybierz {{MenuCommand|Powierzchnia pomocnicza}}. Zobacz [[#Przykład|Przykład]]. |
||
# |
# Opcjonalnie wybierz jedno lub więcej {{MenuCommand|Wiązania krawędziowe}}. |
||
# |
# Opcjonalnie wybierz jedno lub więcej {{MenuCommand|Wiązań wierzchołków}}. |
||
# |
# Naciśnij przycisk {{Button|OK}}. |
||
= |
<span id="Options"></span> |
||
==Opcje== |
|||
* |
* W sekcji {{MenuCommand|Granice}} można określić powierzchnię podparcia i krawędzie graniczne: |
||
** |
** Naciśnij przycisk {{Button|Powierzchnia podparcia}} i wybierz ścianę w oknie [[3D_view/pl|widoku 3D]], aby dodać powierzchnię podparcia. |
||
*** |
*** Kliknij ikonę [[File:Edit-cleartext.svg|16px]], aby usunąć powierzchnię podparcia. |
||
** |
** Naciśnij przycisk {{Button|Dodaj krawędź}} raz, aby rozpocząć zaznaczanie krawędzi granicznych w oknie [[3D_view/pl|widoku 3D]]. |
||
** Istnieje kilka sposobów na usunięcie zaznaczenia krawędzi granicznych: |
|||
** There are several ways to deselect boundary edges: |
|||
*** |
*** Naciśnij przycisk {{Button|Usuń krawędź}} raz, aby rozpocząć odznaczanie krawędzi w oknie [[3D_view/pl|widoku 3D]]. |
||
*** |
*** Zaznacz krawędź na liście i naciśnij klawisz {{KEY|Delete}}. |
||
*** |
*** Kliknij prawym przyciskiem myszy krawędź na liście i wybierz {{MenuCommand|Usuń}} z menu podręcznego. |
||
* |
* W sekcji {{MenuCommand|Wiązania krawędzi}} można określić krawędzie niebędące krawędziami granicznymi: |
||
** Opcje wyboru są podobne do tych dla krawędzi granicznych. |
|||
** The selection options are similar to those for boundary edges. |
|||
* |
* W sekcji {{MenuCommand|Wiązania wierzchołków}} można określić wierzchołki nie będące wierzchołkami granicznymi: |
||
** Opcje wyboru są podobne do tych dla wierzchołków granicznych. |
|||
** The selection options are similar to those for boundary edges. |
|||
* |
* Naciśnij przycisk {{KEY|Esc}} lub przycisk {{Button|Anuluj}} aby przerwać wykonywanie polecenia. |
||
= |
<span id="Example"></span> |
||
==Przykład== |
|||
Polecenie {{MenuCommand|Powierzchnia podparcia}} działa jako dodatkowe ograniczenie dla powierzchni. Poniższy prosty przykład pozwoli zrozumieć, jak to działa: |
|||
The {{MenuCommand|Support surface}} acts as an additional constraint for the surface. The following simple example will give you an idea how this works: |
|||
# |
# W środowisku pracy [[File:Workbench_Part.svg|16px]] [[Part_Workbench/pl|Część]] utwórz [[File:Part_Cylinder.svg|16px]] [[Part_Cylinder/pl|walec]] i ustaw jego {{PropertyData|kąt}} na {{Value|180°}}. |
||
# |
# Przełącz się ponownie na środowisko pracy [[File:Workbench_Surface.svg|16px]] [[Surface_Workbench/pl|Powierzchnia 3D]] i naciśnij przycisk {{Button|[[File:Surface_Filling.svg|16px]] [[Surface_Filling/pl|Wypełnienie]]}}. |
||
# Wybierz dwie półokrągłe krawędzie i dwie proste krawędzie, które je łączą. |
|||
# Select the two semi-circular edges and the two straight edges that connect them. |
|||
# Wynik jest zgodny z czterema krawędziami granicznymi, ale wewnętrzny kształt jest zupełnie inny od powierzchni cylindrycznej. |
|||
# The result matches the four boundary edges, but the inner shape is quite different from the cylindrical face. |
|||
# |
# Edytuj obiekt Powierzchnia i dla {{MenuCommand|Powierzchnia podparcia}} wybierz powierzchnię cylindryczną. |
||
# Zmodyfikowany kształt znacznie lepiej pasuje do powierzchni walcowej. |
|||
# The modified shape matches the cylindrical face much more closely. |
|||
= |
<span id="Properties"></span> |
||
==Właściwości== |
|||
Obiekt '''Wypełnienie''' ''(klasa {{incode|Surface::Filling}})'' jest pochodną podstawowej klasy [[Part_Feature/pl|Część: Cecha]] ''(klasa {{incode|Part::Feature}}, poprzez klasę podrzędną {{incode|Part::Spline}})'', dlatego też dzieli z nią wszystkie jej właściwości. |
|||
Oprócz właściwości opisanych na stronie [[Part_Feature/pl|Cecha części]], obiekt Rozszerz powierzchnię, posiada następujące właściwości w [[Property_editor/pl|edytorze właściwości]]. |
|||
<span id="Data"></span> |
|||
=== |
===Dane=== |
||
{{TitleProperty| |
{{TitleProperty|Wypełnienie}} |
||
* {{PropertyData|Boundary Edges|LinkSubList}}: |
* {{PropertyData|Boundary Edges|LinkSubList}}: Krawędzie graniczne, C0 jest wymagane dla krawędzi bez odpowiadającej im powierzchni. |
||
* {{PropertyData|Boundary Faces|StringList}}: |
* {{PropertyData|Boundary Faces|StringList}}: |
||
* {{PropertyData|Boundary Order|IntegerList}}: |
* {{PropertyData|Boundary Order|IntegerList}}: Kolejność ograniczeń na powierzchniach granicznych; {{Value|0}}, {{Value|1}} i {{Value|2}} są możliwe. |
||
* {{PropertyData|Unbound Edges|LinkSubList}}: |
* {{PropertyData|Unbound Edges|LinkSubList}}: Nieograniczone krawędzie wiązania, C0 jest wymagane dla krawędzi bez odpowiedniej ściany. |
||
* {{PropertyData|Unbound Faces|StringList}}: |
* {{PropertyData|Unbound Faces|StringList}}: |
||
* {{PropertyData|Unbound Order|IntegerList}}: |
* {{PropertyData|Unbound Order|IntegerList}}: Kolejność ograniczeń na niezwiązanych powierzchniach; {{Value|0}}, {{Value|1}} i {{Value|2}} są możliwe. |
||
* {{PropertyData|Free Faces|LinkSubList}}: |
* {{PropertyData|Free Faces|LinkSubList}}: Wolne ograniczenie na powierzchni. |
||
* {{PropertyData|Free Order|IntegerList}}: |
* {{PropertyData|Free Order|IntegerList}}: Kolejność wiązań na wolnych powierzchniach. |
||
* {{PropertyData|Points|LinkSubList}}: |
* {{PropertyData|Points|LinkSubList}}: Punkty wiązania na powierzchni. |
||
* {{PropertyData|Initial Face|LinkSub}}: |
* {{PropertyData|Initial Face|LinkSub}}: początkowa powierzchnia do użycia. |
||
* {{PropertyData|Degree|Integer}}: |
* {{PropertyData|Degree|Integer}}: Stopień początkowy, domyślnie {{Value|3}}. |
||
* {{PropertyData|Points On Curve|Integer}}: |
* {{PropertyData|Points On Curve|Integer}}: Liczba punktów na krawędzi dla wiązania. |
||
* {{PropertyData|Iterations|Integer}}: |
* {{PropertyData|Iterations|Integer}}: Liczba iteracji, domyślnie {{Value|2}}. |
||
* {{PropertyData|Anisotropy|Bool}}: |
* {{PropertyData|Anisotropy|Bool}}: Wartość domyślna to {{FALSE/pl}}. |
||
* {{PropertyData|Tolerance2d|Float}}: 2D |
* {{PropertyData|Tolerance2d|Float}}: Tolerancja 2D, domyślnie {{Value|0.0}}. |
||
* {{PropertyData|Tolerance3d|Float}}: 3D |
* {{PropertyData|Tolerance3d|Float}}: Tolerancja 3D, domyślnie {{Value|0.0}}. |
||
* {{PropertyData|Tol Angular|Float}}: G1 |
* {{PropertyData|Tol Angular|Float}}: Tolerancja G1, domyślnie {{Value|0.01}}. |
||
* {{PropertyData|Tol Curvature|Float}}: G2 |
* {{PropertyData|Tol Curvature|Float}}: Tolerancja G2, domyślnie {{Value|0.10}}. |
||
* {{PropertyData|Maximum Degree|Integer}}: |
* {{PropertyData|Maximum Degree|Integer}}: Maksymalny stopień krzywej, wartością domyślną jest {{Value|8}}. |
||
* {{PropertyData|Maximum Segments|Integer}}: |
* {{PropertyData|Maximum Segments|Integer}}: Maksymalna liczba segmentów, domyślnie {{Value|9}}. |
||
<span id="View"></span> |
|||
=== |
===Widok=== |
||
{{TitleProperty| |
{{TitleProperty|Podstawa}} |
||
* {{PropertyView| |
* {{PropertyView|Punkty kontrolne|Bool}}: wartość domyślna to {{FALSE/pl}}, Jeśli ustawiono {{TRUE/pl}}, wyświetlona zostanie nakładka z punktami kontrolnymi krzywej. |
||
= |
<span id="Scripting"></span> |
||
==Tworzenie skryptów== |
|||
{{Emphasis| |
{{Emphasis|Zobacz również:}} [[FreeCAD_Scripting_Basics/pl|FreeCAD podstawy tworzenia skryptów]]. |
||
Narzędzie '''Wypełnienie''' powierzchni może być używane w [[Macros/pl|makrodefinicjach]] i z konsoli [[Python/pl|Python]] poprzez dodanie obiektu {{Incode|Surface::Filling}}. |
|||
* |
* Krawędzie, które mają być użyte do zdefiniowania powierzchni, muszą być przypisane jako [[LinkSubList/pl|LinkSubList]] do właściwości {{incode|BoundaryEdges}} obiektu. |
||
* |
* Pomocnicze krawędzie i wierzchołki muszą być przypisane jako [[LinkSubList/pl|LinkSubLists]] do właściwości {{incode|UnboundEdges}} i {{incode|Points}} obiektu. |
||
* Wszystkie obiekty z krawędziami muszą zostać obliczone, zanim będą mogły zostać użyte jako dane wejściowe dla właściwości obiektu Filling. |
|||
* All objects with edges need to be computed before they can be used as input for the properties of the Filling object. |
|||
{{Code|code= |
{{Code|code= |
||
Line 175: | Line 183: | ||
{{Docnav |
{{Docnav/pl |
||
| |
| |
||
|[[Surface_GeomFillSurface| |
|[[Surface_GeomFillSurface/pl|Wypełnianie krzywych granicznych]] |
||
|[[Surface_Workbench| |
|[[Surface_Workbench/pl|środowisko pracy Powierzchnia 3D]] |
||
|IconL= |
|IconL= |
||
|IconR=Surface_GeomFillSurface.svg |
|IconR=Surface_GeomFillSurface.svg |
Latest revision as of 15:34, 23 January 2024
Powierzchnia 3D: Wypełnianie |
Lokalizacja w menu |
---|
Surface → Filling |
Środowisko pracy |
Powierzchnia 3D |
Domyślny skrót |
brak |
Wprowadzono w wersji |
0.17 |
Zobacz także |
brak |
Opis
Polecenie Wypełnianie tworzy powierzchnię z serii połączonych krawędzi granicznych. Krzywizna powierzchni może być dodatkowo kontrolowana przez krawędzie i wierzchołki, które nie są krawędziami granicznymi, oraz powierzchnię podpierającą.
Geometria bazowa może należeć do krzywych utworzonych za pomocą środowiska Rysunek Roboczy lub Szkicownik, ale może również należeć do obiektów bryłowych, takich jak te utworzone za pomocą środowiska Część lub Projekt Części.
Dwie wypełnione powierzchnie ograniczone czterema krawędziami znajdującymi się na płaszczyźnie XY. Powierzchnia po prawej stronie jest dodatkowo kontrolowana przez krawędź niebędącą granicą.
Użycie
- Naciśnij przycisk Wypełnianie.
- Otworzy się panel zadań Granice. Zobacz dostępne Opcje.
- Wybierz dwie lub więcej krawędzi w oknie widoku 3D:
- W tym momencie nie ma potrzeby naciskania przycisku Dodaj krawędź w sekcji Granice.
- Krawędzie muszą być wybrane w odpowiedniej kolejności.
- Krawędzie muszą być połączone, ale cała granica nie musi być zamknięta.
- Kompletna granica nie powinna się przecinać.
- W przypadku okrągłej granicy 360° można wybrać dwie półokrągłe krawędzie.
- Podgląd ostatecznego kształtu zostanie wyświetlony po wybraniu wystarczającej ilości prawidłowej geometrii.
- Opcjonalnie wybierz Powierzchnia pomocnicza. Zobacz Przykład.
- Opcjonalnie wybierz jedno lub więcej Wiązania krawędziowe.
- Opcjonalnie wybierz jedno lub więcej Wiązań wierzchołków.
- Naciśnij przycisk OK.
Opcje
- W sekcji Granice można określić powierzchnię podparcia i krawędzie graniczne:
- Naciśnij przycisk Powierzchnia podparcia i wybierz ścianę w oknie widoku 3D, aby dodać powierzchnię podparcia.
- Naciśnij przycisk Dodaj krawędź raz, aby rozpocząć zaznaczanie krawędzi granicznych w oknie widoku 3D.
- Istnieje kilka sposobów na usunięcie zaznaczenia krawędzi granicznych:
- Naciśnij przycisk Usuń krawędź raz, aby rozpocząć odznaczanie krawędzi w oknie widoku 3D.
- Zaznacz krawędź na liście i naciśnij klawisz Delete.
- Kliknij prawym przyciskiem myszy krawędź na liście i wybierz Usuń z menu podręcznego.
- W sekcji Wiązania krawędzi można określić krawędzie niebędące krawędziami granicznymi:
- Opcje wyboru są podobne do tych dla krawędzi granicznych.
- W sekcji Wiązania wierzchołków można określić wierzchołki nie będące wierzchołkami granicznymi:
- Opcje wyboru są podobne do tych dla wierzchołków granicznych.
- Naciśnij przycisk Esc lub przycisk Anuluj aby przerwać wykonywanie polecenia.
Przykład
Polecenie Powierzchnia podparcia działa jako dodatkowe ograniczenie dla powierzchni. Poniższy prosty przykład pozwoli zrozumieć, jak to działa:
- W środowisku pracy Część utwórz walec i ustaw jego DANEkąt na
180°
. - Przełącz się ponownie na środowisko pracy Powierzchnia 3D i naciśnij przycisk Wypełnienie.
- Wybierz dwie półokrągłe krawędzie i dwie proste krawędzie, które je łączą.
- Wynik jest zgodny z czterema krawędziami granicznymi, ale wewnętrzny kształt jest zupełnie inny od powierzchni cylindrycznej.
- Edytuj obiekt Powierzchnia i dla Powierzchnia podparcia wybierz powierzchnię cylindryczną.
- Zmodyfikowany kształt znacznie lepiej pasuje do powierzchni walcowej.
Właściwości
Obiekt Wypełnienie (klasa Surface::Filling
) jest pochodną podstawowej klasy Część: Cecha (klasa Part::Feature
, poprzez klasę podrzędną Part::Spline
), dlatego też dzieli z nią wszystkie jej właściwości.
Oprócz właściwości opisanych na stronie Cecha części, obiekt Rozszerz powierzchnię, posiada następujące właściwości w edytorze właściwości.
Dane
Wypełnienie
- DANEBoundary Edges (
LinkSubList
): Krawędzie graniczne, C0 jest wymagane dla krawędzi bez odpowiadającej im powierzchni. - DANEBoundary Faces (
StringList
): - DANEBoundary Order (
IntegerList
): Kolejność ograniczeń na powierzchniach granicznych;0
,1
i2
są możliwe. - DANEUnbound Edges (
LinkSubList
): Nieograniczone krawędzie wiązania, C0 jest wymagane dla krawędzi bez odpowiedniej ściany. - DANEUnbound Faces (
StringList
): - DANEUnbound Order (
IntegerList
): Kolejność ograniczeń na niezwiązanych powierzchniach;0
,1
i2
są możliwe. - DANEFree Faces (
LinkSubList
): Wolne ograniczenie na powierzchni. - DANEFree Order (
IntegerList
): Kolejność wiązań na wolnych powierzchniach. - DANEPoints (
LinkSubList
): Punkty wiązania na powierzchni. - DANEInitial Face (
LinkSub
): początkowa powierzchnia do użycia. - DANEDegree (
Integer
): Stopień początkowy, domyślnie3
. - DANEPoints On Curve (
Integer
): Liczba punktów na krawędzi dla wiązania. - DANEIterations (
Integer
): Liczba iteracji, domyślnie2
. - DANEAnisotropy (
Bool
): Wartość domyślna toFAŁSZ
. - DANETolerance2d (
Float
): Tolerancja 2D, domyślnie0.0
. - DANETolerance3d (
Float
): Tolerancja 3D, domyślnie0.0
. - DANETol Angular (
Float
): Tolerancja G1, domyślnie0.01
. - DANETol Curvature (
Float
): Tolerancja G2, domyślnie0.10
. - DANEMaximum Degree (
Integer
): Maksymalny stopień krzywej, wartością domyślną jest8
. - DANEMaximum Segments (
Integer
): Maksymalna liczba segmentów, domyślnie9
.
Widok
Podstawa
- WIDOKPunkty kontrolne (
Bool
): wartość domyślna toFAŁSZ
, Jeśli ustawionoPRAWDA
, wyświetlona zostanie nakładka z punktami kontrolnymi krzywej.
Tworzenie skryptów
Zobacz również: FreeCAD podstawy tworzenia skryptów.
Narzędzie Wypełnienie powierzchni może być używane w makrodefinicjach i z konsoli Python poprzez dodanie obiektu Surface::Filling
.
- Krawędzie, które mają być użyte do zdefiniowania powierzchni, muszą być przypisane jako LinkSubList do właściwości
BoundaryEdges
obiektu. - Pomocnicze krawędzie i wierzchołki muszą być przypisane jako LinkSubLists do właściwości
UnboundEdges
iPoints
obiektu. - Wszystkie obiekty z krawędziami muszą zostać obliczone, zanim będą mogły zostać użyte jako dane wejściowe dla właściwości obiektu Filling.
import FreeCAD as App
import Draft
doc = App.newDocument()
a = App.Vector(-20, -20, 0)
b = App.Vector(-18, 25, 0)
c = App.Vector(60, 26, 0)
d = App.Vector(33, -20, 0)
points1 = [a, App.Vector(-20, -8, 0), App.Vector(-17, 7, 0), b]
obj1 = Draft.make_bspline(points1)
points2 = [b, App.Vector(0, 25, 0), c]
obj2 = Draft.make_bspline(points2)
points3 = [c, App.Vector(37, 4, 0), d]
obj3 = Draft.make_bspline(points3)
points4 = [d, App.Vector(-2, -18, 0), a]
obj4 = Draft.make_bspline(points4)
doc.recompute()
surf = doc.addObject("Surface::Filling", "Surface")
surf.BoundaryEdges = [(obj1, "Edge1"),
(obj2, "Edge1"),
(obj3, "Edge1"),
(obj4, "Edge1")]
doc.recompute()
# ---------------------------------------------------------
points_spl = [App.Vector(-10, 0, 2),
App.Vector(4, 0, 7),
App.Vector(18, 0, -5),
App.Vector(25, 0, 0),
App.Vector(30, 0, 0)]
aux_edge = Draft.make_bspline(points_spl)
doc.recompute()
surf.UnboundEdges = [(aux_edge, "Edge1")]
doc.recompute()
# ---------------------------------------------------------
aux_v1 = Draft.make_line(App.Vector(-13, -12, 5),
App.Vector(-13, -12, -5))
aux_v2 = Draft.make_line(App.Vector(-3, 18, 5),
App.Vector(-3, 18, -5))
doc.recompute()
surf.Points = [(aux_v1, "Vertex2"),
(aux_v2, "Vertex1")]
doc.recompute()
- Jak zacząć
- Instalacja: Pobieranie programu, Windows, Linux, Mac, Dodatkowych komponentów, Docker, AppImage, Ubuntu Snap
- Podstawy: Informacje na temat FreeCAD, Interfejs użytkownika, Profil nawigacji myszką, Metody wyboru, Nazwa obiektu, Edytor ustawień, Środowiska pracy, Struktura dokumentu, Właściwości, Pomóż w rozwoju FreeCAD, Dotacje
- Pomoc: Poradniki, Wideo poradniki
- Środowiska pracy: Strona Startowa, Architektura, Assembly, CAM, Rysunek Roboczy, MES, Inspekcja, Siatka, OpenSCAD, Część, Projekt Części, Punkty, Inżynieria Wsteczna, Robot, Szkicownik, Arkusz Kalkulacyjny, Powierzchnia 3D, Rysunek Techniczny, Test Framework