Surface GeomFillSurface/pl: Difference between revisions
(Created page with "{{TitleProperty|Podstawa}}") |
No edit summary |
||
(17 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
|[[Surface_Filling/pl|Wypełnianie]] |
|[[Surface_Filling/pl|Wypełnianie]] |
||
|[[Surface_Sections/pl|Przekrój powierzchni]] |
|[[Surface_Sections/pl|Przekrój powierzchni]] |
||
|[[Surface_Workbench/pl|środowisko pracy Powierzchnia]] |
|[[Surface_Workbench/pl|środowisko pracy Powierzchnia 3D]] |
||
|IconL=Surface_Filling.svg |
|IconL=Surface_Filling.svg |
||
|IconR=Surface_Sections.svg |
|IconR=Surface_Sections.svg |
||
Line 66: | Line 66: | ||
{{TitleProperty|Podstawa}} |
{{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="Twisting_of_the_surface"></span> |
|||
== Twisting of the surface == |
|||
==Skręcenie powierzchni== |
|||
Kształt powierzchni zależy od kierunku wybranych krawędzi; jeśli wybrano krawędzie, a wynikiem jest powierzchnia, która "zakręca" na siebie, jedna z krawędzi może wymagać listy wierzchołków w odwrotnej kolejności. Powierzchnia, która skręca się sama na sobie, prawdopodobnie będzie miała samoprzecięcia, a zatem będzie nieprawidłowym [[Part_TopoShape/pl|kształtem]]. Można to zweryfikować za pomocą narzędzia {{Button|[[File:Part_CheckGeometry.svg|16px]] [[Part_CheckGeometry/pl|Sprawdź geometrię]]}} środowiska pacy Część. |
|||
Na przykład, jeśli dwie krzywe mają punkty: |
|||
For example, if two curves have the points |
|||
{{Code|code= |
{{Code|code= |
||
curve1 = [a, b, c, d] |
curve1 = [a, b, c, d] |
||
curve2 = [e, f, g] |
curve2 = [e, f, g] |
||
}} |
}} |
||
oraz wynikową powierzchnię po użyciu {{Button|[[File:Surface_GeomFillSurface.svg|16px]] [[Surface_GeomFillSurface/pl|Wypełnianie krzywych granicznych]]}} lub {{Button|[[File:Surface_Sections.svg|16px]] [[Surface_Sections/pl|Przekrój powierzchni]]}} jest powierzchnią skręconą, możesz utworzyć trzecią krzywą, która jest równa jednej z dwóch oryginalnych krzywych, ale z odwróconą listą punktów. |
|||
Albo |
|||
Either |
|||
{{Code|code= |
{{Code|code= |
||
curve1 = [a, b, c, d] |
curve1 = [a, b, c, d] |
||
Line 85: | Line 86: | ||
}} |
}} |
||
lub |
|||
or |
|||
{{Code|code= |
{{Code|code= |
||
curve3 = [d, c, b, a] |
curve3 = [d, c, b, a] |
||
curve2 = [e, f, g] |
curve2 = [e, f, g] |
||
}} |
}} |
||
powinno działać, aby wygenerować powierzchnię, która się nie skręca. |
|||
should work to generate a surface that doesn't twist. |
|||
W praktyce oznacza to, że wszystkie krawędzie używane do generowania powierzchni powinny być tworzone najlepiej w tym samym kierunku zgodnym lub przeciwnym do ruchu wskazówek zegara. Przestrzeganie tej prostej zasady zwykle gwarantuje, że powierzchnia będzie podążać w najbardziej płynnym kierunku i nie będzie się skręcać. |
|||
In practical terms this means that all edges used to generate a surface should be created preferably in the same clockwise or anti-clockwise direction. Following this simple rule usually guarantees that the surface will follow the smoothest direction and won't twist. |
|||
Gdy właściwość {{PropertyView|Oświetlenie}} powierzchni ma wartość {{Value|Jedna strona}}, powierzchnia zostanie pomalowana na czarno, jeśli jej normalny kierunek wskazuje na [[3D_view/pl|widok 3D]] ''(z dala od bieżącej widza)'', wskazując odwróconą powierzchnię w stosunku do innych kolorowych powierzchni. |
|||
[[File:Surface_twisting_example_smooth.png|330px]] [[File:Surface_twisting_example_twisted.png|330px]] |
[[File:Surface_twisting_example_smooth.png|330px]] [[File:Surface_twisting_example_twisted.png|330px]] |
||
{{Caption|Po lewej: krawędzie graniczne są zorientowane w tym samym kierunku, a zatem wygenerowana powierzchnia jest gładka. Po prawej: krawędzie graniczne mają przeciwne kierunki, a zatem wygenerowana powierzchnia skręca się na sobie, powodując samoprzecinanie.}} |
|||
{{Caption|Left: the boundary edges are oriented in the same direction, and thus the generated surface is smooth. Right: the boundary edges have opposite directions, and thus the generated surface twists on itself, resulting in self-intersections.}} |
|||
= |
<span id="Scripting"></span> |
||
==Tworzenie skryptów== |
|||
{{Emphasis| |
{{Emphasis|Zobacz również:}} [[FreeCAD_Scripting_Basics/pl|FreeCAD podstawy tworzenia skryptów]]. |
||
Narzędzie '''Wypełnianie krzywych granicznych''' powierzchni może być używane w [[Macros/pl|makrodefinicjach]] i z konsoli [[Python/pl|Python]] poprzez dodanie obiektu {{Incode|Surface::GeomFillSurface}}. |
|||
* |
* Krawędzie, które mają być użyte do zdefiniowania powierzchni, muszą być przypisane jako [[LinkSubList/pl|LinkSubList]] do właściwości {{incode|BoundaryList}} obiektu. |
||
* |
* Typ algorytmu musi być przypisany jako ciąg znaków do właściwości {{incode|TypWypełnienia}}. |
||
* 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 GeomFillSurface object. |
|||
{{Code|code= |
{{Code|code= |
||
Line 141: | Line 143: | ||
{{Docnav |
{{Docnav/pl |
||
|[[Surface_Filling| |
|[[Surface_Filling/pl|Wypełnianie]] |
||
|[[Surface_Sections| |
|[[Surface_Sections/pl|Przekrój powierzchni]] |
||
|[[Surface_Workbench| |
|[[Surface_Workbench/pl|środowisko pracy Powierzchnia 3D]] |
||
|IconL=Surface_Filling.svg |
|IconL=Surface_Filling.svg |
||
|IconR=Surface_Sections.svg |
|IconR=Surface_Sections.svg |
Latest revision as of 16:57, 24 January 2024
Powierzchnia 3D: Wypełnianie krzywych granicznych |
Lokalizacja w menu |
---|
Surface → Fill boundary curves |
Środowisko pracy |
Powierzchnia 3D |
Domyślny skrót |
brak |
Wprowadzono w wersji |
0.17 |
Zobacz także |
brak |
Opis
Polecenie Wypełnianie krzywych granicznych tworzy parametryczną powierzchnię z dwóch, trzech lub czterech krawędzi granicznych, próbując utworzyć płynne przejście między nimi.
Po lewej: krawędzie używane do generowania powierzchni za pomocą narzędzia Wypełnianie krzywych granicznych, cztery połączone krawędzie, trzy połączone krawędzie i dwie odłączone krawędzie. Po prawej: powierzchnia wynikowa z użycia odpowiednio czterech, trzech i dwóch krawędzi.
Użycie
- Naciśnij przycisk Wypełnianie krzywych granicznych.
- Wybierz krawędzie w oknie widoku 3D. Krawędzie muszą łączyć się ze sobą tak, aby tworzyły profil zamknięty.
- Naciśnij OK.
Uwaga: Po utworzeniu nie jest możliwe zastosowanie dodatkowych wiązań do utworzonej powierzchni.
Opcje
Typ wypełnienia: Rozciągnięcie, Coons, lub Zakrzywienie.
Właściwości
Obiekt Wypełnianie krzywych granicznych (klasa Surface::GeomFillSurface
) jest pochodną podstawowej klasy Część: Cecha (klasa Part::Feature
, wraz z klasą podrzędną Part::Spline
), dlatego też współdzieli wszystkie właściwości tej ostatniej.
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
Podstawa
- DANETyp wypełnienia (
Enumeration
): zastosowany algorytm wypełniania; Rozciągnięcie, styl z najbardziej płaskimi łatami.Coons
, zaokrąglony styl o mniejszej głębokości niż Zakrzywienie. Zakrzywiony, styl z najbardziej zaokrąglonymi łatami. - DANELista granic (
LinkSubList
): lista krawędzi, które zostaną użyte do zbudowania powierzchni. - DANE ((ukryte))Lista odwrócona (
BoolList
):
Widok
Podstawa
- WIDOKPunkty kontrolne (
Bool
): wartość domyślna toFAŁSZ
, Jeśli ustawionoPRAWDA
, wyświetlona zostanie nakładka z punktami kontrolnymi krzywej.
Skręcenie powierzchni
Kształt powierzchni zależy od kierunku wybranych krawędzi; jeśli wybrano krawędzie, a wynikiem jest powierzchnia, która "zakręca" na siebie, jedna z krawędzi może wymagać listy wierzchołków w odwrotnej kolejności. Powierzchnia, która skręca się sama na sobie, prawdopodobnie będzie miała samoprzecięcia, a zatem będzie nieprawidłowym kształtem. Można to zweryfikować za pomocą narzędzia Sprawdź geometrię środowiska pacy Część.
Na przykład, jeśli dwie krzywe mają punkty:
curve1 = [a, b, c, d]
curve2 = [e, f, g]
oraz wynikową powierzchnię po użyciu Wypełnianie krzywych granicznych lub Przekrój powierzchni jest powierzchnią skręconą, możesz utworzyć trzecią krzywą, która jest równa jednej z dwóch oryginalnych krzywych, ale z odwróconą listą punktów.
Albo
curve1 = [a, b, c, d]
curve3 = [g, f, e]
lub
curve3 = [d, c, b, a]
curve2 = [e, f, g]
powinno działać, aby wygenerować powierzchnię, która się nie skręca.
W praktyce oznacza to, że wszystkie krawędzie używane do generowania powierzchni powinny być tworzone najlepiej w tym samym kierunku zgodnym lub przeciwnym do ruchu wskazówek zegara. Przestrzeganie tej prostej zasady zwykle gwarantuje, że powierzchnia będzie podążać w najbardziej płynnym kierunku i nie będzie się skręcać.
Gdy właściwość WIDOKOświetlenie powierzchni ma wartość Jedna strona
, powierzchnia zostanie pomalowana na czarno, jeśli jej normalny kierunek wskazuje na widok 3D (z dala od bieżącej widza), wskazując odwróconą powierzchnię w stosunku do innych kolorowych powierzchni.
Po lewej: krawędzie graniczne są zorientowane w tym samym kierunku, a zatem wygenerowana powierzchnia jest gładka. Po prawej: krawędzie graniczne mają przeciwne kierunki, a zatem wygenerowana powierzchnia skręca się na sobie, powodując samoprzecinanie.
Tworzenie skryptów
Zobacz również: FreeCAD podstawy tworzenia skryptów.
Narzędzie Wypełnianie krzywych granicznych powierzchni może być używane w makrodefinicjach i z konsoli Python poprzez dodanie obiektu Surface::GeomFillSurface
.
- Krawędzie, które mają być użyte do zdefiniowania powierzchni, muszą być przypisane jako LinkSubList do właściwości
BoundaryList
obiektu. - Typ algorytmu musi być przypisany jako ciąg znaków do właściwości
TypWypełnienia
. - 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(-140, -100, 0)
b = App.Vector(175, -108, 0)
c = App.Vector(200, 101, 0)
d = App.Vector(-135, 107, 70)
points1 = [a, App.Vector(-55, -91, 65), App.Vector(35, -85, -5), b]
obj1 = Draft.make_bspline(points1)
points2 = [b, App.Vector(217, -45, 55), App.Vector(217, 35, -15), c]
obj2 = Draft.make_bspline(points2)
points3 = [c, App.Vector(33, 121, 55), App.Vector(0, 91, 15), App.Vector(-80, 121, -40), d]
obj3 = Draft.make_bspline(points3)
points4 = [d, App.Vector(-140, 0, 45), a]
obj4 = Draft.make_bspline(points4)
doc.recompute()
surf = doc.addObject("Surface::GeomFillSurface", "Surface")
surf.BoundaryList = [(obj1, "Edge1"),
(obj2, "Edge1"),
(obj3, "Edge1"),
(obj4, "Edge1")]
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