POV-Ray : Newsgroups : povray.advanced-users : The Harcore Povrayer Test : Re: The Harcore Povrayer Test Server Time
29 Jul 2024 20:26:30 EDT (-0400)
  Re: The Harcore Povrayer Test  
From: Mike Williams
Date: 14 Feb 2002 01:19:17
Message: <vOH88AA+T1a8Ewt6@econym.demon.co.uk>
Wasn't it Ron Parker who wrote:

>To answer your next question, merge isn't primitive either.  
>
>merge {object{A} object{B}} is the same as
>intersection{object{A inverse} object{B inverse} inverse}
>
>but it's not actually implemented that way, for historical reasons (there's
>nothing to be gained by rewriting it, so nobody ever did.)

Not only is there nothing to be gained by rewriting it, but it would end
up being much less efficient in most cases. The bounding box of a merge
using the current code tends to be a good fit, but the bounding box of
the inverse intersection inverse is usually infinite.

I claim that merge{object{A} object{B}} is more like being the same as

#declare U = union{object{A} object{B}}
intersection{object{A inverse} object{B inverse} inverse
   bounded_by{box{min_extent(U),max_extent(U)}}
}

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

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