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