POV-Ray Raytracer Beschreibungen von Friedrich A. Lohmüller |
![]() ![]() |
Darstellung mathematischer Funktionen
|
||
Mathematischen Funktionen mit POV-Ray als "Funktionsplotter"Objekte: "plane, cylinder, cone, sphere"
|
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
|
Mathematische Funktionen - 1:
Mathematische Funktionen - 2:
Mathematische Funktionen - 3:
Mathematische Funktionen - 4:
Mathematische Funktionen - 5:
Mathematische Funktionen - 6:
|
||||||
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 //------------------------------------- endAchtung: Schreiben Sie "X" (Großbuchstabe!) und nicht "x". ( Der Kleinbuchstabe "x" ist ein reserviertes Schlüsselwort als Abkürzung des Vektors "<1,0,0;>" !) POVRay version 3.1, 3.5: Schreiben Sie "X*X" for "x2", oder "(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
|
Koordinatensysteme | ![]() |
![]() |
![]() |
Übersicht Anleitungen |
![]() ![]() seit dem 08. Mai 1999. Danke für Ihren Besuch! |