POV-Ray : Newsgroups : povray.newusers : While loop challenged : While loop challenged Server Time
15 May 2024 18:20:11 EDT (-0400)
  While loop challenged  
From: Bald Eagle
Date: 27 Mar 2014 19:27:36
Message: <5334b3e8$1@news.povray.org>
I'm just trying to do a simple "display 1000 spheres with every RGB 
value in 0.1-unit increments" loop
Looks like it works ok except for some reason my last block of 100 
spheres partially overlaps the 9th one.

I REALLY ought to be better at this....

##################################################


#declare Radius = 3;
#declare Sphere = sphere {<0, 0, 0> Radius}
//#declare Box = Round_Box_Union (<-0.5, -0.5, -0.5>, <0.5, 0.5, 0.5>, 
Radius)

	#declare B = -300;
	#declare Flag = 0;
#declare Blue_ = 0;
	#while (Blue_ <= 1)
	#if (Blue_ < 0.3)
		#declare Y = 250;
	#end
	
	#if (Blue_ > 0.3 & Blue_ < 0.6)
		#if (Flag = 0)
		#declare B = -300;
		#declare Flag = Flag + 1;
		#end
		#declare Y = 150;
	#end // end if
	
	#if (Blue_ > 0.6)
		#if (Flag = 1)
		#declare B = -300;
		#declare Flag = Flag + 1;
		#end
		#declare Y = 50;
	#end
	
#declare Red_ = 0;
	#while (Red_ <= 1)
	
	#declare Green_ = 0;
	#declare X = 0;
		#while (Green_ <= 1)
		object {Sphere texture { pigment {rgb <Red_, Green_, Blue_>} finish 
{phong 0.5} } translate <X+B, Y, 0>}
		#declare Green_ = Green_ + 0.1;
		#declare X = X + 8;
		#end // end Green loop
	
	#declare Red_ = Red_ + 0.1;
	#declare Y = Y - 8;
	#end // end Red loop

#declare Blue_ = Blue_ + 0.1;
#declare B = B + 110;
#end


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.