Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller
    POV-Ray Beispiele - Die Erstellung von Objekten für POV-Ray
English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  - POV-Ray Beispiele
    Inhaltsübersicht
  - Geometrie
    - Bauern-Figur
    - Drahtgitter-Würfel
    - Oktagon
    - Eiform
    - Star - Stern
    - Optische Linse
    - Schachbrett
    - Rundkolben-Form

    - Erlenmeyerkolben-Form
    - Zwei-Zylinder-Blob
    - Regulärer Tetraeder
    - Penrose-Dreieck
    - Yin & Yang
    - Fischblase
    - 3fach Fischblase
    - Dreipass
  - Architektur
  - Technik
                                             
 
Star

Star - Stern

Die Konstruktion eines Sterns.
Objekte:   "box".
Methoden: "union{...}", "intersection", "inverse", "#while".
Klicken Sie hier für ein Beispiel!

Die Konstruktion Schritt für Schritt:

Wir verwenden als Ausgangsform einen Quader ("box"). Um eine klar definierte Länge der Strahlen der Sternfigur zu erhalten wird dieser Quader um den Faktor Wurzel aus 2 vergrößert. (Dann sind die Diagonalen seiner Flächen 2 Einheiten lang!


  box { <-1,-1,-1>,< 1,1,1>
        scale <1,1,1>*sqrt(2)
      }

Der Quader wird um die z-Achse um 45 Grad gedreht.

  box { <-1,-1,-1>,< 1,1,1>
        scale <1,1,1>*sqrt(2)
        rotate<0,0,45>
      }

Dann wird der Quader in y-Richtung gestaucht und anschliesend um die x-Achse um 45 Grad gedreht. Diese Form wird danach als neues Objekt "Ray_Profile" deklariert.

  #declare Ray_Profile =
   box { <-1,-1,-1>,< 1,1,1>
        scale <1,1,1>*sqrt(2)
        rotate<0,0,45>
        scale <1,0.36,1>
        rotate<45,0,0>
      }

Das neue Objekt wird an der xy-Ebene in z-Richtung mittels "scale<1,1,-1>" gespiegelt und dann wird die Schittmenge ("intersection") der beiden so entstandenen Körper gebildet.

 intersection{
   object{ Ray_Profile }
   object{ Ray_Profile scale<1,1,-1>}
   }

Um auch Sterne mit einer ungeraden Anzahl von Strahlen bilden zu können muß eine Hälfte dieser Form durch Subtraktion eines Quaders (=intersection mit dem Inversen) beseitigt werden. Die entstehende Figur bildet einen Strahl des Sterns und wird daher als neues Objekt "'Ray" deklariert.

#declare Ray =
 intersection{
   object{ Ray_Profile }
   object{ Ray_Profile scale<1,1,-1>}
   box{<-2,-1,-1>,<0,1,1> inverse}
   }

Die Stahlen des Sterns werden nun mit einer While-Schleife um die y-Achse gedreht angeordnet. Beim rechten Bild wurde der Strahl mittels " scale<1,0,5,0.5> " schlanker gemacht.
Der so entstandene Stern besitzt einen Radius von 2 Einheiten.

union{
 #local Nr = 0;     // start
 #local EndNr = 5;  // end
 #while (Nr < EndNr)
 object{Ray rotate<0,Nr*360/EndNr,0>}
 #local Nr = Nr + 1;// next Nr
 #end // ------------- end of loop
rotate<0,0,0>
translate<0,0,0>
} // end of union

 
another star 320x240
Szenenbeschreibung für POV-Ray:
"star0.txt" oderr "star0.pov"
top
© Friedrich A. Lohmüller, 2006
www.f-lohmueller.de