Fișier:Rainbow formation.png
Conținutul paginii nu este suportat în alte limbi.
De la Wikipedia, enciclopedia liberă
Mărimea acestei previzualizări: 479 × 599 pixeli. Alte rezoluții: 192 × 240 pixeli | 384 × 480 pixeli | 721 × 902 pixeli.
Mărește rezoluția imaginii (721 × 902 pixeli, mărime fișier: 280 KB, tip MIME: image/png)
Acest fișier se află la Wikimedia Commons. Consultați pagina sa descriptivă acolo. |
DescriereRainbow formation.png |
English: Diagram showing how primary and secondary rainbows are formed due to the light propagation in spherical droplets. Details follow soon!
Legend:
Español: Diagrama que muestra como se forman los arco iris primarios y secundarios debido a la descomposición de luz blanca en gotitas esféricas:
Leyenda:
Português: Diagrama que mostra como se formam os arco-íris primários e secundários em função da decomposição de luz branca em gotículas esféricas:
Legenda:
Català: Diagrama que mostra com es formen els arcs de Sant Martí primaris i secundaris a causa de la descomposició de la llum blanca en gotes esfèriques:
Llegenda:
Tiếng Việt: Sơ đồ cho thấy cách cầu vồng sơ cấp và thứ cấp được hình thành do sự truyền ánh sáng trong các giọt hình cầu. Thông tin chi tiết theo dõi ngay sau đây:
Huyền thoại:
|
Sursă | See below / Mirar abajo / Ver abaixo |
Autor | Peo |
Eu, deținătorul drepturilor de autor ale acestei opere, prin prezenta îmi public lucrarea sub următoarele licențe:
Se permite copierea, distribuirea și/sau modificarea acestui document conform termenilor Documentației de licență liberă GNU, versiunea 1.2 sau orice altă versiune ulterioară publicată de Free Software Foundation, fără părți neschimbabile, texte de pe copertele principale și finale. O copie a acestei licențe este inclusă în secțiunea numită Documentația de licență liberă GNU.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
Acest fișier a fost eliberat sub licența Creative Commons Atribuire și distribuire în condiții identice 3.0 Neadaptată. | ||
| ||
Această licență a fost atașată fișierului ca parte a actualizării licențierilor GFDL.http://creativecommons.org/licenses/by-sa/3.0/CC BY-SA 3.0Creative Commons Attribution-Share Alike 3.0truetrue |
Puteți alege licența pe care o doriți.
Español: Tres imágenes trazadas de rayos, creadas usando POV-Ray, puestas juntas y añadidos después números y líneas negras en un paquete de software de gráficos. Abajo se encuentra el "código" para crear los diagramas de arriba, y el paisaje de abajo respectivamente:
English: Three raytraced images, created using POV-Ray (see http://www.povray.org/), put together and numbers and black lines added in a graphics software package afterwards. Below is the "code" to create the diagrams above, and the landscape below, respectively:
Tiếng Việt: Ba hình ảnh raytraced, được tạo bằng POV-Ray (xem http://www.povray.org/), được ghép lại với nhau và các số và dòng màu đen được thêm vào trong một gói phần mềm đồ họa sau đó. Dưới đây là "mã" để tạo các sơ đồ ở trên và cảnh quan bên dưới, tương ứng:
POV-Ray "code" for the diagrams showing light propagation inside the droplets:
/*
=================================================
Light propagation in a spherical droplet, forming
primary and secondary rainbows
-------------------------------------------------
Created by Søren Peo Pedersen - see my user page
at http://da.wikipedia.org/wiki/Bruger:Peo
=================================================
*/
#declare PrimaryRays=yes;
// Use "no" for light propagation in secondary rainbow,
// or "yes" for light propagation in primary rainbow.
#if (PrimaryRays)
// Rendition of light propagation for primary rainbow's light propagation:
#local pgmSpectrum1=pigment { // Pigment for first spectrum "fan-out"
radial
color_map {
[0.0000 color rgbt <.5,0,1,1>]
[0.1429 color rgbt <.5,0,1,.5>]
[0.2857 color rgbt < 0,0,1,.5>]
[0.4286 color rgbt < 0,1,1,.5>]
[0.5714 color rgbt < 0,1,0,.5>]
[0.7143 color rgbt < 1,1,0,.5>]
[0.8571 color rgbt < 1,0,0,.5>]
[1.0000 color rgbt < 1,0,0,1>]
}
frequency 200
rotate <90,0,-13.1>
translate <-3.806586,1.70909106,0>
scale 1/1.67
}
#local pgmSpectrum2=pigment { // Pigment for second spectrum "fan-out"
radial
color_map {
[0.0000 color rgbt <1,1,1,1>]
[0.5000 color rgbt <1,1,1,0>]
[1.0000 color rgbt <1,1,1,1>]
}
frequency 200
rotate <90,0,-13.1>
translate <-3.806586,1.70909106,0>
scale 1/1.67
}
union {
difference { // Incoming white light beam
box {<-100,.67,-.0001>,<0,.83,.0001>}
sphere {0,1}
pigment {
gradient y
color_map {
[0.0 color rgbt<1,1,1,1>]
[0.2 color rgbt<1,1,1,.9>]
[0.3 color rgbt<1,1,1,.5>]
[0.5 color rgbt<1,1,1,0>]
[0.7 color rgbt<1,1,1,.5>]
[0.8 color rgbt<1,1,1,1,.9>]
[1.0 color rgbt<1,1,1,1>]
}
scale .16
translate <0,.67,0>
}
finish {
ambient 1
diffuse 0
}
no_shadow
no_reflection
rotate <0,0,-20.825>
}
difference { // First "rainbow-colored" beam inside droplet
cylinder {<0,0,-.0001>,<0,0,.0001>,1} // Disc w. same diameter as droplet
plane {<0,1,0>,0 rotate <0,0,-14.9> translate <-0.7141428,.7,0>} // Cut-off
plane {<0,-1,0>,0 rotate <0,0,-13.1> translate <-0.6,.8,0>} // boundaries
pigment {
gradient x
pigment_map {
[0 pgmSpectrum2]
[1 pgmSpectrum1]
}
scale 1.67
translate <-.7,0,0>
}
finish {
ambient 1
diffuse 0
}
rotate <0,0,-20.825>
no_shadow
no_reflection
}
merge { // Second "rainbow-colord" beam inside droplet - "crossing over" itself
difference { // The portion to the left of the "cross-over" point
cylinder {<0,0,.0003>,<0,0,.0002>,1} // Droplet-sized disc
plane {<0,-1,0>,0 rotate <0,0,45> translate <1,.12,0>} // Cut-off
plane {<0,1,0>,0 rotate <0,0,25> translate <1,-.09,0>} // boundaries
}
difference { // The portion to the right of the "cross-over" point
cylinder {<0,0,.0003>,<0,0,.0002>,1} // Droplet-sized disc
plane {<0,1,0>,0 rotate <0,0,45> translate <1,.12,0>} // Cut-off
plane {<0,-1,0>,0 rotate <0,0,25> translate <1,-.09,0>} // boundaries
}
pigment {
radial
color_map {
[0.0000 color rgbt <.5,0,1,1>]
[0.1429 color rgbt <.5,0,1,.5>]
[0.2857 color rgbt < 0,0,1,.5>]
[0.4286 color rgbt < 0,1,1,.5>]
[0.5714 color rgbt < 0,1,0,.5>]
[0.7143 color rgbt < 1,1,0,.5>]
[0.8571 color rgbt < 1,0,0,.5>]
[1.0000 color rgbt < 1,0,0,1>]
}
frequency 18
rotate <90,0,-35>
translate <.606514871,-.273485129,0>
}
finish {
ambient 1
diffuse 0
}
no_shadow
no_reflection
}
difference { // The "rainbow-colored light" leaving the droplet at lower left corner:
box {<-100,0,-.0001>,<0,10,.0001> rotate <0,0,32.825> translate <-.113,-.994,0>}
plane {<0,-1,0>,0 rotate <0,0,8.825> translate <-.565,-.805,0>}
cylinder {<0,0,-1>,<0,0,1>,1} // Cut away part that would fall inside droplet
pigment {
radial
color_map {
[0.0000 color rgbt < 1,0,0,1>]
[0.1429 color rgbt < 1,0,0,0>]
[0.2857 color rgbt < 1,1,0,0>]
[0.4286 color rgbt < 0,1,0,0>]
[0.5714 color rgbt < 0,1,1,0>]
[0.7143 color rgbt < 0,0,1,0>]
[0.8571 color rgbt <.5,0,1,0>]
[1.0000 color rgbt <.5,0,1,1>]
}
frequency 15
rotate <-90,0,20.825>
translate <0.416125,-.65268,0>
}
finish {ambient 1 diffuse 0}
no_shadow
no_reflection
}
}
#else
// Rendition of light propagation for secondary rainbow's light propagation:
#local pgmSpectrum1=pigment { // Pigment for "rainbow-colored" part of first beam inside droplet
radial
color_map {
[0.0000 color rgbt < 1,0,0,1>]
[0.1429 color rgbt < 1,0,0,.5>]
[0.2857 color rgbt < 1,1,0,.5>]
[0.4286 color rgbt < 0,1,0,.5>]
[0.5714 color rgbt < 0,1,1,.5>]
[0.7143 color rgbt < 0,0,1,.5>]
[0.8571 color rgbt <.5,0,1,.5>]
[1.0000 color rgbt <.5,0,1,1>]
}
frequency 200
rotate <90,0,-.9>
translate <-3.7364,-0.69606,0>
scale 1/1.7
}
#local pgmSpectrum2=pigment { // Pigment for white part of first "rainbow-colored" beam inside droplet
radial
color_map {
[0.0000 color rgbt <1,1,1,1>]
[0.5000 color rgbt <1,1,1,0>]
[1.0000 color rgbt <1,1,1,1>]
}
frequency 200
rotate <90,0,-.9>
translate <-3.8364,-0.69606,0>
scale 1/1.7
}
union {
difference { // White-to "rainbow-colored" beam inside droplet
cylinder {<0,0,-.0001>,<0,0,.0001>,1}
plane {<0, 1,0>,0 rotate <0,0,-.9> translate <-.657,-.757,0>}
plane {<0,-1,0>,0 rotate <0,0, .9> translate <-.777,-.637,0>}
pigment {
gradient x
pigment_map {
[0 pgmSpectrum2]
[1 pgmSpectrum1]
}
scale 1.7
translate <-.8,0,0>
}
finish {ambient 1 diffuse 0}
no_shadow
no_reflection
}
merge {
difference { // Lower part of self-crossing beam at right-ahdn side inside droplet
cylinder {<0,0,.0002>,<0,0,.0003>,1}
plane {< 1,0,0>,0 rotate <0,0,-6 > translate <.622,-.692,0>}
plane {<-1,0,0>,0 rotate <0,0, 6 > translate <.787,-.727,0>}
}
difference { // Upper part of self-crossing beam at right-ahdn side inside droplet
cylinder {<0,0,.0002>,<0,0,.0003>,1}
plane {<-1,0,0>,0 rotate <0,0,-6 > translate <.622,-.692,0>}
plane {< 1,0,0>,0 rotate <0,0, 6 > translate <.787,-.727,0>}
}
pigment {
radial
color_map {
[0.0000 color rgbt < 1,0,0,1>]
[0.1429 color rgbt < 1,0,0,.5>]
[0.2857 color rgbt < 1,1,0,.5>]
[0.4286 color rgbt < 0,1,0,.5>]
[0.5714 color rgbt < 0,1,1,.5>]
[0.7143 color rgbt < 0,0,1,.5>]
[0.8571 color rgbt <.5,0,1,.5>]
[1.0000 color rgbt <.5,0,1,1>]
}
frequency 30
rotate <90,0,84>
translate <.702661,0.075435,0>
}
finish {ambient 1 diffuse 0}
no_shadow
no_reflection
}
merge { // Right-hand part of self-crossing beam at top of droplet
difference {
cylinder {<0,0,.0004>,<0,0,.0005>,1}
plane {<0,-1,0>,0 rotate <0,0, 6 > translate <.637,.777,0>}
plane {<0, 1,0>,0 rotate <0,0,-6 > translate <.772,.642,0>}
}
difference { // Left-hand part of self-crossing beam at top of droplet
cylinder {<0,0,.0004>,<0,0,.0005>,1}
plane {<0, 1,0>,0 rotate <0,0, 6 > translate <.637,.777,0>}
plane {<0,-1,0>,0 rotate <0,0,-6 > translate <.772,.642,0>}
}
pigment {
radial
color_map {
[0.0000 color rgbt < 1,0,0,1>]
[0.1429 color rgbt < 1,0,0,.5>]
[0.2857 color rgbt < 1,1,0,.5>]
[0.4286 color rgbt < 0,1,0,.5>]
[0.5714 color rgbt < 0,1,1,.5>]
[0.7143 color rgbt < 0,0,1,.5>]
[0.8571 color rgbt <.5,0,1,.5>]
[1.0000 color rgbt <.5,0,1,1>]
}
frequency 30
rotate <90,0,-6>
translate <.06228,0.716595,0>
}
finish {ambient 1 diffuse 0}
}
no_shadow
no_reflection
rotate <0,0,5>
}
difference { // "Rainbow-colored" beam leaving the droplet
box {<-10,0,.0002>,<.3,10,.0003> rotate <0,0,38.325> translate <-.827,.557,0>}
plane {<0,-1,0>,0 rotate <0,0,14.325> translate <-.697,.717,0>}
cylinder {<0,0,-1>,<0,0,1>,1}
pigment {
radial
color_map {
[0.0000 color rgbt < 1,0,0,1>]
[0.1429 color rgbt < 1,0,0,0>]
[0.2857 color rgbt < 1,1,0,0>]
[0.4286 color rgbt < 0,1,0,0>]
[0.5714 color rgbt < 0,1,1,0>]
[0.7143 color rgbt < 0,0,1,0>]
[0.8571 color rgbt <.5,0,1,0>]
[1.0000 color rgbt <.5,0,1,1>]
}
frequency 15
rotate <90,0,-21.3>
translate <-0.59003,0.744316,0>
}
finish {ambient 1 diffuse 0}
no_shadow
no_reflection
}
difference { // Incoming white light beam
box {<-100,-1,-.0001>,<0,-.87,.0001>}
sphere {0,1}
pigment {
gradient y
color_map {
[0.0 color rgbt<1,1,1,1>]
[0.2 color rgbt<1,1,1,.9>]
[0.3 color rgbt<1,1,1,.5>]
[0.5 color rgbt<1,1,1,0>]
[0.7 color rgbt<1,1,1,.5>]
[0.8 color rgbt<1,1,1,1,.9>]
[1.0 color rgbt<1,1,1,1>]
}
scale .13
translate <0,-1,0>
}
finish {
ambient 1
diffuse 0
}
no_shadow
no_reflection
rotate <0,0,-20.825>
}
#end
difference { // Droplet - actually a hemisphere for appearance reasons
sphere {0,1}
plane {<0,0,1>,.001}
pigment {color rgbt<.7,.8,1,.7>}
finish {
phong 1
phong_size 80
reflection .6
metallic
}
}
camera { // Viewpoint
up <0,1,0> right <1,0,0> // Assume square-shaped image format
location <-.2,0,-2.5>
look_at <-.2,0,0>
}
light_source { // Light
<-10,0,-10>
color rgb 1.5
rotate <0,0,-20.825>
}
----
POV-Ray "code" for the landscape with rainbows, observer and "droplet cloud":
/*
=================================================
"Landscape" showing the formation of two rainbows
-------------------------------------------------
Created by Søren Peo Pedersen - see my user page
at http://da.wikipedia.org/wiki/Bruger:Peo
=================================================
*/
plane { // Flat terrain in the foreground
<0,1,0>,0
pigment {color rgb <.65,.7,.6>}
finish {ambient .4}
}
plane {<0,0,-1>,0 // Invisible surface carrying the grey "cloud"
pigment {
cylindrical
color_map {
[0.0 color rgbt<1,1,1,1>]
[0.5 color rgbt<.7,.7,.7,0>]
[1.0 color rgbt<.5,.5,.5,0>]
}
rotate <90,0,0>
scale 7
translate <8,8,0>
turbulence .3
}
finish {ambient 1 diffuse 0}
}
sky_sphere { // Provides a sky with light blue color gradient
pigment {
gradient y
color_map {
[0 color rgb <.1,.3,.2>]
[.5 color rgb <.65,.7,.6>]
[.5 color rgb <.8,.9,1>]
[1 color rgb <.2,.5,1>]
}
translate -.5
scale 2
turbulence .1
}
}
union { // The observer in the lower, left-hand corner
sphere {0,1 scale <.2,.8,.2> pigment {color rgb <0,0,1>} finish {ambient .5}}
sphere {<0,1,0>,.2 pigment {color rgb <1,.7,.4>} finish {ambient .5}}
translate <-6.5,0,-4>
}
#macro ColorFunction(Plads) // Creates a color from the spectrum (from 0=red to 1=purple)
#local U=4.9999*(Plads-int(Plads*4.9999)/4.9999);
#switch (Plads)
#range (0.0,0.2) color rgb < 1 , U , 0 > #break
#range (0.2,0.4) color rgb <1-U, 1 , 0 > #break
#range (0.4,0.6) color rgb < 0 , 1 , U > #break
#range (0.6,0.8) color rgb < 0 ,1-U, 1 > #break
#range (0.8,1.0) color rgb < U , 0 , 1 > #break
#end
#end
#macro Beam(Num,Primay) // Renders a white incoming beam, and a colored "returned" beam
#local R=seed(145*Num);
#local Lgd=11+rand(R)*3;
#if (Primay)
#local Vinkel=42.3-20.825-1.7*Num;
#else
#local Vinkel=50.7-20.825+2.9*Num;
#end
merge {
cylinder {0,<Lgd,0,0>,.01
pigment {ColorFunction(Num)}
finish {ambient 1 diffuse 0}
rotate <0,0,Vinkel>
translate <-6.5,1,-4>
no_shadow
}
cylinder {
<-100,0,0>,0,.01
rotate <0,0,-20.825>
translate <-6.5+Lgd*cos(radians(Vinkel)),1+Lgd*sin(radians(Vinkel)),-4>}
pigment {color rgb 1}
finish {ambient 1 diffuse 0}
}
#end
// Light beams forming the primary rainbow:
#object {Beam(0.00,yes)}
#object {Beam(0.25,yes)}
#object {Beam(0.50,yes)}
#object {Beam(0.75,yes)}
#object {Beam(1.00,yes)}
// Light beams forming the secondary rainbow:
#object {Beam(0.00,no)}
#object {Beam(0.25,no)}
#object {Beam(0.50,no)}
#object {Beam(0.75,no)}
#object {Beam(1.00,no)}
// Totally transparent pigment set of primary and secondary arc
#local ArcPgmt0=pigment {
cylindrical
color_map {
[0.0 color rgbt<1,1,1,1>]
[0.00001 color rgbt<1,0,1,1>]
[0.022 color rgbt<0,0,1,1>]
[0.044 color rgbt<0,1,1,1>]
[0.066 color rgbt<0,1,0,1>]
[0.088 color rgbt<1,1,0,1>]
[0.11 color rgbt<1,0,0,1>]
[0.11 color rgbt<1,1,1,1>]
[0.39 color rgbt<1,1,1,1>]
[0.39 color rgbt<1,0,0,1>]
[0.40 color rgbt<1,1,0,1>]
[0.41 color rgbt<0,1,0,1>]
[0.42 color rgbt<0,1,1,1>]
[0.43 color rgbt<0,0,1,1>]
[0.44 color rgbt<1,0,1,1>]
[0.44 color rgbt<1,1,1,1>]
[1.0 color rgbt<1,1,1,1>]
}
}
// Slightly non-transparent pigment set of primary and secondary arc
#local ArcPgmt1=pigment {
cylindrical
color_map {
[0.0 color rgbt<1,1,1,1>]
[0.00001 color rgbt<1,0,1,.7>]
[0.022 color rgbt<0,0,1,.7>]
[0.044 color rgbt<0,1,1,.7>]
[0.066 color rgbt<0,1,0,.7>]
[0.088 color rgbt<1,1,0,.7>]
[0.11 color rgbt<1,0,0,0>]
[0.11 color rgbt<1,1,1,1>]
[0.39 color rgbt<1,1,1,1>]
[0.39 color rgbt<1,0,0,.2>]
[0.40 color rgbt<1,1,0,.2>]
[0.41 color rgbt<0,1,0,.2>]
[0.42 color rgbt<0,1,1,.2>]
[0.43 color rgbt<0,0,1,.2>]
[0.44 color rgbt<1,0,1,.2>]
[0.44 color rgbt<1,1,1,1>]
[1.0 color rgbt<1,1,1,1>]
}
}
// Surface carrying the two rainbows in front of the grey "cloud"
plane {<-1,0,0>,0
pigment {
radial
pigment_map {
[0.0 ArcPgmt1]
[0.2 ArcPgmt0]
[0.8 ArcPgmt0]
[1.0 ArcPgmt1]
}
rotate <0,0,90>
scale <4.18495,4.18495,7>
translate <0,1,-4>
}
finish {ambient 1 diffuse 0}
hollow
no_shadow
}
// Viewpoint
camera {
location <-5,5,-15>
look_at <1,4,0>
}
// "Infinitely" remote light source with parallel rays:
light_source {
<-1000,0,0>
color rgb 1.5
rotate <0,0,-20.825>
parallel
}
Items portrayed in this file
subiectul reprezentat
image/png
Istoricul fișierului
Apăsați pe Data și ora pentru a vedea versiunea trimisă atunci.
Data și ora | Miniatură | Dimensiuni | Utilizator | Comentariu | |
---|---|---|---|---|---|
actuală | 9 aprilie 2005 15:56 | 721x902 (280 KB) | Peo~commonswiki | Diagram showing how primary and secondary rainbows are formed. Details follow soon! {{GFDL-self}} |
Utilizarea fișierului
Nicio pagină nu se leagă la această imagine.
Utilizarea globală a fișierului
Următoarele alte proiecte wiki folosesc acest fișier:
- Utilizare la af.wikipedia.org
- Utilizare la an.wikipedia.org
- Utilizare la arc.wikipedia.org
- Utilizare la ay.wikipedia.org
- Utilizare la bat-smg.wikipedia.org
- Utilizare la ba.wikipedia.org
- Utilizare la beta.wikiversity.org
- Utilizare la be.wikipedia.org
- Utilizare la bg.wikipedia.org
- Utilizare la bn.wikipedia.org
- Utilizare la br.wikipedia.org
- Utilizare la bs.wikipedia.org
- Utilizare la ca.wikipedia.org
- Utilizare la cdo.wikipedia.org
- Utilizare la cs.wikipedia.org
- Utilizare la cv.wikipedia.org
- Utilizare la cy.wikipedia.org
- Utilizare la da.wikipedia.org
- Utilizare la dsb.wikipedia.org
- Utilizare la en.wikipedia.org
- Utilizare la en.wikiversity.org
- Utilizare la eo.wikipedia.org
- Utilizare la es.wikipedia.org
- Utilizare la et.wikipedia.org
- Utilizare la eu.wikipedia.org
- Utilizare la fr.wikibooks.org
- Utilizare la fur.wikipedia.org
- Utilizare la ga.wikipedia.org
- Utilizare la gd.wikipedia.org
- Utilizare la he.wikipedia.org
- Utilizare la hi.wikipedia.org
- Utilizare la hr.wikipedia.org
- Utilizare la hsb.wikipedia.org
- Utilizare la hu.wikipedia.org
- Utilizare la incubator.wikimedia.org
- Utilizare la is.wikipedia.org
- Utilizare la it.wikipedia.org
- Utilizare la ka.wikipedia.org
- Utilizare la kv.wikipedia.org
- Utilizare la la.wikipedia.org
- Utilizare la li.wikipedia.org
- Utilizare la lmo.wikipedia.org
- Utilizare la lt.wikipedia.org
- Utilizare la lv.wikipedia.org
- Utilizare la mai.wikipedia.org
- Utilizare la mk.wikipedia.org
Vizualizați utilizările globale ale acestui fișier.