|
|
On Thu, 2 Sep 1999 17:06:21 +0200, Gail Shaw wrote:
>Can anyone tell me how the built in isosurface function helix1
>works. I tried
>
>isosurface {
> function { "helix1" <2,1,0.2,1,0,1,0> }
> threshold 1
> sign 1
> pigment {Red}
>}
>
>but just got a cylinder.
>
>Any help will be appreciated.
Try this:
isosurface {
function { "helix1" <2,1,0.2,1,1,1,0> }
threshold 0
max_gradient 20 method 2
bounded_by {box {-10,10}}
sign 1
pigment {red 1} finish {ambient .4}
}
Most of the internal functions are designed to work with a threshold of
zero. By default, they're bounded by a small box, so you need to add a
bounding volume if you want to see anything interesting. I also added
the max_gradient 20 method 2 to eliminate some gaps in the result.
Finally, the docs for parameter 4 ("shape parameter") are useless, but
a little playing shows that it is the ratio of height to width for the
ellipses the "strands" are made out of. Zero is a bad number, and will
in fact crash on some architectures. Replacing it with a one gives
you a circular cross-section, which is what I assume you wanted. I'll
try to remember to fix this in the next version of the docs.
Post a reply to this message
|
|