|
|
Bob Hughes <omn### [at] hotmailcom?subject=pov-news:> wrote:
: 'contained_by' has apparently
: been used to distinguish between the usual bounded_by usage so as not to confuse
: it when creating a isosurface. The reasoning beyond that is unclear to me
bounded_by and contained_by work in a very different manner. They have
nothing to do with each other.
bounded_by is used to speed up rendering. Ray intersection with an object
is tested only if the ray first hits its bounding object. The bounding object
doesn't define the shape of the object it's bounding (of course you can get
undesired 2D-screen-clipping of the object if the bounding object doesn't
surround it completely, but that's just a side-effect and not a wanted
feature; the object is still complete, povray just doesn't render it
correctly).
bounded_by is NOT comparable with any CSG operation.
contained_by is used exclusively in isosurfaces to determine the space where
the isosurface is calculated. It works more like intersection than bounded_by
since it actually affects the shape of the isosurface. Optionally it can be
made to work similarly to clipped_by.
It, however, has a very concrete task: It tells the program where to start
sampling and where to end. It's a similar idea as with media containers.
bounded_by doesn't have this kind of task.
clipped_by works like intersection, but it doesn't add any new surfaces to
the object. It actually changes the shape of the object and thus is a
completely different thing than bounded_by.
They should not be confused together since they are completely different
things.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
|