Szkicownik: Wiązanie prostopadłości

From FreeCAD Documentation
Revision as of 18:13, 24 October 2020 by Kaktus (talk | contribs) (Created page with "===Pomiędzy dwoma krzywymi w punkcie ''(prostopadłym do punktu) (v0.15)''===")

Sketcher: Wiązanie prostopodłości

Lokalizacja w menu
Sketch → Wiązania Szkicownika → Wiązanie prostopadłości
Środowisko pracy
Szkicownik
Domyślny skrót
N
Wprowadzono w wersji
-
Zobacz także
Szkicownik: Wiązanie kąta

Opis

Wiązanie prostopadłości tworzy dwie linie, które są prostopadłe do siebie, lub dwie krzywe, które są prostopadłe na ich przecięciu. Linie są traktowane jako nieskończone, a łuki są traktowane jako pełne okręgi/elipsy. Wiązanie może również łączyć dwie krzywe, wymuszając ich prostopadłość w miejscu połączenia, podobnie jak w przypadku Wiązanie styczności.

Użycie

Istnieją cztery różne sposoby zastosowania tego wiązania:

  1. pomiędzy dwoma krzywymi (dostępne nie dla wszystkich krzywych),
  2. pomiędzy dwoma punktami końcowymi krzywej,
  3. pomiędzy krzywą a punktem końcowym innej krzywej,
  4. pomiędzy dwoma krzywymi w punkcie zdefiniowanym przez użytkownika.

Aby zastosować wiązanie prostopadłości, należy wykonać następujące czynności:

  • Wybierz dwie lub trzy pozycje na szkicu.
  • Wywołaj wiązanie, klikając jego ikonę na pasku narzędzi, wybierając element menu lub używając skrótu klawiaturowego.

Pomiędzy dwoma krzywymi (prostopadłość bezpośrednia)

Dwie krzywe zostaną wykonane prostopadle w punkcie ich przecięcia (rzeczywiste lub przedłużenia krzywych), a punkt przecięcia będzie domyślny. Tryb ten jest stosowany, jeśli zostały wybrane dwie krzywe.

Zaakceptowany wybór:

  • linia + linia, koło, łuk
  • okrąg, łuk + okrąg, łuk

Jeśli bezpośrednia prostopadłość między wybranymi łukami nie jest obsługiwana (np. między linią a elipsą), do szkicu zostanie automatycznie dodany punkt pomocniczy i zastosowany zostanie punkt prostopadły-przejściowy.

W przeciwieństwie do styczności, rekonstrukcja punktu prostopadłości przez utworzenie punktu i związanie jego położenia na obu łukach (ograniczając w ten sposób punkt do punktu przecięcia) jest całkowicie poprawna.

Między dwoma punktami końcowymi (prostopadłość między punktami)

W tym trybie zbierzne są punkty końcowe, a połączenie jest wykonane pod kątem prostym. Tryb ten jest stosowany, gdy wybrane zostały dwa punkty końcowe dwóch krzywych.

"Zaakceptowany wybór:

  • punkt końcowy linii/łuku/łuku-ellipsy + punkt końcowy linii/łuku/łuku-ellipsy (tj. dwa punkty końcowe dowolnych dwóch krzywych)

Między krzywą a punktem końcowym (prostopadłość punktu do krzywej)

W tym trybie, punkt końcowy jednej krzywej jest związany z położeniem na drugiej, a krzywe są ustawione prostopadle do punktu. Tryb ten jest stosowany, gdy zostały wybrane krzywa i punkt końcowy innej krzywej.

Zaakceptowany wybór:

  • linia, okrąg, łuk, elipsa, łuk elipsy + punkt końcowy linii/łuku/łuku elipsy (tzn. każda krzywa + punkt końcowy każdej krzywej).


Pomiędzy dwoma krzywymi w punkcie (prostopadłym do punktu) (v0.15)

In this mode, two curves are made perpendicular, and the point of perpendicularity is tracked. This mode is applied when two curves and a point were selected.

Accepted selection:

  • any line/curve + any line/curve + any point

"Any point" can be a lone point, or a point of something, e.g. a center of a circle, an endpoint of an arc, or the origin.

For the constraint to work correctly, the point must be on both curves. So, as the constraint is invoked, the point will be automatically constrained onto both curves (helper constraints will be added, if necessary), and the curves will be forced perpendicular at the point. These helper constraints are plain regular constraints. They can be added manually, or deleted.

Compared to direct perpendicular, this constraint is slower, because there are mode degrees of freedom involved, but it supports ellipses.

The placement of the point before the constraint is applied is a hint for the solver for where the perpendicularity should be.

Tworzenie skryptów

Ograniczenie prostopadłe może być utworzone przez makropolecenie i z konsoli Pyton za pomocą następujących narzędzi:

# direct perpendicularity
Sketch.addConstraint(Sketcher.Constraint('Perpendicular',icurve1,icurve2))

# point-to-point perpendicularity
Sketch.addConstraint(Sketcher.Constraint('Perpendicular',icurve1,pointpos1,icurve2,pointpos2))

# point-to-curve perpendicularity
Sketch.addConstraint(Sketcher.Constraint('Perpendicular',icurve1,pointpos1,icurve2))

# perpendicular-via-point (plain constraint, helpers are not added automatically)
Sketch.addConstraint(Sketcher.Constraint('PerpendicularViaPoint',icurve1,icurve2,geoidpoint,pointpos))

Gdzie:

  • Sketch jest obiektem szkicu
  • icurve1, icurve2 są dwiema liczbami całkowitymi określającymi krzywe, które mają być wykonane prostopadle. Liczby całkowite są indeksami w szkicu (wartość zwracana przez Sketch.addGeometry).
  • pointpos1, pointpos2 powinny mieć wartość 1 dla punktu początkowego i 2 dla końcowego.
  • geoid point i pointpos w PerpendicularViaPoint są indeksami określającymi punkt prostopadłościanu.