|
|
"Brent Baccala" <cos### [at] freesoftorg> wrote:
> Hello -
>
> I'm using POVRAY 3.6 and know very little about raytracing.
>
> I'm trying to generate a graphic to illustrate the Riemann surface of
> arctan.
>
> I've tried gnuplot and rejected it because I can't figure out to get the
> surface transparent in that program.
>
> Instead, I've taken a material definition from Tor Olav Kristensen's
> Villarceau Circles that looks pretty much how I'd like and built an
> isosurface using it. Kristensen's basic idea was to surround the image
> with a very large sphere (blue in his case, white in mine) and use
> radiosity to light it.
>
> The problem is that I've getting part of the surface washed out in white,
> and I don't know how to fix it (other than by moving the camera to an angle
> I don't want).
>
> Rather than attach everything, I'm posting the image and the source here:
>
> http://www.freesoft.org/bbaccala/arctan_surface.html
>
> Can anybody suggest either how to fix the POVRAY file, or perhaps some other
> solution entirely to this problem?
>
> Any advice would be greatly appreciated...
Hello!
Your problem comes from the max_gradient parameter of your isosurfaces. You
did not specify it, so POV-Ray uses the default which is 1.1. This is not
enough. If you have a look at the "Messages" tab of the editor, you will
see a warning for this purpose. Setting max_gradient to 3 seems to be OK.
union {
isosurface {
function { pow((z/10-(atan2(y,x)+pi/2)),2) - .01 }
max_gradient 3
contained_by { box { <0,-200,-100>, <200,200,100> } }
rotate <0, 0, 90>
}
isosurface {
function { pow((z/10-(atan2(y,x)-pi/2)),2) - .01 }
max_gradient 3
contained_by { box { <0,-200,-100>, <200,200,50> } }
rotate <0, 0, -90>
}
isosurface {
function { pow((z/10-(atan2(y,x)-pi*3/2)),2) - .01 }
max_gradient 3
contained_by { box { <0,-200,-100>, <200,200,100> } }
rotate <0, 0, 90>
}
Nota: you can also use the 'evaluate' feature os isosurfaces. See help file.
Regards.
Bruno
PS: Is radiosity necessary here?
Post a reply to this message
|
|