|
 |
> "Marc-Hendrik Bremer"<Mar### [at] t-online de> wrote:
>> Slime schrieb in Nachricht<3c2ffc25@news.povray.org>...
>>> Hmm, what's the formula for a klein bottle?
>>
>> How about using the f_klein_bottle(x,y,z, P0) in functions.inc as an
>> isosurface?
>
> I've tried that one but it gives very strange results:
>
> #include "colors.inc"
> #include "functions.inc"
>
> light_source {<10,10,10> color White }
> camera { location<4,4,4> look_at<0,0,0> }
>
> isosurface {
> function { f_klein_bottle(x,y,z,1) }
> accuracy 0.01
> max_gradient 4
> pigment { color rgb<0, 2, 0> }
> }
>
> // pigment {image_map { jpeg "test.jpg" map_type 1 interpolate 2 filter all
> 1.0 } }
>
> box {<-5, -2, -5>,<5, -2, 5> pigment { color White } }
>
>
> The result is:
>
> http://vanheusden.com/pov/surface.png
>
> Doesn't look like the ones on wikipedia
> (http://en.wikipedia.org/wiki/Klein_bottle).
>
>
The default contained_by object is box{-1, 1} and it's to small for that
object.
You need this:
contained_by{box{<-2.88, -2.42, -3.66><2.88, 3.04, 3.66>}}
As small as possible.
The function have a prety high max_gradient: 180 to 2500 depending on
P0, the orientation and camera position.
As it is, the shape can be considered as "fat".
P0 is required but have no apparent effect: same result with values of
0.1, 1 and 10. It DOES affect the max_gradient: large value = high
max_gradient but don't affect rendering time.
Anyway, the bottle from the function don't look the same as the
representation you mention. It's, owever, topologicaly identical.
Alain
Post a reply to this message
|
 |