Virtuelle LEGO®-Modelle in LeoGEO benutzen ein rechtshändiges Koordinatensystem,
(x nach rechts hinten (rot), y nach links hinten (grün) und z gerade nach oben (blau))
Der Output von LeoCAD als POV-Ray-Szenendatei verwendet ebenfalls ein rechtshändiges System,
mit einer Kamera (camera), einem Hintergrund (background) und
einer Lichtquelle (light_source) für einen Baustein 2x4 sieht dies in etwas wie folgt aus:
// File created by LeoCAD --------------//
#include "Brick_Test1.inc"
camera {
sky <0,0,1>
location <-10, -9, 6>
look_at < 0.00, 0.00, 0.00>
angle 30
}
background{ color rgb <1, 1, 1> }
light_source{<-10,-5,20> White shadowless}
object {
lg_3001
texture { lg_red }
matrix <-1.0000, 0.0000, 0.0000,
0.0000,-1.0000, 0.0000,
0.0000, 0.0000, 1.0000,
0.0000, 0.0000, 0.0000>
} // ----------------------------------//
Wobei in der Include-Datei "Brick_Test1.inc"
im Wesentlichen die folgenden 3 Zeilen stehen:
#include "lg_color.inc"
#include "lg_defs.inc"
#include "lg_3001.inc" |
Der Output von LeoCAD als POV-Ray-Szene mit zusätzlichen Achsen zur besseren Orientierung.
Szenenbeschreibung für POV-Ray:
Brick_Test1.pov
mit zugehöriger Include Datei:
Brick_Test1.inc
|
Anpassung der Achsen: In POV-Ray wird normalerweise ein linkshändiges Koordinatensystem benutzt.
Daher muß man nicht nur die Kamera und das Licht, sondern auch die Objekte anpassen damit sie korrekt
in einem linkshändiges System funktionieren.
Anpassung des Maßstabes:
In LDraw und LeoGEO wird der Maßstab von 1 Einheit = 10mm verwendet. In POV-Ray verwendet man üblicherweise 1 Einheit = 1m.
Wenn wir virtuelle LEGO-Modelle in unsere virtuelle POV-Ray-Welt integrieren möchtem, so müssen wir daher auch den
Maßstab der Modelle ändern in dem wir sie mit
"scale 0.01" verkleinern.
// LeoCAD POV-Ray Output File ---------//
// Adapted to left handed system -----//
#declare lg_quality = 4; // 0~4
#include "lg_color.inc"
#include "lg_defs.inc"
#include "lg_3001.inc" // brick 2x4
// no additional include file needed!
#declare L_Transform =
transform{ rotate<-90,-90,0> // y<->z
scale 0.01 // 1 = 1m
translate<0,0.0094,0> //up
} // end L_Transform
camera {
right x*image_width/image_height
location <-0.04, 0.05, -0.0>
look_at < 0.004, 0.00, 0.00>
angle 30
}
background{ color rgb <1, 1, 1> }
light_source{<-10,15,-20> White}
object {
lg_3001
texture { lg_red }
matrix <-1.0000, 0.0000, 0.0000,
0.0000,-1.0000, 0.0000,
0.0000, 0.0000, 1.0000,
0.0000, 0.0000, 0.0000>
transform{ L_Transform }
} // ----------------------------------//
|
Angepasste LeoCAD POV-Ray-Szenendatei mit zusätzlichen Achsen zur besseren Orientierung.
|
|