Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller
Elementare Geometrie für Raytracing
English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  - Geometrie Grundlagen
    für Raytracing

    Rechtwinkliges Dreieck
    Pythagoras
    Trigonometrie Basis
    Kosinussatz
    Gleichseitiges Dreieck
    Reguläres Polygon
    Polyeder
      Regulärer Tetraeder
      Regulärer Oktaeder
      Würfel & Quader
      Regulärer Dodekaheder
      Regulärer Ikosaeder
      Kuboktaeder
      Oktaederstumpf
      Rhombenkuboktaeder
      Ikosaederstumpf
    Kreise
      Tangierende Kreise
      Interne Tangenten
      Externe Tangenten
     
     
     
     
     
     
     
     
     
   - Geometric 3D Animations

                                               

Tangierende Kreise
Im folgenden wird für die Quadratwurzel einer Zahl, der englische Ausdruck "sqrt(ZAHL)"
gemäß der von POV-Ray verwendeten Syntax geschrieben.

Anmerkung: Hier werden Objekte der 2D-Geometrie durch 3D-Objekte in der xy-Ebene dargestellt.
Daher müssen alle Koordinaten die z-Komponente Null haben! ( <?,?,0>)

Kreis 1: Mittelpunkt M1 = <0.35,0,0>, Radius r1= 0.22.
Kreis 2: Mittelpunkt auf der y-Achse, tangiert Kreis 1 von außen im Punkt S.
Problem 1:
Kreis 2 hat den Radius r2 = 0.30 .
Wo auf der y-Achse (Höhe: y2) ist der Mittelpunkt von Kreis 2 ? (M2 = <0,?,0>)
Problem 2:
Kreis 2 has the center M2 = <0,0.40,0>.
Wie groß muß der Radius von Kreis 2 sein, wenn er den Kreis 1 in einem Punkt S berührt, der so nahe wie möglich ist?
Problem 3:
Wie lauten die Koordinaten von Punkt S ?
Problem 4:
Wie groß ist der Winkel bei M1 und bei M2 innerhalb des Dreiecks(0,M1,M2)?
Das Dreieck(O,M1,M2) ist rechtwinklig!
Daher verwenden wir den Satz des Pythagoras:

// Problem 1: //--------------------------
Wir kennen zwei Seiten des Dreiecks(O,M1,M2):
d(0,M1) = x1 und d(M1,M2) = r1+r2.
   y2 = sqrt( (r1+r2)2 - x12)
   M2 = <0,y2,0>.


// Problem 2: //--------------------------
Weil gilt
   r1+r2 = d(M1,M2) = sqrt(x12 + y22),
erhalten wir
   d(M1,M2) = sqrt( x12 - y22 )
   und r2 = d(M1,M2) - r1.

// Problem 3: //--------------------------
Hier gibt es eine einfache Proportionalität (Strahlensätze!):
  xS1/xM1 = r2/ (r1+r2) und yS/yM2 = r1/ (r1+r2),
daher gilt:   xS = xM1 · r2/ (r1+r2)
      yS = yM2 · r1/ (r1+r2).


// Problem 4: //--------------------------
Mit der trigonometrischen Umkehrfunktion z.B. von tan(x):
   Angle(M1) = atan ( y2/ x1),
   Angle(M2) = 90 - Angle(M1).
Tangierende Kreise gerendert mit POV-Ray
Anmerkung: Um eine Kollision mit fest vordefinierten Bezeichnern und in POV-Ray
reservierten Wörter
zu vermeiden, wird dringend empfohlen, als Bezeichnern für
Variable und Objekte, welche vom Benutzer definiert werden, nur Wörter zu verwenden, die mit einem Großbuchstaben beginnen.
D.h.: Man verwende "R1" anstatt "r1" und man verwende "Y2" anstelle von "yM2".
#local R1= 0.22;
#local R2= 0.30;
#local M1 = <0.35,0,0>
#local Y2 = sqrt( pow(R1+R2, 2) - pow(M1.x, 2));
#local M2 = <0,Y2,0>; 
Problem 1 in POV-Ray
#local R1= 0.22;
#local M1 = <0.35,0,0>
#local M2 = <0.40,0,0>
#local R2 = sqrt( pow(M1.x,2)-pow(M2.y,2)) - R1;
Problem 2 in POV-Ray
#local XS = M1.x * R2/(R1+R2);
#local YS = M2.y * R1/(R1+R2);
#local S = <XS,YS,0>

#local Angle_M1 = degrees( atan( M2.y / M1.x) ); #local Angle_M2 = 90 - Angle_M1;
Problem 3 + 4 in POV-Ray

Wozu kann man diese Geometrie gebrauchen?
Hier einige Beispiele:
Wir können Kreis 1 als den Querschnitt eines horizontale liegenden Torus betrachten und den Kreis 2 als den Querschnitt einer Kugel:


Wir können Kreis 1 und sein Spiegelbild an der y-Achse als den Querschnitt eines von zwei Zylindern in z-Richtung betrachten und den Kreis 2 als den Querschnitt eines anderen Zylinders, welcher von dem gelben Quader subtrahiert werden soll:

Form eines Rundkolbens
Ein Rundkolben
für das Laboratorium
Zwei verschmelzende Zylinder
Ein Kettenglied für eine Fahrradkette
Diese Form in einem Makro als ein
gebrauchsfertiges Objekt:
  Rundkolben-Form.
Angewandt in einem Makro für ein
gebrauchsfertiges Objekt:
  Rundkolben-Flasche.
Diese Form in einem Makro als ein
gebrauchsfertiges Objekt:
  Zwei verschmelzende Zylinder.
Angewandt in einem Makro für ein
gebrauchsfertiges Objekt:
  Fahrradkettenglied.
top
© Friedrich A. Lohmüller, 2009
www.f-lohmueller.de