PDA

View Full Version : pb POV_Ray


vincent
04-09-2002, 16:05
bonne rentrée :D
voilà mon truc : <font size="1"><i> #declare aa = 0.1
#declare vect1 = -1.5
#declare vect2 = 2
#declare rayon1 = 1.2
#declare rayon2 = .85
#declare tour = union { union { difference {union {union {sphere { <0, vect2, 0>, rayon2+.03 }
cone {
<0, vect1, 0>
rayon1
<0, vect2, 0>
rayon2
}


box { <1, vect2-.4+.2, .5>, <0, vect2+.4+.2, -.5> translate x*-.75 rotate z*-18} rotate y*95}
#declare distanc = 0.01
#declare larg = 0.3 //.3
#declare long = 0.1
#declare h = 0.025
#declare I=0;
union {#while (I < cc)
#declare h2 = h*I;
box {<0-larg/2,-1.5+h2>,<0+larg/2,-1.5+h+h2,1.2+distanc>

rotate y*I*6 //6
texture {text0}}

#declare I=I+1;
#end rotate y*50}


texture {text1} }
box { <1+aa, 1.8+aa*3, .5+10000>, <0-aa, 2.6-aa, -.5-aa*200> translate x*-.75 rotate z*-18 rotate y*95 texture {text1}} } }
box { <1, 1.8+aa*3, .5>, <1-aa/2, 2.6-aa, -.5> translate x*-.75 rotate z*-18 rotate y*95 pigment {color LightBlue filter .9}}
box { <1, 1.8+aa*3, .5>, <0-aa, 2.6-aa, .5-aa/2> translate x*-.75 rotate z*-18 rotate y*95 pigment {color LightBlue filter .9}}
box { <1, 1.8+aa*3, -.5>, <0-aa, 2.6-aa, -.5+aa> translate x*-.75 rotate z*-18 rotate y*95 pigment {color LightBlue filter .9}}

} </i></font>
çà fait un cone tronqué avec un escalier en colimaçon qui tourne autour (fait avec la boucle). Le problème c'est que le rayon du cone diminue avec la hauteur (logique ;)), mais pas la longeur des escalier, ce qui fait qu'il paraissent de plus en plus longs plus on monte vers le haut du cone (comme dans le fichier attaché). Je cherche donc un truc pour que la longueur des marches diminue avec la hauteur, pour que le 'avan' se transforme en 'après'

Pierrick
07-09-2002, 17:10
t'as deux solutions.

Tu calcules (ça doit pouvoir se faire avec des notions de base, pythagore...).

Tu utilises la fonction trace (sous POV-Ray 3.5)

Je peux pas t'aider plus car ton source n'est pas complet et donc je peux pas tester. Sorry.