POV-Ray : Newsgroups : povray.binaries.scene-files : soft prisms : Re: soft prisms Server Time
3 Sep 2024 00:19:13 EDT (-0400)
  Re: soft prisms  
From: Remco de Korte
Date: 9 Aug 1999 12:23:54
Message: <37AF00C6.C1E2F046@xs4all.nl>
Ron Parker wrote:
> 
> On Mon, 09 Aug 1999 00:45:58 +0200, Remco de Korte wrote:
> >There is something weird though. The test-scene included renders fine, but I
> >tested it with an orthographic camera and there are thin white lines on some
> >objects which shouldn't be there. With a normal camera you can also see some,
> >depending on the location of the camera. I have no idea what's causing this. It
> >may well be a bug in the macro but I can't find it. Anyone any ideas?
> 
> This is a bug in POV.  I first reported it back in version 3.0, but I
> have had no luck actually finding the problem.  It's similar to the bug
> that Truetype fonts used to have, which Kochin Chang fixed.  I sent him
> my code that duplicates the problem you see here and he never found a
> solution either, to my knowledge.  What's happening is that POV is
> counting crossings (the Jordan Curve Theorem) to see whether the ray/
> object intersection point is inside or outside the object, but it's
> accidentally counting a crossing twice due to numerical inaccuracies
> or segment overlap or both, and thus thinking it's inside the object
> when it shouldn't be.

Is it a bug in the prism-object or somewhere else?

I found another bug in my inc-file I can't solve.
Try rendering this:

#include "softpris.inc"

camera{location <0,0,-12> look_at <0,0,0> orthographic}              

light_source{<-100,20,-100> color rgb 1}
light_source{<100,20,-100> color rgb .7 shadowless}
light_source{<-100,-20,-100> color rgb .4 shadowless}
light_source{<100,-20,-100> color rgb .1 shadowless}


#declare pp=array[3]
{ < 0,-2>,
  <-3, 3>,
  < 3, 3>}

object{soft_prism(-2,2,3,pp,.25)
  pigment{rgb 1}   
  rotate y*225
  rotate x*-45 
  translate<-3,0,0>
}
  
#declare pp=array[3]
{ < 0, 2>,
  <-3,-3>,
  < 3,-3>}

object{soft_prism(-2,2,3,pp,.25)
  pigment{rgb 1}   
  rotate y*45
  rotate x*-45 
  translate<5,0,0>
}
//eof  

Both objects should look the same, but they don't. I can't find what I'm doing
wrong and where I'm doing it. If anyone has any ideas please let me know. 
Meanwhile if a soft prism looks screwy the only solution is to create a another
soft prism and rotate that to get the prism you want. Not really very elegant...

Regards,

Remco
http://www.xs4all.nl/~remcodek/


Post a reply to this message

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