 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Is there any way to have PovRay tell *me* what the bounding extents for
a particular CSG might be? I have some object that someone designed for
me using Moray, and I want to know how big it is.
Thanks,
David
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Fri, 05 Jan 2001 10:20:50 -0800, David Beccue wrote:
>
>Is there any way to have PovRay tell *me* what the bounding extents for
>a particular CSG might be? I have some object that someone designed for
>me using Moray, and I want to know how big it is.
MegaPOV's min_extent and max_extent might work, but you'll get some slop if
there are intersections or differences involved in the CSG.
--
Ron Parker http://www2.fwi.com/~parkerr/traces.html
My opinions. Mine. Not anyone else's.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Ron Parker <ron### [at] povray org> wrote:
: MegaPOV's min_extent and max_extent might work, but you'll get some slop if
: there are intersections or differences involved in the CSG.
To be more precise, min_extent and max_extent return the coordinates of
the bounding box of the object, not the extents of the object.
POV-Ray calculates automatically bounding boxes for most objects (with a
few exceptions). Mostly the bounding box corresponds to the extends of the
object itself, but sometimes it doesn't (mainly because it would be too
difficult to automatically calculate the exact extents of an object).
So there's no way you can automatically get the optimal extents of an object.
The only solution is just to fine-tune by hand (eg. using a semi-transparent
box in the place of your bounding box to see what does it cover).
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> So there's no way you can automatically get the optimal extents of an object.
> The only solution is just to fine-tune by hand (eg. using a semi-transparent
> box in the place of your bounding box to see what does it cover).
You could also 'scan' the object with the 'trace' function, in order
to get a closer result.
Fabien.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Fabien Mosen <fab### [at] skynet be> wrote:
: You could also 'scan' the object with the 'trace' function, in order
: to get a closer result.
You get the risk of setting a bounding box that is a bit too small.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Fabien Mosen <fab### [at] skynet be> wrote:
> : You could also 'scan' the object with the 'trace' function, in order
> : to get a closer result.
>
> You get the risk of setting a bounding box that is a bit too small.
Simply use the last value that didn't intersect, rather than the first that
did. If you wanted to be really precise, you could make a bisection macro
too.
--
David Fontaine <dav### [at] faricy net> ICQ 55354965
My raytracing gallery: http://davidf.faricy.net/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
In article <3A579D69.CE37BC7B@faricy.net>, David Fontaine
<dav### [at] faricy net> wrote:
> Simply use the last value that didn't intersect, rather than the
> first that did. If you wanted to be really precise, you could make a
> bisection macro too.
There is still the risk of some small part protruding out into the space
between traces...but this method works for relatively "smooth" objects
without small scale points. For example, it wouldn't work well on a
piece of pine tree branch, or a sea urchin, but a computer monitor
should work fine.
--
Christopher James Huff
Personal: chr### [at] mac com, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tag povray org, http://tag.povray.org/
<><
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Chris Huff wrote:
> > Simply use the last value that didn't intersect, rather than the
> > first that did. If you wanted to be really precise, you could make a
> > bisection macro too.
>
> There is still the risk of some small part protruding out into the space
> between traces...but this method works for relatively "smooth" objects
> without small scale points. For example, it wouldn't work well on a
> piece of pine tree branch, or a sea urchin, but a computer monitor
> should work fine.
There's just no satisfying you, is there? ;)
--
David Fontaine <dav### [at] faricy net> ICQ 55354965
My raytracing gallery: http://davidf.faricy.net/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
David Fontaine <dav### [at] faricy net> wrote:
: There's just no satisfying you, is there? ;)
Perfectionism is the key to mastering POV-Ray.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
>
> David Fontaine <dav### [at] faricy net> wrote:
> : There's just no satisfying you, is there? ;)
>
> Perfectionism is the key to mastering POV-Ray.
Being able to forget a little bit of perfectionnism is the key to
finishing IRTC entries before deadline ;-)
Fabien.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |