|
|
Well, I have been playing around with isosurface donuts, and found something
puzzling. The attached image (source code below) is of three isosurface
torii (donuts) that have, so far as I can tell, mathematically equivalent
functions. Can anyone see why these functions produce different results?
Please excuse the inconsistent notation in the code--> I am still messing
with it, and have not prettied it up.
A Puzzled (like that's news) Quadhall
tre### [at] ww-interlinknet
#version unofficial MegaPOV 0.5;
light_source { <+0.00,+5.00,+0.00> 1 shadowless}
camera { location <+0.00,+7.50,+0.00> look_at <+0.00,+0.00,+0.00> }
#declare major=+1.00;
#declare minor=+0.25;
#declare a = function{sqrt((x^2)+(z^2))-major}
#declare b = function{atan2(z,x)*6}
#declare c = function{cos(5*atan2(y,a)+b)}
#declare d = function{sqrt(y^2+a^2)-minor+(.5*minor)*c}
//one
isosurface
{
function {d}
contained_by{sphere {0,2}}
eval
method 1
max_gradient +1.00
threshold 0
pigment{color rgb 1}
translate<-2.5,0,2>
}
#declare a = function{abs(sqrt((x^2)+(z^2))-major)}
#declare b = function{atan2(z,x)*6}
#declare c = function{cos(5*atan2(y,a)+b)}
#declare d = function{sqrt(y^2+a^2)-minor+(.5*minor)*c}
//two
isosurface
{
function {d}
contained_by{sphere {0,2}}
eval
method 1
max_gradient +1.00
threshold 0
pigment{color rgb 1}
translate<-2.5,0,-2>
}
#declare pre_a = function{sqrt((x^2)+(z^2))-major}
#declare a = function{abs(pre_a)}
#declare b = function{atan2(z,x)*6}
#declare c = function{cos(5*atan2(y,a)+b)}
#declare d = function{sqrt(y^2+a^2)-minor+(.5*minor)*c}
//three
isosurface
{
function {d}
contained_by{sphere {0,2}}
eval
method 1
max_gradient +1.00
threshold 0
pigment{color rgb 1}
translate<2,0,0>
}
Post a reply to this message
Attachments:
Download 'plate_7.jpg' (25 KB)
Preview of image 'plate_7.jpg'
|
|