POV-Ray : Newsgroups : povray.newusers : How do you make a scene? : Re: How do you make a scene? Server Time
5 Sep 2024 08:21:27 EDT (-0400)
  Re: How do you make a scene?  
From: Ron Parker
Date: 31 Jan 2002 22:28:40
Message: <slrna5k2r9.n3.ron.parker@fwi.com>
On Thu, 31 Jan 2002 18:04:34 -0800, Ken wrote:
> 
> 
> Warp wrote:
>> 
>> Ron Parker <ron### [at] povrayorg> wrote:
>> : Whyever not?  (See below)
>> 
>>   Not everyone is such a harcore povrayer as you are. ;)
> 
> Sure, math/programming freaks-of-nature like you and Ron can do it, but
> there is more to being a hardcore POV-Ray user than that.

The thing is, bicubic patches have gotten a bad rap.  Once you've played
with a few, you can easily visualize what a given set of control points 
will produce.  Granted, it's not always easy to keep track of sixteen 
control points in your head, but there are usually constraints in a given
scene that mean you don't have to keep track of that many points anyway.
For example, the RP in the signature I sometimes use (not this one, though)
is constrained to have each row of control points perpendicular to a 
stroke all be coplanar, and in a fixed relationship with each other.  The
two "outer" control points in a row are moveable, but the two "inner" control
points are constrained to be the same as the adjacent outer point but with a
different Z coordinate (this makes a roughly semi-elliptical cross-section.)  
That means I only have to keep track of 8 points for each patch, and those 8 
points are somewhat independent: I really only keep track of the control 
points for two independent bezier curves for each of three patches, and 
anybody can do that.  All that remains is to lay out the curves I want on 
a piece of graph paper and transfer the coordinates into POV.

--
#macro R(L P)sphere{L __}cylinder{L P __}#end#macro P(_1)union{R(z+_ z)R(-z _-z)
R(_-z*3_+z)torus{1__ clipped_by{plane{_ 0}}}translate z+_1}#end#macro S(_)9-(_1-
_)*(_1-_)#end#macro Z(_1 _ __)union{P(_)P(-_)R(y-z-1_)translate.1*_1-y*8pigment{
rgb<S(7)S(5)S(3)>}}#if(_1)Z(_1-__,_,__)#end#end Z(10x*-2,.2)camera{rotate x*90}


Post a reply to this message

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