Draft CubicBezCurve/pl: Difference between revisions
No edit summary |
No edit summary |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 24: | Line 24: | ||
Polecenie [[Image:Draft_CubicBezCurve.svg|24px]] '''Sześcienna krzywa Bézier'a''' tworzy [http://en.wikipedia.org/wiki/Bezier_curve krzywą Béziera] trzeciego stopnia ''(wymagane są cztery punkty)''. |
Polecenie [[Image:Draft_CubicBezCurve.svg|24px]] '''Sześcienna krzywa Bézier'a''' tworzy [http://en.wikipedia.org/wiki/Bezier_curve krzywą Béziera] trzeciego stopnia ''(wymagane są cztery punkty)''. |
||
Krzywa Béziera jest jedną z najczęściej używanych krzywych w grafice komputerowej. Polecenie to pozwala utworzyć ciągły splajn składający się z kilku segmentów Béziera trzeciego stopnia, w sposób podobny do narzędzia Bézier w [https://inkscape.org/ Inkscape]. Ogólną krzywą Béziera dowolnego stopnia można utworzyć za pomocą polecenia [[Draft_BezCurve/pl|Krzywa Bezier'a]]. |
Krzywa Béziera jest jedną z najczęściej używanych krzywych w grafice komputerowej. Polecenie to pozwala utworzyć ciągły splajn składający się z kilku segmentów Béziera trzeciego stopnia, w sposób podobny do narzędzia Bézier'a w [https://inkscape.org/ Inkscape]. Ogólną krzywą Béziera dowolnego stopnia można utworzyć za pomocą polecenia [[Draft_BezCurve/pl|Krzywa Bezier'a]]. |
||
Polecenia [[Draft_BezCurve/pl|Krzywa |
Polecenia [[Draft_BezCurve/pl|Krzywa Bézier'a]] i Sześcienna krzywa Bézier'a używają {{Emphasis|punktów kontrolnych}} do zdefiniowania położenia i krzywizny odcinka krzywej. Z kolei polecenie [[Draft_BSpline/pl|Krzywa złożona]] określa {{Emphasis|dokładne punkty}}, przez które będzie przechodzić krzywa. |
||
[[File:Draft_CubicBezCurve_example.png|500px]] |
[[File:Draft_CubicBezCurve_example.png|500px]] |
||
Line 38: | Line 38: | ||
# Polecenie można wywołać na kilka sposobów: |
# Polecenie można wywołać na kilka sposobów: |
||
#* Naciśnij przycisk {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] '''Sześcienna krzywa Béziera'''}}. |
#* Naciśnij przycisk {{Button|[[Image:Draft_CubicBezCurve.svg|16px]] '''Sześcienna krzywa Béziera'''}}. |
||
#* Wybierz z menu {{MenuCommand|Kreślenie → Narzędzia krzywych Bézier → [[Image:Draft_CubicBezCurve.svg|16px]] Sześcienna krzywa Béziera}} . |
#* Wybierz z menu {{MenuCommand|Kreślenie → Narzędzia krzywych Bézier'a → [[Image:Draft_CubicBezCurve.svg|16px]] Sześcienna krzywa Béziera}} . |
||
# Otworzy się panel zadań {{MenuCommand|Sześcienna krzywa Béziera}}. Więcej informacji można znaleźć w sekcji [[#Opcje|Opcje]]. |
# Otworzy się panel zadań {{MenuCommand|Sześcienna krzywa Béziera}}. Więcej informacji można znaleźć w sekcji [[#Opcje|Opcje]]. |
||
# Nie jest możliwe wprowadzanie punktów za pomocą panelu zadań. |
# Nie jest możliwe wprowadzanie punktów za pomocą panelu zadań. |
||
Line 61: | Line 61: | ||
==Uwagi== |
==Uwagi== |
||
* Sześcienną krzywą |
* Sześcienną krzywą Béziera środowiska Rysunek Roboczy można edytować za pomocą polecenia [[Draft_Edit/pl|Edycja]]. |
||
<span id="Preferences"></span> |
|||
==Ustawienia== |
|||
Zapoznaj się z informacjami na stronie [[Draft_BezCurve/pl#Ustawienia|Krzywa Bezier'a]]. |
|||
<span id="Properties"></span> |
<span id="Properties"></span> |
||
==Właściwości== |
==Właściwości== |
||
Zapoznaj się z informacjami na stronie [[Draft_BezCurve/pl#Właściwości|Krzywa |
Zapoznaj się z informacjami na stronie [[Draft_BezCurve/pl#Właściwości|Krzywa Bézier'a]]. |
||
<span id="Scripting"></span> |
<span id="Scripting"></span> |
||
Line 78: | Line 73: | ||
Zobacz również stronę: [https://freecad.github.io/SourceDoc/ Dokumentacja API generowana automatycznie] oraz [[FreeCAD_Scripting_Basics/pl|Podstawy pisania skryptów dla FreeCAD]]. |
Zobacz również stronę: [https://freecad.github.io/SourceDoc/ Dokumentacja API generowana automatycznie] oraz [[FreeCAD_Scripting_Basics/pl|Podstawy pisania skryptów dla FreeCAD]]. |
||
Aby uzyskać ogólne informacje, zobacz stronę [[Draft_BezCurve/pl|Krzywa |
Aby uzyskać ogólne informacje, zobacz stronę [[Draft_BezCurve/pl|Krzywa Bézier'a]]. Poprzez przekazanie opcji tworzony jest sześcienna krzywa Bézier'a <code>degree=3</code> to {{incode|makeBezCurve()}}. |
||
Dla każdego segmentu krzywej sześciennej Béziera należy użyć czterech punktów, z których dwa skrajne wskazują miejsce, przez które przechodzi krzywizna, a dwa punkty pośrednie są punktami kontrolnymi. |
Dla każdego segmentu krzywej sześciennej Béziera należy użyć czterech punktów, z których dwa skrajne wskazują miejsce, przez które przechodzi krzywizna, a dwa punkty pośrednie są punktami kontrolnymi. |
||
Line 165: | Line 160: | ||
{{Docnav/pl |
{{Docnav/pl |
||
|[[Draft_BSpline/pl|Krzywa złożona]] |
|[[Draft_BSpline/pl|Krzywa złożona]] |
||
|[[Draft_BezCurve/pl|Krzywa |
|[[Draft_BezCurve/pl|Krzywa Bézier'a]] |
||
|[[Draft_Workbench/pl|środowisko pracy Rysunek Roboczy]] |
|[[Draft_Workbench/pl|środowisko pracy Rysunek Roboczy]] |
||
|IconL=Draft_BSpline.svg |
|IconL=Draft_BSpline.svg |
Latest revision as of 14:59, 11 December 2023
Rysunek Roboczy: Sześcienna krzywa Bézier'a |
Lokalizacja w menu |
---|
Kreślenie → Narzędzia krzywych Bézier'a → Sześcienna krzywa Bézier'a |
Środowisko pracy |
Rysunek Roboczy, Architektura |
Domyślny skrót |
brak |
Wprowadzono w wersji |
0.19 |
Zobacz także |
Krzywa Bézier'a, Krzywa złożona |
Opis
Polecenie Sześcienna krzywa Bézier'a tworzy krzywą Béziera trzeciego stopnia (wymagane są cztery punkty).
Krzywa Béziera jest jedną z najczęściej używanych krzywych w grafice komputerowej. Polecenie to pozwala utworzyć ciągły splajn składający się z kilku segmentów Béziera trzeciego stopnia, w sposób podobny do narzędzia Bézier'a w Inkscape. Ogólną krzywą Béziera dowolnego stopnia można utworzyć za pomocą polecenia Krzywa Bezier'a.
Polecenia Krzywa Bézier'a i Sześcienna krzywa Bézier'a używają punktów kontrolnych do zdefiniowania położenia i krzywizny odcinka krzywej. Z kolei polecenie Krzywa złożona określa dokładne punkty, przez które będzie przechodzić krzywa.
Krzywa Spline składająca się z trzech sześciennych segmentów Béziera. Pierwszy segment jest zdefiniowany przez cztery punkty. Kolejne segmenty wykorzystują ponownie dwa punkty z poprzedniego segmentu, a zatem wymagają tylko dwóch dodatkowych punktów.
Użycie
Zapoznaj się również z informacjami na stronie: Tacka narzędziowa, Przyciąganie oraz Wiązania.
- Polecenie można wywołać na kilka sposobów:
- Otworzy się panel zadań Sześcienna krzywa Béziera. Więcej informacji można znaleźć w sekcji Opcje.
- Nie jest możliwe wprowadzanie punktów za pomocą panelu zadań.
- W przypadku następujących modeli Profil nawigacji myszką należy przytrzymać klawisz klawiatury:
- W przypadku korzystania z profilu OpenInventor klawisz Ctrl musi być wciśnięty przez cały czas trwania polecenia.
- Jeśli korzystasz z profilu Gesture, klawisz Alt musi być wciśnięty dla każdej sekwencji kliknięcia i przytrzymania, ale możliwe jest również trzymanie tego klawisza wciśniętego przez cały czas trwania polecenia.
- Wybierz pierwszy punkt w oknie widoku 3D i przytrzymaj przycisk myszki (1), jest to pierwszy punkt końcowy.
- Przeciągnij kursor do innego punktu w oknie widoku 3D i zwolnij przycisk myszki (2), jest to pierwszy punkt kontrolny.
- Przesuń kursor do innego punktu w oknie widoku 3D, wybierz ten punkt i przytrzymaj przycisk myszki (3), jest to drugi punkt końcowy.
- Przesuń kursor do innego punktu w oknie widoku 3D, aby dostosować końcową krzywiznę segmentu i zwolnij przycisk myszki (4), jest to drugi punkt kontrolny.
- Masz teraz jedną krzywą Béziera 3 stopnia.
- Opcjonalnie można powtórzyć proces klikania i przytrzymywania (5) oraz przeciągania i zwalniania (6), aby dodać więcej segmentów.
- Każdy kolejny segment użyje drugiego punktu końcowego i drugiego punktu kontrolnego poprzedniego segmentu jako odpowiednio pierwszego punktu końcowego i pierwszego punktu kontrolnego.
- Naciśnij Esc lub przycisk Zamknij, aby zakończyć polecenie.
Opcje
Zapoznaj się z informacjami na stronie Krzywa Bezier'a.
Uwagi
- Sześcienną krzywą Béziera środowiska Rysunek Roboczy można edytować za pomocą polecenia Edycja.
Właściwości
Zapoznaj się z informacjami na stronie Krzywa Bézier'a.
Tworzenie skryptów
Zobacz również stronę: Dokumentacja API generowana automatycznie oraz Podstawy pisania skryptów dla FreeCAD.
Aby uzyskać ogólne informacje, zobacz stronę Krzywa Bézier'a. Poprzez przekazanie opcji tworzony jest sześcienna krzywa Bézier'a degree=3
to makeBezCurve()
.
Dla każdego segmentu krzywej sześciennej Béziera należy użyć czterech punktów, z których dwa skrajne wskazują miejsce, przez które przechodzi krzywizna, a dwa punkty pośrednie są punktami kontrolnymi.
- Jeżeli podane są tylko trzy punkty, zamiast tego tworzona jest kwadratowa krzywa Béziera z tylko jednym punktem kontrolnym.
- Jeżeli podane są tylko 2 punkty, tworzona jest liniowa krzywa Béziera, czyli linia prosta.
- Jeśli podano 5 punktów, pierwsze 4 tworzą sześcienny segment krzywej Béziera, 4. i 5. punkt są używane do utworzenia linii prostej.
- Jeśli podano 6 punktów, pierwsze 4 tworzą sześcienny odcinek krzywej Béziera, 4. i pozostałe dwa punkty są używane do utworzenia kwadratowego odcinka Béziera.
- Jeśli podano 7 punktów, pierwsze 4 tworzą sześcienny odcinek krzywej Béziera, czwarty i pozostałe trzy punkty są używane do utworzenia drugiego sześciennego odcinka krzywej Béziera.
- Ogólnie rzecz biorąc, ostatni punkt w grupie czterech jest dzielony z następującymi maksymalnie trzema punktami, aby utworzyć kolejny segment krzywej Béziera.
- Aby uzyskać gładkie krzywe, bez prostych segmentów, liczba punktów powinna wynosić
3n + 1
lub3n
, gdzien
jest liczbą segmentów, dlan >= 1
.
Przykłady krzywych Béziera utworzonych przy użyciu 2, 3, 4, 5, 6, 7 i 8 punktów. Linie ciągłe oznaczają sześcienne segmenty Béziera. Pozostałe linie są kwadratowe lub proste.
Przykład:
import FreeCAD as App
import Draft
doc = App.newDocument()
p1 = App.Vector(-3500, 0, 0)
p2 = App.Vector(-3000, 2000, 0)
p3 = App.Vector(-1100, 2000, 0)
p4 = App.Vector(0, 0, 0)
p5 = App.Vector(1500, -2000, 0)
p6 = App.Vector(3000, -1500, 0)
p7 = App.Vector(5000, 0, 0)
p8 = App.Vector(6000, 1500, 0)
rot = App.Rotation()
c1 = Draft.make_circle(100, placement=App.Placement(p1, rot), face=False)
c1.Label = "B1_E1"
c2 = Draft.make_circle(50, placement=App.Placement(p2, rot), face=True)
c2.Label = "B1_c1"
c3 = Draft.make_circle(50, placement=App.Placement(p3, rot), face=True)
c3.Label = "B1_c2"
c4 = Draft.make_circle(100, placement=App.Placement(p4, rot), face=False)
c4.Label = "B1_E2"
c5 = Draft.make_circle(50, placement=App.Placement(p5, rot), face=True)
c5.Label = "B2_c3"
c6 = Draft.make_circle(50, placement=App.Placement(p6, rot), face=True)
c6.Label = "B2_c4"
c7 = Draft.make_circle(100, placement=App.Placement(p7, rot), face=False)
c7.Label = "B2_E3"
c8 = Draft.make_circle(50, placement=App.Placement(p8, rot), face=True)
c8.Label = "B3_c5"
doc.recompute()
B1 = Draft.make_bezcurve([p1, p2], degree=3)
B1.Label = "B_lin"
B1.ViewObject.DrawStyle = "Dashed"
B2 = Draft.make_bezcurve([p1, p2, p3], degree=3)
B2.Label = "B_quad"
B2.ViewObject.DrawStyle = "Dotted"
B3 = Draft.make_bezcurve([p1, p2, p3, p4], degree=3)
B3.Label = "B_cub"
B3.ViewObject.LineWidth = 4
B4 = Draft.make_bezcurve([p1, p2, p3, p4, p5], degree=3)
B4.Label = "B_cub+lin"
B4.ViewObject.DrawStyle = "Dashed"
B5 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6], degree=3)
B5.Label = "B_cub+quad"
B5.ViewObject.DrawStyle = "Dotted"
B6 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7], degree=3)
B6.Label = "B_cub+cub"
B6.ViewObject.LineWidth = 2
B7 = Draft.make_bezcurve([p1, p2, p3, p4, p5, p6, p7, p8], degree=3)
B7.Label = "B_cub+cub+lin"
B7.ViewObject.DrawStyle = "Dashed"
doc.recompute()
- Kreślenie: Linia, Polilinia, Zaokrąglenie, Łuk, Łuk przez 3 punkty, Okrąg, Elipsa, Wielokąt foremny, Krzywa złożona, Krzywa Bezier'a, Punkt, Łącznik ścian, Kształt z tekstu, Kreskowanie, Prostokąt
- Adnotacje: Adnotacja wieloliniowa, Wymiarowanie, Etykieta, Edytor stylów adnotacji, Widżet skali anotacji
- Modyfikacja: Przesuń, Obróć, Skala, Odbicie lustrzane, Odsunięcie, Przytnij, Rozciągnij, Klonuj, Szyk, Szyk biegunowy, Szyk kołowy, Szyk po ścieżce, Szyk powiązań po ścieżce, Szyk z punktów, Szyk powiązań w punktach, Edycja, Podświetl element podrzędny, Połącz, Rozdziel, Ulepsz kształt, Rozbij obiekt na elementy, Polilinia na krzywą złożoną, Rysunek Roboczy do szkicu, Nachylenie, Obróć wymiar, Widok 2D kształtu
- Tacka narzędziowa: Wybór płaszczyzny, Ustaw styl, Przełącz tryb konstrukcyjny, Grupowanie automatyczne
- Przyciąganie: Przełącz przyciąganie, Przyciągnij do punktu końcowego, Przyciągnij do punktu środkowego, Przyciągnij do środka, Przyciągnij do kąta, Przyciąganie do punktu przecięcia, Przyciągnij prostopadle, Rozszerz, Przyciągnij równolegle, Przyciągnij specjalnie, Przyciąganie do najbliższego, Przyciągnij ortogonalnie, Przyciągnij do siatki, Przyciągnij do płaszczyzny roboczej, Przyciągnij do wymiaru, Pokaż / ukryj siatkę
- Różności: Zastosuj bieżący styl, Warstwa, Zarządzaj warstwami, Dodaj grupę o nazwie, Dodaj do grupy, Wybierz grupę, Dodaj do grupy konstrukcyjnej, Przełącz tryb wyświetlania, Pośrednia płaszczyzna robocza, Ulecz, Przełącz tryb kontynuacji, Pokaż przybornik przyciągania
- Dodatkowe:: Wiązania, Wypełnienie wzorem, Preferencje, Ustawienia Importu i Eksportu, DXF/DWG, SVG, OCA, DAT
- Menu podręczne:
- Kontener warstwy: Połącz duplikaty warstw, Dodaj warstwę
- Warstwa: Aktywuj warstwę, Zaznacz zawartość warstwy
- Pośrednia płaszczyzna robocza: Zapisz ujęcie widoku, Zapisz stan obiektów
- 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