Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
lehrkraefte:blc:math:vektoranalysis:povrayaufgaben [2018/08/20 08:31] Ivo Blöchliger created |
lehrkraefte:blc:math:vektoranalysis:povrayaufgaben [2018/08/31 16:05] (current) Ivo Blöchliger [Aufgabe 441] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Programm " | ||
+ | ==== Installation ==== | ||
+ | Dieser Vorgang muss nur ausgeführt werden, wenn im Laufwerk C: kein Ordner POV-Ray existiert. | ||
+ | * Im Klassenlaufwerk finden Sie im Ordner Mathe die Datei **pvinst.bat**. Starten Sie diese. Dieser Vorgang muss nur einmal ausgeführt werden. | ||
+ | ==== Programmstart ==== | ||
+ | * 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. | ||
+ | |||
+ | |||
+ | |||
====== POV-Ray Aufgaben ====== | ====== POV-Ray Aufgaben ====== | ||
Line 38: | Line 48: | ||
Um die Animation zu rendern, muss in POV-Ray noch die Option " | Um die Animation zu rendern, muss in POV-Ray noch die Option " | ||
<code povray> | <code povray> | ||
+ | // TODO | ||
+ | // HIER FEHLT NOCH KAMERA, LICHT UND BODEN | ||
+ | |||
+ | |||
#declare oa=< | #declare oa=< | ||
#declare va=< | #declare va=< | ||
#declare ob=< | #declare ob=< | ||
- | # | + | # |
#declare zeit=clock*6; | #declare zeit=clock*6; | ||
Line 63: | Line 77: | ||
} // Ende Person A | } // Ende Person A | ||
</ | </ | ||
- | Wer möchte, kann sich überlegen, wie man noch Beine animieren könnte. | + | Wer möchte, kann sich überlegen, wie man noch Beine animieren könnte. |
+ | <code povray> | ||
+ | #declare beinzeit = mod(zeit, | ||
+ | // TODO | ||
+ | // AUS beinzeit DIE POSITION DER FUESSE BERECHNEN | ||
+ | </ | ||
+ | |||
+ | <hidden Lösungsvorschlag> | ||
+ | <code povray> | ||
+ | // Kamera | ||
+ | camera { | ||
+ | sky < | ||
+ | right < | ||
+ | location < | ||
+ | look_at <5, 5, 1> // Blickrichtung (erscheint im Bildmittelpunkt) | ||
+ | angle 30 // Öffnungswinkel der Kamera | ||
+ | } | ||
+ | |||
+ | // Lichtquellen | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | // Boden (xy-Ebene, kariert mit Quadraten von Seitenlänge 1) | ||
+ | plane { | ||
+ | z,0 // Ebene, senkrecht zu z=< | ||
+ | pigment { // Schachbrett | ||
+ | checker color rgb < | ||
+ | } | ||
+ | finish { reflection 0.4 } | ||
+ | } // Ende Boden | ||
+ | |||
+ | |||
+ | #declare oa=< | ||
+ | #declare va=< | ||
+ | |||
+ | #declare ob=< | ||
+ | #declare vb=< | ||
+ | |||
+ | #declare zeit=clock*6; | ||
+ | |||
+ | #declare person=union { // Person, zentriert auf < | ||
+ | box { < | ||
+ | } // Ende union Person | ||
+ | |||
+ | |||
+ | #declare halbeSeite=2; | ||
+ | #declare abstand=1; | ||
+ | |||
+ | #declare truppe = union { | ||
+ | // Einrücken mit TAB (oberhalb CapsLock=) | ||
+ | #declare posx=-halbeSeite; | ||
+ | #while (posx< | ||
+ | #declare posy=-halbeSeite; | ||
+ | #while (posy <= halbeSeite) | ||
+ | |||
+ | object { person | ||
+ | translate abstand*< | ||
+ | } | ||
+ | |||
+ | #declare posy=posy+1; | ||
+ | #end // while posy | ||
+ | #declare posx=posx+1; | ||
+ | #end // while posx | ||
+ | } // union | ||
+ | |||
+ | |||
+ | |||
+ | // Person A | ||
+ | object { truppe | ||
+ | // TODO | ||
+ | translate oa+zeit*va | ||
+ | pigment { color rgb < | ||
+ | } // Ende Person A | ||
+ | |||
+ | |||
+ | // Person B | ||
+ | object { truppe | ||
+ | rotate 90*z // damit die Person in y-Richtung schaut. | ||
+ | // TODO | ||
+ | translate ob+zeit*vb | ||
+ | pigment { color rgb < | ||
+ | } // Ende Person A | ||
+ | |||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== Video-Encoding mit ffmpeg ===== | ||
+ | < | ||
+ | C: | ||
+ | </ |