File:Prisms with high and low dispersion.png
Originaldatei (1.600 × 2.440 Pixel, Dateigröße: 850 KB, MIME-Typ: image/png)
Bildtexte
Beschreibung[Bearbeiten]
Two pictures of optical prisms; one (above) with a high degree of optical dispersion, and one (below) with a low dispersion. For each image, a different setting of the "Disp" variable in the code below to have each image show a different amount of optical dispersion.
Simulated using computer graphics, rendered using the Persistence of Vision Raytracer (POV-Ray). Everything made from scratch by Peo, originally for use in a few articles in danish Wikipedia.
Es ist erlaubt, die Datei unter den Bedingungen der GNU-Lizenz für freie Dokumentation, Version 1.2 oder einer späteren Version, veröffentlicht von der Free Software Foundation, zu kopieren, zu verbreiten und/oder zu modifizieren; es gibt keine unveränderlichen Abschnitte, keinen vorderen und keinen hinteren Umschlagtext.
Der vollständige Text der Lizenz ist im Kapitel GNU-Lizenz für freie Dokumentation verfügbar.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
Diese Datei ist unter der Creative-Commons-Lizenz „Namensnennung – Weitergabe unter gleichen Bedingungen 3.0 nicht portiert“ lizenziert. | ||
| ||
Diese Lizenzmarkierung wurde auf Grund der GFDL-Lizenzaktualisierung hinzugefügt.http://creativecommons.org/licenses/by-sa/3.0/CC BY-SA 3.0Creative Commons Attribution-Share Alike 3.0truetrue |
The code below was used to render each prism, and the two images was subsequently merged into this image in a photomanipulation application.
global_settings {
max_trace_level 64
max_intersections 1000
}
// "Disp" variable: Amount of dispersion: Looks reasonable
// from 2 (less) thru 6 (more dispersion), including both:
#declare Disp=6;
light_source {<-100,50,-30> color rgb .3}
light_source {<-150,120,-100> color rgb .3}
camera {
location <-4,5,-9>
look_at <3,-2,0>
angle 60
}
#local L1a = tan(Disp/180*pi);
#local L1b = 1.05+L1a*1.13;
#local L2a = -tan(Disp/180*pi);
#local L2b = .739+L2a*1.308;
#local SPLx = (L2b-L1b)/(L1a-L2a); // Center of radial rainbow pattern in the part of
#local SPLy = L1a*SPLx+L1b; // the light beam that's inside the prism.
#local TOPx = (3-L1b)/(L1a+1.73205087569);
#local TOPy = L1a*TOPx+L1b;
#local BOTx = (3-L2b)/(L2a+1.73205087569);
#local BOTy = L2a*BOTx+L2b;
#local TOPa = tan(radians(2*Disp-30));
#local TOPb = TOPy-TOPa*TOPx;
#local BOTa = tan(radians(-2*Disp-30));
#local BOTb = BOTy-BOTa*BOTx;
#local OUTx = (BOTb-TOPb)/(TOPa-BOTa);
#local OUTy = BOTa*OUTx+BOTb;
#local txtOff=texture {pigment {color rgb 1}} // Texture for unlit walls
#local txtFLT=texture {pigment { // Radial pattern to fake the "rainbow-
radial // illuminated" part of the wall and floor.
color_map {
[0.00 color rgb <.7,(1-Disp/10),1>] // Colors vary from all white
[0.20 color rgb <(1-Disp/10),(1-Disp/10),1>] // to the rainbow of saturated
[0.40 color rgb <(1-Disp/10),1,1>] // colors, depending on "Disp"
[0.60 color rgb <(1-Disp/10),1,(1-Disp/10)>] // setting.
[0.80 color rgb <1,1,(1-Disp/10)>]
[1.00 color rgb <1,(1-Disp/10),(1-Disp/10)>]
}
frequency int(90/Disp+.5) // Agular width - causes discrete intervals in width!
} finish {ambient .4}}
#local txtSTR=texture { // This texture encloses the above, "ranbow-illuminated"
radial // texture with zones at the red and purple ends where the
texture_map { // rainbow "fades out" into the invisible, and thus appa-
[0.00 txtOff] // rently unlit parts of the floor and walls.
[0.01 txtFLT]
[Disp/90-.01 txtFLT]
[Disp/90 txtOff]
[1.00 txtOff]
}
rotate <90,0,-30-2*Disp>
translate <OUTx,OUTy,0>
}
union { // The floor and walls in the scenery:
plane {<0,1,0>,-3.001} // Floor
plane {<-1,0,0>,-10} // Wall struck by colored light
plane {<0,0,-1>,-15} // Unlit wall in the background
texture { // This texture is the rainbow band in txtSTR inside a
gradient z // small strip along the triangular surfaces of the
texture_map { // prism, surrounded by zones where the light fades out
[0.000 txtOff] // into the dark gray, "unlit" texture.
[0.004 txtSTR]
[0.016 txtSTR]
[0.020 txtOff]
[1.000 txtOff]
}
translate <0,0,-.01>
scale <1,1,200>
}
}
difference { // The prism itself
box {<-10,-3,-2>,<10,3,2>} // Shape made from a box, "cut" into
plane {<0,-1,0>,-1.5 rotate <0,0,60>} // shape using two planes at 60* angles.
plane {<0,-1,0>,-1.5 rotate <0,0,-60>}
hollow on // Media stuff: The prism has an index
pigment {color rgbt <.8,1,.9,.7>} // of refraction (ior) of 1.66, and
finish {phong 1 reflection .1 ambient .3} // disperses colors according to the
interior {ior 1.66 dispersion 1+Disp/100} // "Disp" variable.
}
difference { // The narrow "sheet" of white light entering the prism from the left:
box {<-10,-.1,-1.5>,<1,.1,1.5> rotate <0,0,26.099> translate <-1,1,0>}
plane {<0,1,0>,1.5001 rotate <0,0,60>} // Box "cut" into shape with a plane.
hollow on // Media stuff: The beam shape itself is invisible, but
pigment {color rgbt 1} // contains an emitting media, giving the beam the
interior { // "fuzzy", translucent look.
media {
intervals 10 samples 1,1 confidence 0.9 variance 1.0/128
ratio 0.9 emission rgb .6 method 3
}
}
}
difference { // Part of the light beam inside the prism:
box {<-2,-2,-1.5>,<5,2,1.5>} // Box cut to shape
plane {<0,-1,0>,0 rotate <0,0,Disp> translate <-1.13,1.05,0>} // with planes, ac-
plane {<0,1,0>,0 rotate <0,0,-Disp> translate <-1.308,0.739,0>} // cording to the
plane {<0,-1,0>,-1.499 rotate <0,0,60>} // "Disp" variable
plane {<0,-1,0>,-1.499 rotate <0,0,-60>}
hollow on // Media stuff: The shape itself is invisible inside
pigment {color rgbt <1,1,1,1>} // the prism since it has the same ior; 1.66
finish {ambient .7}
interior {
ior 1.66 dispersion 1+Disp/100
media {
intervals 10 // number of intervals used for sampling [10]
samples 1,1 // minimum and maximum number of samples taken per interval [1,1]
confidence 0.9 // statistic parameter higher->better quality [0.9]
variance 1.0/128 // statistic parameter lower->better quality [1.0/128]
ratio 0.9 // distribution between lit and unlit areas [0.9]
emission rgb<1,.95,.85>*.4
method 3 // adaptive sampling
density {
radial
color_map { // Color spectrum in the beam inside the prism:
[0.00 color rgb <1,(1-Disp/10),(1-Disp/10)>*(1.5-.05*Disp)]
[0.20 color rgb <1,1,(1-Disp/10)> *(1.5-.05*Disp)]
[0.40 color rgb <(1-Disp/10),1,(1-Disp/10)>*(1.5-.05*Disp)]
[0.60 color rgb <(1-Disp/10),1,1> *(1.5-.05*Disp)]
[0.80 color rgb <(1-Disp/10),(1-Disp/10),1>*(1.5-.05*Disp)]
[1.00 color rgb <1,(1-Disp/10),1> *(1.5-.05*Disp)]
}
frequency int(180/Disp+.5)
rotate <-90,0,-Disp>
translate <SPLx,SPLy,0>
}
}
}
}
difference { // Part of the light beam exiting at the right-hand side of the prism:
box {<-5,-500,-1.5>,<500,5,1.5>} // Box cut to sha-
plane {<0,1,0>,1.5001 rotate <0,0,-60>} // pe using three
plane {<0,-1,0>,0 rotate <0,0,2*Disp-30> translate <TOPx,TOPy,0>} // planes.
plane {<0,1,0>,0 rotate <0,0,-2*Disp-30> translate <BOTx,BOTy,0>}
hollow on // Media stuff: Like the entering beam, this one's
pigment {color rgbt <1,1,1,1>} // shape is invisible, but contains emitting media
finish {ambient .7} // showing the rainbow "band" of colors
interior {
media {
intervals 10 samples 1,1 confidence 0.9 variance 1.0/128
ratio 0.9 emission rgb<1,.95,.85>*.4 method 3
density {
radial
color_map { // Color spectrum in the beam leaving the prism:
[0.00 color rgb <1,(1-Disp/10),(1-Disp/10)>*(.4-.01*Disp)]
[0.20 color rgb <1,1,(1-Disp/10)> *(.4-.01*Disp)]
[0.40 color rgb <(1-Disp/10),1,(1-Disp/10)>*(.4-.01*Disp)]
[0.60 color rgb <(1-Disp/10),1,1> *(.4-.01*Disp)]
[0.80 color rgb <(1-Disp/10),(1-Disp/10),1>*(.4-.01*Disp)]
[1.00 color rgb <.7,(1-Disp/10),1> *(.4-.01*Disp)]
}
frequency int(90/Disp+.5)
rotate <-90,0,-30-2*Disp>
translate <OUTx,OUTy,0>
}
}
}
}
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
---|---|---|---|---|---|
aktuell | 14:22, 4. Aug. 2012 | 1.600 × 2.440 (850 KB) | Morn (Diskussion | Beiträge) | rendered at 1600x1200 | |
16:53, 30. Dez. 2005 | 640 × 964 (224 KB) | Peo~commonswiki (Diskussion | Beiträge) | Two pictures of optical prisms; one (above) with a high degree of optical dispersion, and one (below) with a low dispersion. Simulated using computer graphics, rendered using the Persistence of Vision Raytracer. Everything made from scratch by [[User:Peo |
Du kannst diese Datei nicht überschreiben.
Dateiverwendung
Die folgenden 2 Seiten verwenden diese Datei:
Globale Dateiverwendung
Die nachfolgenden anderen Wikis verwenden diese Datei:
- Verwendung auf ast.wikipedia.org
- Verwendung auf ca.wikipedia.org
- Verwendung auf da.wikipedia.org
- Verwendung auf en.wikibooks.org
- Verwendung auf es.wikipedia.org
- Verwendung auf es.wikibooks.org
- Verwendung auf es.wikiversity.org
- Verwendung auf es.wiktionary.org
- Verwendung auf eu.wikipedia.org
- Verwendung auf ext.wikipedia.org
- Verwendung auf fi.wikipedia.org
- Verwendung auf fr.wikibooks.org
- Verwendung auf he.wikipedia.org
- Verwendung auf he.wiktionary.org
- Verwendung auf io.wikipedia.org
- Verwendung auf io.wiktionary.org
- Verwendung auf pl.wikipedia.org
- Verwendung auf pt.wikibooks.org
- Verwendung auf sl.wikipedia.org
Metadaten
Diese Datei enthält weitere Informationen, die in der Regel von der Digitalkamera oder dem verwendeten Scanner stammen. Durch nachträgliche Bearbeitung der Originaldatei können einige Details verändert worden sein.
PNG-Dateikommentar |
|
---|---|
Horizontale Auflösung | 28,35 dpc |
Vertikale Auflösung | 28,35 dpc |
Speicherzeitpunkt | 14:19, 4. Aug. 2012 |