POV-Ray : Newsgroups : povray.newusers : Merge vs. Union Server Time
6 Sep 2024 00:22:01 EDT (-0400)
  Merge vs. Union (Message 18 to 27 of 27)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: Ron Parker
Subject: Re: Merge vs. Union
Date: 20 Sep 1999 11:33:45
Message: <slrn7uckup.v8.parkerr@ron.gwmicro.com>
On 20 Sep 1999 11:15:00 -0400, Nieminen Juha wrote:
>Ron Parker <par### [at] fwicom> wrote:
>: By taking the dot product of each of the six bounding box coordinates 
>: with the ray direction.  If they're all further away, then the object
>: must be.
>
>  You forget that the bounding box is not necesarily around the object...
>nor it is a box... :)

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.


Post a reply to this message

From: Alan Kong
Subject: Re: Merge vs. Union
Date: 20 Sep 1999 22:39:25
Message: <8u7mN7YBUwm+FzRn=xEYg=hGmGWG@4ax.com>
On Sun, 19 Sep 1999 20:10:33 -0700, Ken <tyl### [at] pacbellnet> wrote:

>intersection = cutting

  Ken, I've always thought of intersection as an area of common overlap
among objects.

-- 
Alan ---------------------------------------------------------------
http://www.povray.org - Home of the Persistence of Vision Ray Tracer
news.povray.org - where POV-Ray enthusiasts around the world can get
together to exchange ideas, information, and experiences with others


Post a reply to this message

From: TonyB
Subject: Re: Merge vs. Union
Date: 20 Sep 1999 22:48:44
Message: <37e6f20c@news.povray.org>
Same here...


Post a reply to this message

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.