Home
- POV-Ray Tutorial
Koordinatensysteme
und 2D-Funktionen
- Karopapier
- Koordinatensysteme
mit Achsen
- Makro für Raster
mit 2 Niveaus
> 2D-Funktionen
Beispiele
- Mathematische Funktionen
in POV-Ray
|
Darstellung mathematischer Funktionen in einem 2D Koordinatensystem.
|
Mathematischen Funktionen mit POV-Ray als "Funktionsplotter"
Objekte: "plane, cylinder, cone, sphere"
Methoden: "color_map, layered textures, #macro, #while"
|
|
Zur Darstellung von mathematischen Funktionen nehmen wir eine
gerasterte Fläche mit 2D-Koordinatenachsen als Hintergrund.
Um ein quadratisches Blickfeld zu erhalten müssen wir eine
Auflösung, wie etwa folgende
[600x600, No AA, mosaic]
width="600"
height="60" 0
Antialias=Off
+SP16
+B1024
in der Datei "quickres.ini" von POV-Ray einstellen.
(Hierzu öffnet man "tools", "Edit resolution INI file"
und fügt den obigen Textabschnitt an geeigneter Stelle in die vorhandenen
Einstellungen ein. Nach einem Neustart von POV-Ray 3.6 steht auch die so
definierte Bildauflösung zur Auswahl.)
Alternativ kann man auch einfach die Zeile +h600 +w600
in der Kommandozeile (weißes Feld neben der Auflösungseinstellung!)
des POV-Ray Editors einfügen.
Um eine Funktion wie etwa "f(x) = 0.5*x + 3" zu zeichnen, benutzen wir
kleine Kugeln, welche mit einer While-Schleife dicht aneinandergefügt werden:
union{
#declare X = -5.5; // start X
#declare EndX = 5.5; // end X
#while ( X < EndX )
sphere{ <0,0,0>,0.025
pigment{ color rgb<1,0.65,0> }
translate< X,0.5*X+3, 0>}
#declare X = X + 0.002; // next Nr
#end // --------------- end of loop
} // end of union
//------------------------------------- end |
Achtung:
Schreiben Sie "X" (Großbuchstabe!) und nicht "x".
ebenso "Y" statt "y" und "Z" statt "z"
Viele Kleinbuchstaben sind reservierte Schlüsselworte in POV-Ray:
x = <1,0,0;>, y = <0,1,0;>, z = <0,0,1;> !!!!
Schreiben Sie "X*X" für "x2",
bzw. "(X-2)*(X-2)*(X-2)" für "(x-2)3".
Wenn wir eine Funktion zeichnen wollen, welche einen Term enthält,
in dem ein "division by zero"-Fehler
auftauchen kann, können wir die Schleife vor diesem Fehler
durch einen #if-Befehl schützen. Die ist nicht unbedingt nötig, da
POV-Ray selbst in der Lage ist einen Nenner des Werts Null zu erkennen.
Beispiel:
union{
#declare X = -5.5; // start X
#declare EndX = 5.5; // end X
#while ( X < EndX )
#if ( (X - 2 != 0) )
sphere{ <0,0,0>,0.025
pigment{ color rgb<1,0.65,0> }
translate< X, 1/4*3/(X-2)-3, 0>}
#end
#declare X = X + 0.001; // next Nr
#end // --------------- end of loop
} // end of union
//--------------------------------------- end |
|
Beispiele mathematischer Funktionen
Download der Scenenbeschreibungen für POV-Ray hier:
Beispiel 1: povfun1.pov,
Beispiel 2: povfun2.pov,
Beispiel 3: povfun3.pov,
Beispiel 4: povfun4.pov,
Beispiel 5: povfun5.pov,
Beispiel 6: povfun6.pov.
Weitere Beispiele finden Sie
in der Sektion "Math Functions"
in meinem "Insert Menu Add-on".
|
Mathematische Funktionen
Beispiele
Download der Szenenbeschreibungen für POV-Ray:
povfun1.txt.
Download der Szenenbeschreibungen für POV-Ray:
povfun2.txt.
Download der Szenenbeschreibungen für POV-Ray:
povfun3.txt.
Download der Szenenbeschreibungen für POV-Ray:
povfun4.txt.
Download der Szenenbeschreibungen für POV-Ray:
povfun5.txt.
Download der Szenenbeschreibungen für POV-Ray:
povfun6.txt.
|
|