Descrizioni ed esempi per il raytracer POV-Ray di Friedrich A. Lohmüller
    Oggetti Geometrici in POV-Ray
English English English
Français français
Deutsch Deutsch

Home
- POV-Ray Tutorial
 
Oggetti Geometrici
   Indice
Oggetti di Base
Oggetti con macro + CSG
Oggetti in "shapes3.inc"
Altri Oggetti come Macros
Oggetti di Testo 3D
Altri Oggetti
Oggetti Non-CSG
height_field + HF macros

Isosurfaces
  - con Superfici di base
  ->con Funzione seno
  - con Funzioni Built-in
  - con Funzione Helix
  - con Funzioni di Motivi
                                   
       isosurface{ ... } - con funzioni di base e con funzione seno. - Esempi:
          Built-in shape
isosurface
isosurface{ //-------------------------
  function{ y - sin(x*4*pi)*0.1 }
  threshold 0
  contained_by{box{<-1,-0.5,-1>,<1,1,1>}}

  texture{
    pigment{ color rgb<0.5,1,1>}
    normal { ripples 0.5 scale 0.125}
    finish { phong 1}
  } // end of texture
  scale <1,1,1>*1.5
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function{ y - cos(sqrt(x*x+z*z)*5*pi)*0.08}
  threshold 0
  contained_by{box{<-1,-0.5,-1>,<1,1,1>}}

  texture{
    pigment{ color rgb<0.5,1,1>}
    normal { ripples 0.5 scale 0.125}
    finish { phong 1}
  } // end of texture
  scale <1,1,1>*1.5
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function { sin( 4 *y*2*pi ) /15
             + sqrt(x*x*2+z*z*2)-0.5}
  threshold 0
  contained_by {box { -1 , 1 }}
  max_gradient 10
  accuracy 0.005
  open  // optional

  texture {
    pigment{ color rgb<1,1,1>*1.1}
    finish { phong 0.5 reflection 0.2}
  } // end of texture
  scale <1,1,1>*1
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function {  sqrt(x*x + y*y + z*z) - 0.9
             + sin(18*atan2(y,sqrt(x*x+z*z)))*0.05}
  threshold 0
  accuracy 0.0001
  max_gradient 5
  contained_by{box{ -1, 1 }}

  texture{
    pigment{ color rgb<0.9,1.0,0.1>}
    finish { phong 1}
  } // end of texture
  scale <1,1,1>*1.0
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function{ sqrt( x*x + y*y + z*z ) - 0.9
            + sin( 12*atan2(x,z) )*0.1}
  threshold 0
  accuracy 0.0001
  max_gradient 5
  contained_by{box{ -1, 1 }}

  texture{
    pigment{ color rgb<0.9,1.0,0.1>}
    finish { phong 1}
  } // end of texture
  scale <1,1,1>*1
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function{  sqrt(x*x + y*y + z*z) - 0.9
             + sin(12*atan2(x, z))
               *sin(8*atan2(y,sqrt(x*x+z*z)))*0.1}
  threshold 0
  accuracy 0.0001
  max_gradient 5
  contained_by{box{ -1, 1 }}

  texture{
    pigment{ color rgb<0.5,1.0,0.05>}
    finish { phong 1}
  } // end of texture
  scale <1,1,1>*1.0
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------
isosurface
isosurface{ //-------------------------
  function { sqrt(x*x + y*y + z*z) - 0.8
             + sin(0.5*sin(y*4))*0.1 }
  threshold 0
  accuracy 0.0001
  max_gradient 5
  contained_by{box{ -1, 1 }}

  texture{ T_Stone8
            finish { specular 0.2 phong 0.4 }
  } // end of texture
  scale <0.80,1.00,0.80> *1.4
  rotate <0,0,0>
  translate <0,0,0>
} // end of isosurface ----------------

© Friedrich A. Lohmüller, 2014
www.f-lohmueller.de