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
  - Architektur
  - Technik
    - Leiter
    - Masten
    - Geländer
    - Brücke
    - Röhren
    - Rohrabzweigung
    - Rohr-Absperrhahn
    - Kette
    - Drahtspule
    - Torpedo
    - Cruise Missile
    - Rakete
    - Rad
    - Truck
    - Propeller
    - Flugzeug
    - Kanu
    - Gitarrenbody
    - 7-Segment Display
    - Flachbandkabel
    - Kabelbaum
                                       
 
Cruise Missile

Cruise Missile
Konstuktion einer Cruise Missile Rakete

Objekte:  sphere, cylinder, cone.
Methoden: #declare, union, difference, matrix, #macro.

Die Konstruktion im Detail:

Schritt 1: Die Flügel

In analoger Weise wie bei den "Flügeln" beim "Torpedo" bauen wir die Flügel hier durch gequetschte und gescherte Kegelstüpfe. Wir benutzen ein "macro" um das Design so flexibel wie möglich zu halten. Die Variablen sind hier der Basisradius der Flügel "Wing_Radius1", der Endradius der Flügel "Wing_Radius2", die Flügellänge "Wing_Height" und der Scherungsfaktor der Flügel "Wing_Sheer".

Das Flügel macro":

#macro Wing(Wing_Radius1,
                    Wing_Radius2,
                    Wing_Height,
                    Wing_Sheer)
cone { <0,0,0>,Wing_Radius1,
       <0,Wing_Height,0>,
                     Wing_Radius2
       scale <1,1,0.1>
       matrix<    1, 0, 0,
        -Wing_Sheer, 1, 0,
                  0, 0, 1,
                  0, 0, 0>
     } // end of cone ------------
#end //-------------- end of macro hspace="" 
missile

Schritt 2: Der Raketenkörper


In gleicher Weise wie beim "Torpedo" konstruieren wir den Körper aus zwei Ellipsoide (rot) und einem Zylinder (gelb), alle mit demselben Grundradius. Diesmal verwenden wir ein "macro" um flexibler zu sein. Die Variablen der Raketenradius "M_Radius", die Raketenlänge "M_Len", die Flügellänge "Wing_Width" und der Streckungsfaktor des Schwanzteiles "Tail_Scale".

torpedo
#macro Missile (M_Radius, M_Len, M_Wing_Width, Tail_Scale)
union{
 sphere { <0,0,0>,M_Radius scale<1.5,1,1>
        } // end of sphere ---------------
 cylinder{ <-(M_Len-Tail_Scale*M_Radius),0,0>, <0,0,0>,M_Radius 
        } // end of cylinder ---------------
 sphere { <0,0,0>,M_Radius scale<Tail_Scale,1,1>
         translate<-(M_Len-Tail_Scale*M_Radius),0,0>
        } // end of sphere ----------------

 // die Flügel
 object{ Wing(0.75,0.25,2.0,0.35) translate<-M_Len+0.8,0,0>}
 object{ Wing(1.0,0.4,3.5,0.25) rotate < 85,0,0>
         translate<-M_Len*0.7,-M_Radius/2,0>}
 object{ Wing(1.0,0.4,3.5,0.25) rotate <-85,0,0>
         translate<-M_Len*0.7,-M_Radius/2,0>}

// die Triebwerke
 torus{ 0.8,0.5 rotate<0,0,90> scale<7,1,1>*0.25 rotate<0,3,3>
        translate<-M_Len*0.85,M_Radius*0.95,-M_Radius/2>
      } // end of torus  ---------

 torus{ 0.8,0.5 rotate<0,0,90> scale<8,1,1>*0.25 rotate<0,3,3>
        translate<-M_Len*0.85,M_Radius*0.95,-M_Radius/2> scale<1,1,-1>
      } // end of torus  ----------

}// end of union
#end //-------- end of missile macro

Und hier fügen wir
ein paar Triebwerke zum Raketenkörper:

torpedo

Schritt 3: Alles zusammen

missile

Die Szenenbeschreibung für ein Cruise Missile mit POV-Ray:
"missile.txt" oder "missile.pov"
top

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