lehrkraefte:blc:math:vektoranalysis:povrayaufgaben

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:blc:math:vektoranalysis:povrayaufgaben [2018/08/23 09:15]
Ivo Blöchliger [POV-Ray Aufgaben]
lehrkraefte:blc:math:vektoranalysis:povrayaufgaben [2018/08/31 16:05] (current)
Ivo Blöchliger [Aufgabe 441]
Line 2: Line 2:
 ==== Installation ==== ==== Installation ====
 Dieser Vorgang muss nur ausgeführt werden, wenn im Laufwerk C: kein Ordner POV-Ray existiert. Dieser Vorgang muss nur ausgeführt werden, wenn im Laufwerk C: kein Ordner POV-Ray existiert.
-  * Im Klassenlaufwerk finden Sie im Ordner POV-Ray die Datei **pvinst.bat**. Starten Sie diese. Dieser Vorgang muss nur einmal ausgeführt werden.+  * Im Klassenlaufwerk finden Sie im Ordner Mathe die Datei **pvinst.bat**. Starten Sie diese. Dieser Vorgang muss nur einmal ausgeführt werden.
 ==== Programmstart ==== ==== Programmstart ====
   * Im Laufwerk C:, im Ordner POV-Ray, starten Sie die Datei **pvstart.bat**.   * Im Laufwerk C:, im Ordner POV-Ray, starten Sie die Datei **pvstart.bat**.
 +  * Legen Sie eine neue POV-Ray Datei an und speichern Sie diese mit der Dateiendung .pov an einem geeigneten Ort. Für Animationen speichern Sie die Datei in einem separaten Ordner nur für diese Datei.
  
  
Line 55: Line 56:
  
 #declare ob=<3,0,0>;   // Startposition B #declare ob=<3,0,0>;   // Startposition B
-#declare va=<0,1,0>;   // Geschwindigkeitsvektor B+#declare vb=<0,1,0>;   // Geschwindigkeitsvektor B
  
 #declare zeit=clock*6; // Total 6 Sekunden simulieren #declare zeit=clock*6; // Total 6 Sekunden simulieren
Line 82: Line 83:
 // AUS beinzeit DIE POSITION DER FUESSE BERECHNEN // AUS beinzeit DIE POSITION DER FUESSE BERECHNEN
 </code> </code>
 +
 +<hidden Lösungsvorschlag>
 +<code povray>
 +// Kamera
 +camera { 
 +      sky <0,0,1>          // Vektor, der festlegt, wo oben ist.
 +      right <-4/3,0,0>     // Bildverhältnis 4:3, plus Spiegelung für rechtsdrehendes System
 +      location <20,8,18>   // Position der Kamera
 +      look_at <5, 5, 1>    // Blickrichtung (erscheint im Bildmittelpunkt)
 +      angle 30             // Öffnungswinkel der Kamera
 +}
 + 
 +// Lichtquellen
 +light_source { 
 + <12,-2,12>              // Position des Lichts
 + color rgb <1,1,1>     // Farbe des Lichts, als rot-grün-blau Vektor (Komponenten 0 bis 1)
 +}
 +light_source { 
 + <13,10,13>              // Position des Lichts
 + color rgb <1,1,1>     // Farbe des Lichts, als rot-grün-blau Vektor (Komponenten 0 bis 1)
 +}
 +// Boden (xy-Ebene, kariert mit Quadraten von Seitenlänge 1)
 +plane { 
 +  z,0        // Ebene, senkrecht zu z=<0,0,1>, mit Abstand 0 zum Ursprung
 +  pigment {  // Schachbrett
 +    checker color rgb <1,1,1>, color rgb <0.2,0.2,0.2>
 +  }
 +  finish { reflection 0.4 }
 +} // Ende Boden
 +
 +
 +#declare oa=<0,4,0>;   // Startposition A
 +#declare va=<1,0,0>;   // Geschwindigkeitsvektor A
 + 
 +#declare ob=<3,0,0>;   // Startposition B
 +#declare vb=<0,1,0>;   // Geschwindigkeitsvektor B
 + 
 +#declare zeit=clock*6; // Total 6 Sekunden simulieren
 + 
 +#declare person=union {  // Person, zentriert auf <0,0,0>, Blickrichtung in x-Richtung
 +  box { <-0.15,-0.3,0>, <0.15,0.3,1.7> }
 +} // Ende union Person
 +
 +
 +#declare halbeSeite=2;  // ACHTUNG Gross/Kleinschreibung!
 +#declare abstand=1;
 +
 +#declare truppe = union {
 +    // Einrücken mit TAB  (oberhalb CapsLock=)
 +    #declare posx=-halbeSeite;  // x-Position einer Person in der Truppe
 +    #while (posx<=halbeSeite)   // Wieder holen, von -halbeSeite bis +halbeSeite
 +        #declare posy=-halbeSeite;     // Dito für posy
 +        #while (posy <= halbeSeite)
 +            
 +            object { person            // Person platzieren
 +                translate abstand*<posx,posy,0>
 +            }
 +                    
 +            #declare posy=posy+1;
 +        #end // while posy
 +        #declare posx=posx+1;
 +    #end // while posx
 +} // union
 +
 +
 + 
 +// Person A
 +object { truppe
 +  // TODO
 +  translate oa+zeit*va    // Parameterdarstellung der Geraden a
 +  pigment { color rgb <1,0,0> }
 +}  // Ende Person A
 +           
 +           
 +// Person B
 +object { truppe
 +  rotate 90*z  // damit die Person in y-Richtung schaut.
 +  // TODO
 +  translate ob+zeit*vb  // Parameterdarstellung der Geraden b
 +  pigment { color rgb <0,1,0> }
 +}  // Ende Person A
 +
 +</code>
 +</hidden>
 +
 +===== Video-Encoding mit ffmpeg =====
 +<code>
 +C:\ffmpeg-20180831-3ad0e67-win64-static\bin\ffmpeg.exe -i .\aufgabe441og%02d.png movie.mp4
 +</code>
 +
  • lehrkraefte/blc/math/vektoranalysis/povrayaufgaben.1535008551.txt.gz
  • Last modified: 2018/08/23 09:15
  • by Ivo Blöchliger