Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller

            Geometrische Körper in POV-Ray

English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial
 
 Geometrische Körper
   Inhaltsübersicht
Grundformen
Körper mit Makros + CSG
Körper in "shapes3.inc"
Andere Körper als Makros
3D-Text-Objekte

Andere Formen
  - blob
  ->sphere_sweep
  - julia_fractal
  - Regulare Polyhedron
  - Paraboloid, Hyperboloid
  - Polynomial equations
  - Cubic & Quartic shapes
  - Parametric shapes

Non CSG Körper
height_field + HF macros
Isosurfaces
                                       

"sphere_sweep{ ... }" - Linien aus Kugeln entlang von Spline-Kurven.

sphere_sweep{ linear_spline ... }
 
sphere_sweep
sphere_sweep {
    linear_spline // spline type
    4, /7 number of <x,y,z> points, radius
    <-1.50, 1.00,-0.5>, 0.25
    <-1.50, 0.00, 1>, 0.15
    < 0.50, 0.00, 0>, 0.35
    < 1.50, 0.50, 2>, 0.15
    texture{
      pigment{ color rgb<1,0.55,0.00>}
      finish { phong 1}
    } // end of texture
    scale<1,1,1>
    rotate<0,0,0>
    translate<0,0.5,0>
   }  // end of sphere_sweep object
sphere_sweep{ cubic_spline ... }
 
sphere_sweep
sphere_sweep {
    cubic_spline
    6,
    < 0.50, 1.00, 0>, 0.25,
    <-1.50, 1.00,-0.5>, 0.25
    <-1.50, 0.00, 1>, 0.15
    < 0.50, 0.00, 0>, 0.35
    < 1.50, 0.50, 2>, 0.15
    < 0.50, 1.50,2.5>, 0.55
    tolerance 0.1
    texture{
      pigment{ color rgb<0.75,1,0>}
      finish { phong 1}
    } // end of texture
    scale<1,1,1>
    rotate<0,0,0>
    translate<0,0.5,0>
   }  // end of sphere_sweep object
sphere_sweep{ b_spline ... }
 
sphere_sweep
sphere_sweep {
    b_spline
    7,
    < 0.50, 1.00, 0>, 0.35,
    <-0.50, 1.00, 0>, 0.25,
    <-0.50, 0.00, 0>, 0.15,
    < 0.50, 0.00, 0>, 0.25,
    < 0.50, 1.00, 0>, 0.15,
    <-0.50, 1.00, 1>, 0.10
    < 0.00, 3.00, 2>, 0.10
    tolerance 0.1
    texture{
      pigment{ color rgb<0.45,0.39,1>}
      finish { phong 1}
    } // end of texture
    scale<1,1,1>
    rotate<0,0,0>
    translate<0,0.5,0>
   }  // end of sphere_sweep object

sphere_sweep{ b_spline ... }
 
sphere_sweep
#declare Eye_Right = //-----------
union{
 sphere{ <0,0,0>, 0.10
    scale<1,1,0.3>
    texture{
     pigment{ color rgb<1,1,1>}
     finish { phong 1 }
    } // end of texture
 } //---------------
 sphere{<0,0,0>, 0.05
    texture{
     pigment{ color rgb<1,1,1>*.1}
     finish { phong 0.1}
    } // end of texture
    translate<0,0,-0.025>
 } //---------------
} //------ end Eye_Right

#declare P_00 = < 1.50, 4.00, 0>;
#declare P_01 = <-0.90, 2.00, 0>;
#declare P_02 = < 0.20, 1.00, 0>;
#declare P_03 = <-0.50, 1.00, 0>;
#declare P_04 = <-0.50, 0.00, 0>;
#declare P_05 = < 0.50, 0.00, 0>;
#declare P_06 = < 0.50, 1.00, 0>;
#declare P_07 = < 1.00, 1.50, 0>;
#declare P_08 = < 1.60, 1.50, 0>;
#declare P_09 = < 1.50, 0.30, 0>;
#declare P_10 = < 2.40, 0.00, 0>;
#declare P_11 = < 2.70, 1.80, 0>;
#declare P_12 = < 3.70, 1.50, 0>;
#declare P_13 = < 3.00, 0.50, 0>;
#declare P_14 = < 4.00, 0.00, 0>;
#declare P_15 = < 4.50, 1.50, 0>;
#declare P_16 = < 4.20, 3.50, 0>;
#declare P_17 = < 6.50, 2.50, 0>;

union{ // --  Little_Dragon

difference{

sphere_sweep { // Body
  b_spline
  18,
  P_00, 0.01,
  P_01, 0.07,
  P_02, 0.25,
  P_03, 0.30,
  P_04, 0.15,
  P_05, 0.45,
  P_06, 0.15,
  P_07, 0.20,
  P_08, 0.35,
  P_09, 0.30,
  P_10, 0.20,
  P_11, 0.40,
  P_12, 0.15,
  P_13, 0.30,
  P_14, 0.20,
  P_15, 0.30,
  P_16, 0.50,
  P_17, 0.50
  tolerance 0.1
  texture{
   pigment{ color rgb<0.7,1,0.15>}
   finish { diffuse 0.9 phong 1}
  } // end of texture
} //  end of sphere_sweep

// Mouth
sphere{ <0,0,0>, 0.50
   scale<1,0.2,2>
   rotate<0,0,-30>
   translate<5 ,2.85,0>
   pigment{ color rgb<1,0.7,0.15>}
  } // end of sphere

}  // end of
  //difference Body minus Mouth

// adding eyes:
object{ Eye_Right
  translate<4.5,3.10,-0.43>
  }  // end of object
object{ Eye_Right
  translate<4.5,3.10,-0.43>
  scale<1,1,-1>
  }  // end of object

scale<1,1,1>
rotate<0,0,0>
translate<0,0.5,0>
} // end Little_Dragon
top

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