Eigentlich sollte hier der Sourcecode für das Bild rechts stehen, aber durch einen HD-Crash ist der verloren. Aber ich habe eine ältere Version wiedergefunden - muß mal schauen, ob ich das bei Gelegenheit wieder zurechtbasteln kann.
The following code does NOT belong to the image at the right. It's an older version, and erroneous. Due to an HD crash the original source is lost. I'll try to rebuild it, but in the meantime the code below may be useful for someone.
// Persistence of Vision Ray Tracer Scene Description File // File: Zoom.pov // Vers: 3.5 // Desc: Strahlengang in einem Zoomobjektiv // Date: 31.12.2005 // Auth: Rainer Knaepper // Quellen: http://www.arachnoid.com/raytracing/index.html // http://www.arachnoid.com/raytracing/telescope_galilean_dissected_oblique.pov // http://www.foto-net.de/net/objektive/kostruktion.html // LINOS Photonics WinLens 4.3 #declare MINZOOM = 6.5; #declare MAXZOOM = 10; #declare STRAHLEN = .08; #declare NBK7 = 1.518; #declare SILICA = 1.458; difference { //*PMName Aperture Plate box { //*PMName Plate <-0.01, -10, -10>, <0.01, 10, 10> scale 1 rotate <0, 0, 0> translate <0, 0, 0> hollow false } union { //*PMName Holes cylinder { <-0.1, 0, 0>, <0.1, 0, 0>, STRAHLEN translate y*1.8 hollow false } cylinder { <-0.1, 0, 0>, <0.1, 0, 0>, STRAHLEN translate y*.9 hollow false } cylinder { <-0.1, 0, 0>, <0.1, 0, 0>, STRAHLEN translate y*0 hollow false } cylinder { <-0.1, 0, 0>, <0.1, 0, 0>, STRAHLEN translate y*(-.9) hollow false } cylinder { <-0.1, 0, 0>, <0.1, 0, 0>, STRAHLEN translate y*(-1.8) hollow false } hollow false } translate x*300 pigment { color rgb <.5, 1, 0.0156863> } hollow false photons { collect off } } global_settings { adc_bailout 0.0039216 max_trace_level 12 max_intersections 12 noise_generator 2 photons { count 40000 media 40000, 0.0005 autostop 1 } } union { //*PMName Variogon difference { //*PMName Dissectable union { //*PMName Component Collection difference { //*PMName Scope Tube cylinder { //*PMName Main Tube <0, 0, 0>, <12, 0, 0>, 2.2 } cylinder { //*PMName Main Tube Interior <-0.001, 0, 0>, <12.001, 0, 0>, 2 } pigment { color rgb <0.1, 0.1, 0.1> } } pigment { color rgb <0.6, 0.01, 0.2> } scale 1 finish { specular 0.1 reflection { rgb <0.1, 0.1, 0.1> } } } box { //*PMName Cross-section Box <-.10, -3, 0>, <12.1, 3, -3> pigment { color rgb <0.01, 0.01, 0.2> } } photons { collect off } } union { //*PMName Non-dissectable intersection { //*PMName Photon Volume dissector box { //*PMName Thin slice Dissection Box <-4.5, -2, 0.1>, <18, 2, -0.1> scale 1 rotate <0, 0, 0> translate <0, 0, 0> hollow } pigment { color rgbf <1, 1, 1, .999> } interior { media { scattering { 1, rgb <1, 1, 1> extinction 0 } } } photons { target collect off } hollow } intersection { //*PMName Objective Lens Front cylinder { <-2, 0, 0>, <2, 0, 0>, 2 scale 1 } intersection { sphere { <9.6, 0, 0>, 10 } sphere { <-9.6, 0, 0>, 10 } } pigment { color rgbt <0.27451, 0.37255, 0.37255, 0.95> } finish { specular 0.1 reflection { rgb <0.05, 0.00, 0.00> } } interior { ior 1.5 } hollow translate x*11.8 } difference { //*PMName konvex cylinder { <-2, 0, 0>, <2, 0, 0>, 1.6 scale 1 } union { sphere { <-3.05, 0, 0>, 3 } sphere { <+5.05, 0, 0>, 5 } } pigment { color rgbt <0.34902, 0.50588, 0.53725, 0.95> } finish { specular 0.1 reflection { rgb <0.05, 0.01, 0.01> } } hollow interior { ior 1.55 } translate <MINZOOM + clock * (MAXZOOM-MINZOOM),0,0> } } intersection { //*PMName Objective Lens 3 cylinder { <-2, 0, 0>, <2, 0, 0>, 1.9 scale 1 } intersection { sphere { <9.6, 0, 0>, 10 } sphere { <-9.6, 0, 0>, 10 } } pigment { color rgbt <0.27451, 0.37255, 0.37255, 0.95> } finish { specular 0.1 reflection { rgb <0.05, 0.00, 0.00> } } interior { ior 1.5 } hollow translate x*4.5 } intersection { //*PMName Objective Lens Rear cylinder { <-2, 0, 0>, <2, 0, 0>, 1.9 scale 1 } intersection { sphere { <4.4, 0, 0>, 5 } sphere { <-4.4, 0, 0>, 5 } } pigment { color rgbt <0.27451, 0.37255, 0.37255, 0.95> } finish { specular 0.1 reflection { rgb <0.05, 0.00, 0.00> } } interior { ior 1.5 } hollow translate x*.5 } } box { //*PMName Mattscheibe <-.050, -5, -5>, <0, 5, 5> scale 1 rotate <0, 0, 0> translate <0, 0, 0> //*hollow pigment { color rgbf <1, 1, 1, 0.9> } interior { media { scattering { 1, rgb <1, 1, 1> extinction 0 } } } //*photons { //* target off //* collect off //*} translate -x*4.5 } light_source { //*PMName Area Light <25, 5, -61.525>, rgb <4, 4, 4> spotlight radius 45 falloff 45 point_at <0, 0, 1> media_interaction off media_attenuation off photons { } } sky_sphere { pigment { color rgb <0.101961, 0.160784, 0.2> } } plane { <0, 1, 0>, 0 pigment { agate agate_turb 0.5 color_map { [ 0 color rgb <0.25098, 0.25098, 0.25098> ] [ 0.1 color rgb <0.458824, 0.458824, 0.458824> ] } } scale 1 rotate <0, 0, 0> translate y*(-10000) photons { collect off } } light_source { //*PMName Scope Photon Source <100000, 0, 0>, rgb <0, 20, 20> spotlight radius 10 falloff 10 point_at <0, 0, 1> media_interaction off media_attenuation off photons { refraction on } } camera { //*PMName Wide Cam perspective location <4, 20, -80> sky <0, 1, 0> direction <0, 0, 1> right <1.3333, 0, 0> up <0, 1, 0> look_at <4, 0, 0> angle 13 }