|
![](/i/fill.gif) |
"Katherina" <nomail@nomail> wrote in message
news:web.46b9a4232d937f37d7b596fc0@news.povray.org...
> "Katherina" <nomail@nomail> wrote:
>> Now I changed my code and put 2 successive #while loops here is my new
>> code,
>> but still it gives same error message, I really do not understand why?
>>
>> #declare i=0;
>> #declare j=0;
>>
>>
>> #while (i<31)
>>
>>
>> #while (j<20)
>>
>>
>> intersection{
>>
>> plane
>> {<p[i][0],p[i][1],p[i][2]>,p[i][0]*q[i][0]+p[i][1]*q[i][1]+p[i][2]*q[i][2]
>> }
>>
>>
>> quadric
>> {
>>
>>
<qq[j][2],qq[j][4],qq[j][6]>,<qq[j][7],qq[j][8],qq[j][9]>,<qq[j][1],qq[j][3],qq[j][5]>,qq[j][0]
>>
>> }
>>
>> }
>>
>>
>> #declare i=i+1;
>> #declare j=j+1;
>>
>> #end
>>
>> #end
>
> I saw a mistake of mine, the rows of arrays p,q are from 0 to 29, and for
> qq
> 0 to 18, so I changed thses numbers in #while loops as 30 for planes and
> 19
> for quadratics, but still I couldn't see any image after even 5 minutes,
> is
> this normal in Povray?
>
> It is written
>
> Parsed ..... tokens
>
>
> and number of tokens is changing and very big numbers,
>
> what does this mean?
>
> why I can not see the image?
>
> what can I do to see my image?
>
You've got two nested loops, so you're in danger of intersecting all 18
quadrics 30 times, at the moment though you'll be looping forever because
the 'i' increment is in the inner loop, so once 'j' reaches 18, the inner
loop ends and 'i' stays at 18 for the rest of eternity, never reaching the
required value of 30 to break out of the outer loop.
I think what you're aiming at is probably just to intersect everything once,
so you want something more like the following code.
I haven't tested this, so it might contain typos.
Regards,
Chris B.
intersection {
#declare i=0;
#while (i<30)
plane
{<p[i][0],p[i][1],p[i][2]>,p[i][0]*q[i][0]+p[i][1]*q[i][1]+p[i][2]*q[i][2]}
#declare i=i+1;
#end
#declare j=0;
#while (j<19)
quadric
{<qq[j][2],qq[j][4],qq[j][6]>,<qq[j][7],qq[j][8],qq[j][9]>,<qq[j][1],qq[j][3],qq[j][5]>,qq[j][0]}
#declare j=j+1;
#end
}
Post a reply to this message
|
![](/i/fill.gif) |