POV-Ray : Newsgroups : povray.binaries.images : Different Results Between Versions : Re: Different Results Between Versions Server Time
5 Nov 2024 07:17:59 EST (-0500)
  Re: Different Results Between Versions  
From: Dave Blandston
Date: 10 Aug 2009 09:10:01
Message: <web.4a801c242bb66eecdf22a6900@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> After having boiled down the scene to about 60 lines, I found that the
> only fault of POV-Ray 3.6.2 and 3.7 (but probably also of POV-Ray 3.6.1)
> is that they don't warn you about pathological cylinders (and similarly
> pathological tori) you're building in the BeveledCylinder macro; try the
> following change:
>
>
> #macro BeveledCylinder (Top, Bottom, Radius, EdgeRadius)
>
>     union {
>        cylinder {<Top.x, Top.y, Top.z + EdgeRadius>, Bottom, Radius}
> ->    #if (Radius > EdgeRadius)
>           cylinder {Top, Bottom, Radius - EdgeRadius}
>           torus {
>              Radius - EdgeRadius, EdgeRadius
>              rotate 90 * x
>              translate <Top.x, Top.y, Top.z + EdgeRadius>
>              sturm
>           } //torus
> ->    #else
> ->       sphere {<Top.x, Top.y, Top.z + EdgeRadius>, EdgeRadius}
> ->    #end
>     } //union
>
> #end //#macro BeveledCylinder
>
>
> POV-Ray 3.6.2 and 3.7 do indeed behave strange in such a case
> (apparently creating an object which, when intersected with another one,
> gets *bigger*), but what do you expect when working with infinitely thin
> cylinders ;-)

Yes, that was the problem - thanks! That's a very interesting situation.

Regards,
Dave Blandston


Post a reply to this message

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