Home
- POV-Ray Tutorial
Schleifen mit POV-Ray
1. For + While
Vergleich
2. Lineare
Transformationen
3. Zirkuläre
Transformationen
4. Möbius etc.
5. Schrauben
& Spiralen
6. Verdrehte
Spiralen
>7. Schnecken
& Ammoniten
8. Sphärische Spiralen1
9. Sphärische Spiralen2
10. Fibonacci Spiralen
- Download
|
Schleifen für Schnecken und Ammoniten
Bei der Spiralenbewegung in den letzten Beispielen hatten die Kugeln immer dieselbe Größe.
Nun soll gezeigt werden wie man die Kugeln, den Windungsradius und die Ganghöhe einer
Schnecke kontinuierlich verkleinern kann:
|
//-------------------------------------
#declare Ball =
sphere{<0,0,0>,0.5
texture{
pigment{color rgb<1,.65,.0>}
finish{ phong 1}}}
#declare Radius0 = 3.0; //Grundradius
#declare NR = 9;//n. of revolutions
#declare NpR=100;//n. of elements p.r.
#declare Scale=0.75;//n.per revolution
#declare HpR=0.8;//difference in y p.r.
//-------------------------------------
#local Hd = HpR/NpR;
#local Scale_p = pow(Scale,1/360);
#local Scale_pE = pow(Scale_p,360/NpR);
#local Old_S = Scale_pE;
#local Old_H = Hd;
#declare Nr = 0; // start
#declare EndNr = NR*NpR; // end
#while (Nr< EndNr)
object{Ball
translate<Radius0,0,0>
scale Old_S
translate<0,Old_H,0>
rotate<0,Nr * 360/NpR ,0>}
#declare Nr = Nr + 1; // next Nr
#declare Old_S = Scale_pE*Old_S;
#declare Old_H = Old_H+Hd*Old_S;
#end // ------------ end of loop ------ |
|
|
Setzt man die Ganghöhe der Schnecke auf Null,
so erhält man die klassische Form von
"Ammonitus povrayensis":
'
//-------------------------------------
#declare Ball =
sphere{<0,0,0>,1.0
texture{... siehe oben! ...}}}
#declare Radius0 = 3.5;
#declare NR=9;//number of revolutions
#declare NpR=50;//n. of elements p.r.
#declare Scale=0.55; //per revolution
#declare HpR = 0.00;
//------------------------------------- |
|
|
Durch Skalieren der Grundform und
Texturieren mit Stein- oder Granit-Texturen
erhält man nahezu jede denkbare Form von
Schnecken- oder Ammonitenschalen:
Wie wäre es z.B. mit
"Turritella turris var. povensis"?
//-------------------------------------
#declare Ball =
sphere {<0,0,0>,0.70
scale <1,1.5,1>
texture{T_Stone3 scale 1.5
finish {phong 0.3}}}
#declare Radius0 = 1.5;
#declare NR=9.1;//Anzahl der Umdrehungen
#declare NpR=30;
//Anzahl der Elemente pro Umdrehung
#declare Scale =0.78; // pro Umdrehung
#declare HpR =1.6;
//------------------------------------- |
|
|
|