POV-Ray : Newsgroups : povray.binaries.images : Example of Isosurfaces (sharp peaks) Server Time
19 Nov 2024 18:24:39 EST (-0500)
  Example of Isosurfaces (sharp peaks) (Message 1 to 7 of 7)  
From: R  Suzuki
Subject: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 04:42:50
Message: <3be65f1a@news.povray.org>
Here is an example of isosurfaces.  The POV code is below.
The rendering time is about 6 min for [640x480 No AA] on my PC (Celeron
600MHz).
R. Suzuki

#version 3.5;
#include "colors.inc"
#include "functions.inc"
#include "metals.inc"
#include "stones.inc"

camera {location  <0.0, 2.8, -4.0>  direction 1.8*z
        right     x*image_width/image_height
        look_at   <0.0, 0.2,  0.0>}

sky_sphere { pigment { gradient y
    color_map { [0.0 rgb <0.6,0.7,1.0>] [0.7 rgb <0.0,0.1,0.8>]}
}}
light_source { <0, 0, 0> color rgb 1.8 translate <-30, 30, -30>}

object{isosurface {
 function  {
          f_r((mod(x*80+160+sin(y*pi*3+f_noise3d(x*10,y*2,z*10)*pi*0.5
             +f_noise3d(x*39,y*3,z*41)*pi*y*0.3)*3,1)-0.5)*0.0125,0,
            (mod(z*80+160+sin(y*pi*3+f_noise3d(x*7.3,y*3,z*8.65)*pi)*3,1)
             -0.5)*0.0125)+y*y*0.04  | y-0.02   }
            contained_by { box { <-2,0.0,-2> <2,0.34,2> } }
            threshold 0.005
            accuracy 0.0005
            max_gradient 2
            rotate y*-2
            scale 2
            texture { pigment{gradient y
                  color_map { [0.0 rgb 0] [0.80 rgb 0.7] }
                }
                finish{ambient 0.25 diffuse 0.5 specular 0.4}
            }
}}

sphere{<0,0.55,-0.5>,0.4 texture {T_Stone19 scale 0.4} }

#declare pi_half=pi/2;
#declare pi_2=pi*2;
isosurface {
     function { f_mesh1(atan2(x,z)/pi_half,f_torus(x,y,z,0.75,0.15),
       atan2(y, f_r(x,0,z)-0.75)/pi_2,1/70,1/70, 1, 0.0025, 1) }
        contained_by { box { <-1,-0.4,-1>, <1,0.6,1> } }
        threshold 0.002
        accuracy 0.0002
        max_gradient 1.2
        texture {T_Copper_3A}
        scale 1.4  translate <0,0.7,-0.5>
}


Post a reply to this message


Attachments:
Download '011031b.jpg' (70 KB)

Preview of image '011031b.jpg'
011031b.jpg


 

From: Tony[B]
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 09:45:45
Message: <3be6a619@news.povray.org>
Drool... I like... Hey, do you think we could come up with a more realistic
grass with that grey isosurface you made there?


Post a reply to this message

From: Andrew
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 10:08:28
Message: <3be6ab6c$1@news.povray.org>
Tony[B] <ben### [at] catholicorg> wrote in message
news:3be6a619@news.povray.org...
> Drool... I like... Hey, do you think we could come up with a more
realistic
> grass with that grey isosurface you made there?
>
>

Looks like it might be useful as fur, too.


Post a reply to this message

From: Elias Pschernig
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 17:22:34
Message: <3be7112a$1@news.povray.org>
This is cool, especially because it renders so fast. When I read that
Christoph Hormann's isosurface landscape took 3 days and 21 hours.. I almost
stopped trying to use isosurfaces for big objects. But your scene even seems
to render at a reasonable speed when adding radiosity :)

I have one question though.. did you really render this without AA? When I
copy/pasted your code into povray, I got a very grainy result without AA, and
even with AA 0.3 turned on, it by far doesn't look as smooth as the one you
posted.

-- 
#macro C(X,Y)cylinder{X*x<X,0,-Y/2>.1}#end#macro U(R,X,Y)intersection{torus{.9
.1}box{-1 0rotate y*R*90}translate<X,0,Y>scale 1-z*.5}#end union{U(0,0,0)U(1,0
,0)U(2,-1,-1)U(1,1,0)U(1,1.5,-3)U(1,2,0)U(3,1,0)U(2,2,0)U(0,3,0)U(3,2,.5)C(.1,
2)C(.8,1)C(.8,-1)C(1.1,1)C(1.9,-1)pigment{rgb 10}rotate x*90translate<-1,0,4>}


Post a reply to this message

