POV-Ray : Newsgroups : povray.newusers : Merge vs. Union Server Time
6 Sep 2024 02:22:07 EDT (-0400)
  Merge vs. Union (Message 21 to 27 of 27)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: Nieminen Juha
Subject: Re: Merge vs. Union
Date: 21 Sep 1999 09:22:29
Message: <37e78695@news.povray.org>
Ron Parker <par### [at] fwicom> wrote:
: You forget that if it's not around the object, it shouldn't matter to the
: ray-intersection routine (obviously in practice it works in such a way that
: vampire objects are possible, but that's a side-effect that could easily 
: disappear with better optimization.)  And rest assured that finite objects 
: have bounding boxes whether or not such boxes are specified in the script; 
: that's how the min_extent and max_extent keywords in the superpatch work.

  How does it calculate the bounding box of an object like this?

intersection
{ sphere { x*1000, 1001 }
  sphere { -x*1000, 1001 }
}

-- 
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

From: Ron Parker
Subject: Re: Merge vs. Union
Date: 21 Sep 1999 11:17:11
Message: <slrn7uf8bn.v8.parkerr@ron.gwmicro.com>
On 21 Sep 1999 09:22:29 -0400, Nieminen Juha wrote:
>Ron Parker <par### [at] fwicom> wrote:
>: You forget that if it's not around the object, it shouldn't matter to the
>: ray-intersection routine (obviously in practice it works in such a way that
>: vampire objects are possible, but that's a side-effect that could easily 
>: disappear with better optimization.)  And rest assured that finite objects 
>: have bounding boxes whether or not such boxes are specified in the script; 
>: that's how the min_extent and max_extent keywords in the superpatch work.
>
>  How does it calculate the bounding box of an object like this?
>
>intersection
>{ sphere { x*1000, 1001 }
>  sphere { -x*1000, 1001 }
>}

It calculates the intersection of the bounding boxes of the individual
spheres, so it would bound by box{<-1,-1001,-1001>,<1,1001,1001>}.  I 
didn't say it was always correct; in fact, I've mentioned before that 
min_extent and max_extent aren't always entirely accurate for every 
object.  If you specify your own bounding volume, of course, it uses
that one if it's smaller than the computed one.


Post a reply to this message

From: Nieminen Juha
Subject: Re: Merge vs. Union
Date: 22 Sep 1999 06:19:40
Message: <37e8ad3c@news.povray.org>
Ron Parker <par### [at] fwicom> wrote:
: It calculates the intersection of the bounding boxes of the individual
: spheres, so it would bound by box{<-1,-1001,-1001>,<1,1001,1001>}.  I 
: didn't say it was always correct; in fact, I've mentioned before that 
: min_extent and max_extent aren't always entirely accurate for every 
: object.  If you specify your own bounding volume, of course, it uses
: that one if it's smaller than the computed one.

  Thanks for the information. Every day I learn something new about povray :)

  Another question:
  What does "smaller" mean? I mean that how does it define "this box is
smaller than that one"?

-- 
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

From: Ron Parker
Subject: Re: Merge vs. Union
Date: 22 Sep 1999 09:24:53
Message: <37e8d8a5@news.povray.org>
On 22 Sep 1999 06:19:40 -0400, Nieminen Juha wrote:
>  What does "smaller" mean? I mean that how does it define "this box is
>smaller than that one"?

It bases it on volume.  The box with the smaller volume is smaller,
regardless of its actual dimensions.


Post a reply to this message

From: Nieminen Juha
Subject: Re: Merge vs. Union
Date: 23 Sep 1999 06:30:16
Message: <37ea0138@news.povray.org>
Ron Parker <par### [at] fwicom> wrote:
:>  What does "smaller" mean? I mean that how does it define "this box is
:>smaller than that one"?

: It bases it on volume.  The box with the smaller volume is smaller,
: regardless of its actual dimensions.

  What happens when the user-defined bounding object is not a box?

-- 
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

From: Ron Parker
Subject: Re: Merge vs. Union
Date: 23 Sep 1999 10:23:10
Message: <37ea37ce@news.povray.org>
On 23 Sep 1999 06:30:16 -0400, Nieminen Juha wrote:
>Ron Parker <par### [at] fwicom> wrote:
>:>  What does "smaller" mean? I mean that how does it define "this box is
>:>smaller than that one"?
>
>: It bases it on volume.  The box with the smaller volume is smaller,
>: regardless of its actual dimensions.
>
>  What happens when the user-defined bounding object is not a box?

Presumably the bounding box of the bounding object is used.


Post a reply to this message

From: Peter Popov
Subject: Re: Merge vs. Union
Date: 23 Sep 1999 15:44:15
Message: <K1PqNyFq49VYBBoAXV28JcBNRDpH@4ax.com>
On 23 Sep 1999 06:30:16 -0400, Nieminen Juha <war### [at] cctutfi> wrote:

>  What happens when the user-defined bounding object is not a box?

If it is an infinite object, it is ignored and the default bounding
box is used instead. If it is finite, its bounding box is used for
vista and light buffer calculations (and the max() and min() in the
SUperPatch) and forray-shape intersection test the nested bounding
objects hierarchy is used (i.e. bounding box of bounding object is
checked first, then the bounding object and lastly the bounded object
itself)


Peter Popov
ICQ: 15002700


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

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