Geometrie/Normálová křivost

Z Wikiknih

Přejít na: navigace, hledání

[editovat] Definice:

Nechť χ je plocha dána rovnicí f = f(u^1,u^2),[u^1,u^2] \in \Omega. Nechť F je bod na ploše χ a k je křivka procházející tímto bodem dána rovnicí g = f \Big( u^1(s), u^2(s) \Big), pak normálovou křivostí křivky k v bode F = G(s0) nazveme součin vektoru druhé derivace přímky k v bodě F a jednotkového vektoru daného vztahem m = \frac {f_1 \times f_2}{\mid f_1 \times f_2 \mid}, který se nazývá vektor normály.

[editovat] Algoritmus

Sestrojíme vektor normály a potom součinem vektoru druhé derivace křivky a vektoru normály dostaneme normálovou křivost.

public static double NormalovaKrivost(Surface Plocha, Curve2d Krivka, double u) {
  Point2d bod = Krivka.GetValue(u); 
  Vector3d NormVek = NormalovyVektor(Plocha, bod[0], bod[1]);			  
  Vector3d VekNormaly = new Vector3d(NormVek[0] / NormVek.Length(),
              NormVek [1]NormVek.Length(), NormVek[2] / NormVek.Length()); 

  KrivkaNaPlose zobrazenaKrivka = new KrivkaNaPlose(Plocha, Krivka); 
  Vector3d Pom = zobrazenaKrivka.SecondDeriv(u);  
  return Pom.DotProduct(VekNormaly);
}

[editovat] Autoři

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.