From: Elias Pschernig
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 17:53:08
Message: <3be71854@news.povray.org>
> and even with AA 0.3 turned on, it by far doesn't look as smooth as the one
> you posted.

Oops, I just looked at the wrong pic. I tried different output formats at first, and
looked at the non-AA .bmp again, but had the one with AA set to
.png. With AA it looks just like yours :)

Thanks again for sharing this.

-- 
#macro C(X,Y)cylinder{X*x<X,0,-Y/2>.1}#end#macro U(R,X,Y)intersection{torus{.9
.1}box{-1 0rotate y*R*90}translate<X,0,Y>scale 1-z*.5}#end union{U(0,0,0)U(1,0
,0)U(2,-1,-1)U(1,1,0)U(1,1.5,-3)U(1,2,0)U(3,1,0)U(2,2,0)U(0,3,0)U(3,2,.5)C(.1,
2)C(.8,1)C(.8,-1)C(1.1,1)C(1.9,-1)pigment{rgb 10}rotate x*90translate<-1,0,4>}


Post a reply to this message

From: 25ct
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 5 Nov 2001 18:34:54
Message: <3be7221e$1@news.povray.org>
"R. Suzuki" <r-s### [at] aistgojp> wrote in message
news:3be65f1a@news.povray.org...
> Here is an example of isosurfaces.  The POV code is below.
> The rendering time is about 6 min for [640x480 No AA] on my PC (Celeron
> 600MHz).
> R. Suzuki
>
> #version 3.5;
> #include "colors.inc"
> #include "functions.inc"
> #include "metals.inc"
> #include "stones.inc"
>
> camera {location  <0.0, 2.8, -4.0>  direction 1.8*z
>         right     x*image_width/image_height
>         look_at   <0.0, 0.2,  0.0>}
>
> sky_sphere { pigment { gradient y
>     color_map { [0.0 rgb <0.6,0.7,1.0>] [0.7 rgb <0.0,0.1,0.8>]}
> }}
> light_source { <0, 0, 0> color rgb 1.8 translate <-30, 30, -30>}
>
> object{isosurface {
>  function  {
>           f_r((mod(x*80+160+sin(y*pi*3+f_noise3d(x*10,y*2,z*10)*pi*0.5
>              +f_noise3d(x*39,y*3,z*41)*pi*y*0.3)*3,1)-0.5)*0.0125,0,
>             (mod(z*80+160+sin(y*pi*3+f_noise3d(x*7.3,y*3,z*8.65)*pi)*3,1)
>              -0.5)*0.0125)+y*y*0.04  | y-0.02   }
>             contained_by { box { <-2,0.0,-2> <2,0.34,2> } }
>             threshold 0.005
>             accuracy 0.0005
>             max_gradient 2
>             rotate y*-2
>             scale 2
>             texture { pigment{gradient y
>                   color_map { [0.0 rgb 0] [0.80 rgb 0.7] }
>                 }
>                 finish{ambient 0.25 diffuse 0.5 specular 0.4}
>             }
> }}
>
> sphere{<0,0.55,-0.5>,0.4 texture {T_Stone19 scale 0.4} }
>
> #declare pi_half=pi/2;
> #declare pi_2=pi*2;
> isosurface {
>      function { f_mesh1(atan2(x,z)/pi_half,f_torus(x,y,z,0.75,0.15),
>        atan2(y, f_r(x,0,z)-0.75)/pi_2,1/70,1/70, 1, 0.0025, 1) }
>         contained_by { box { <-1,-0.4,-1>, <1,0.6,1> } }
>         threshold 0.002
>         accuracy 0.0002
>         max_gradient 1.2
>         texture {T_Copper_3A}
>         scale 1.4  translate <0,0.7,-0.5>
> }

     Oh man....  Look at that code.......  I'll never be able to do this.

      Lovely image though.

     ~Steve~  (...feeling very inadequate).


>
>


Post a reply to this message

From: Christoph Hormann
Subject: Re: Example of Isosurfaces (sharp peaks)
Date: 6 Nov 2001 13:26:00
Message: <3BE82B30.C4CB8482@gmx.de>
"R. Suzuki" wrote:
> 
> Here is an example of isosurfaces.  The POV code is below.
> The rendering time is about 6 min for [640x480 No AA] on my PC (Celeron
> 600MHz).

That seems amazingly fast and confirms once again, that the speed of an
isosurface can vary a lot depending on how efficient the function is.  

Christoph

-- 
Christoph Hormann <chr### [at] gmxde>
IsoWood include, radiosity tutorial, TransSkin and other 
things on: http://www.schunter.etc.tu-bs.de/~chris/


Post a reply to this message

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