Geometrie/Oskulační kružnice
Vzhled
Vyjádření
[editovat | editovat zdroj]Zvolme na křivce neinflexní bod . Oskulační kružnice křivky v bodě je kružnice, která leží v oskulační rovině křivky v bodě , kterým také prochází a sdílí v něm tečnu křivky . Poloměr kružnice je roven převrácené hodnotě první křivosti křivky v bodě , tzn. . Její střed leží na polopřímce určené bodem a vektorem 1. křivosti křivky v tomto bodě. Kde je parametr na křivce.
Algoritmizace
[editovat | editovat zdroj]- firstCurvature
- první křivost,
- oscullatingCircle
- pole reprezentující oskulační kružnici [Stred.X, Stred.Y, polomer].
public void SetOsculatingCircle() { c2DPoint P = Fxy(parametr); // actual point c2DPoint D1Point = Fxydxy(parametr); // point of the 1st derivation c2DPoint D2Point = Fxyddxy(parametr);// point of the 2nd der. double fraction = (Math.Pow(D1Point.X, 2) + Math.Pow(D1Point.Y, 2)) / D1Point.X*D2Point.Y - D1Point.Y*D2Point.X); oscullatingCircle[0] = P.X - fraction * D1Point.Y; // Center.X (Sx) oscullatingCircle[1] = P.Y + fraction * D1Point.X; // Center.Y (Sy) oscullatingCircle[2] = 1 / firstCurvature; // Radius (r) }
Autoři
[editovat | editovat zdroj]Tento text vypracovali studenti Univerzity Palackého v Olomouci katedry Matematické informatiky jako zápočtový úkol do předmětu Počítačová geometrie.