Картинка:Euclidian and non euclidian geometry.png

от Уикипедия, свободната енциклопедия

Няма версия с по-голям размер.

Euclidian_and_non_euclidian_geometry.png (790 × 310 пиксела, размер на файла: 47 KB, MIME тип: image/png)

Емблемата на Общомедия Този файл се намира в Общомедия — хранилището за свободно съдържание на Фондация Уикимедия.

Shows three "blocks" with varying surfaces, whereon a point and som lines are "drawn" to demonstrate

  1. euclidian
  2. elliptical and
  3. hyperbolic geometry

To be exact, the hyperbolic surface was approximated using a chunk of the "inside" of a torus - this may not be perfectly accurate, but apparently it "looks right" in this illustration. :-)

Rendered using POV-Ray (see http://www.povray.org) and the scene description "code" below, then cropped and "numbered" using a graphics software package.


 /*
 ====================================================================
 Surfaces demonstrating euclidian, elliptical and hyperbolic geometry
 --------------------------------------------------------------------
 Created by Søren Peo Pedersen - see my user page at
 http://da.wikipedia.org/wiki/Bruger:Peo
 ====================================================================
 */
 
 // Macro for texture with background pattern, lines, and point "marker"
 #macro SurfaceDrawing (
   Point,        // Position vector: Location of white point
   RefLineMove,  // Transformation: Where to place the yellow reference line
   Lines         // Object that renders the blue line(s)
   )
 
     #local BasePattern=pigment {  // The underlying, drak grey checkerboard pattern
         checker
         color rgb 0.4
         color rgb 0.6
         scale <1,1000,1>
         }
 
     #local SP1 = pigment {    // Checkerboard pattern with yellow "reference line" added
         object {box {<-.07,-10,-10>,<.07,10,10> transform{RefLineMove}}
             pigment {BasePattern}
             pigment {color rgb <1,.8,.3>}
             }
         }    
 
     #local SP2 = pigment {    // Checkerborad + yellow line with user-defined (blue) lines added
         object {Lines
             pigment {SP1}
             pigment {color rgb <.6,.8,1>}
             }
         }    
 
     #local SP3 = pigment {    // Checkerboard + lines with whit point "marker" added
         object {
             sphere { Point, .2 }
             pigment {SP2}
             pigment {color rgb 1}
             }
         }
 
     pigment {   // Definition of pigment, confined to a box slightly smaller than the "blocks"
         boxed   // to make the lines and point only appear on the top of the blocks
         pigment_map {
             [0.0000 BasePattern scale .5 translate <0,-1,0>]
             [0.0001 BasePattern scale .5 translate <0,-1,0>]
             [0.0001 SP3 scale .5 translate <0,-1,0>]
             [1.0000 SP3 scale .5 translate <0,-1,0>]
             }
         scale <2,2,2> translate <0,2,0>
         }          
     finish {ambient .7 diffuse .3}
 #end  // End of macro
 
 plane {<0,1,0>,0      // White "tabletop" to receive shadows of the blocks (helps visualisation)
     pigment {color rgb 1}
     finish {ambient .8 diffuse .5}
     }
 
 box {<-2,0,-2>,<2,2,2>  // Demonstrating euclidean geometry
     texture {
         SurfaceDrawing(<-.3,2,0>,
             transform {rotate <0,35,0> translate <.3,0,0>},
             box {<-.07,-10,-10>,<.07,10,10> rotate <0,35,0> translate <-.3,0,0>}
             )
         }
     rotate <0,-20,0>
     translate <-6,0,0>
     }
 
 intersection {          // Demonstrating elliptical, or "Riemann", geometry
     box {<-2,0,-2>,<2,5,2>}
     sphere {<0,0,0>,2.8285}
     texture {
         SurfaceDrawing(<.65,2.45,1.25>,
             transform {rotate <0,5,0>  rotate <-45,35,0>},
             box {<-.07,-10,-10>,<.07,10,10> rotate <0,-4,0> rotate <-45,35,0>}
             )
         }
     rotate <0,-20,0>
     translate <0,0,0>
     }
 
 intersection {          // Demonstrating hyperbolic geometry
     box {<-2,0,-2>,<2,4,2>}
     torus {7.03,5 rotate <90,90,0> translate <0,4,0>}
     texture {
         SurfaceDrawing(<0,2.3,1>,
             transform {rotate <0,90,0> rotate <-40,0,0> translate <0,4,0>},
             merge {
                 box {<-.07,-10,-10>,<.07,10,10>
                     rotate <0,85,0> rotate <-30,0,0> translate <0,4,0>
                     }
                 box {<-.07,-10,-10>,<.07,10,10>
                     rotate <0,95,0> rotate <-30,0,0> translate <0,4,0>
                     }
                 }
             )
         }
     rotate <0,-20,0>
     translate <6,0,0>
     }
 
 camera {  // Viewpoint
     location <0,2100,-800>
     look_at <.5,0,0>
     angle .47
     }
 
 light_source {<-50,200,-100> color rgb 1.5} // Illumination


I, the author of this work, hereby publish it under the following license:
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

العربية | Asturianu | Български | বাংলা | ইমার ঠার | Brezhoneg | Bosanski | Català | Sinugboanong Binisaya | Česky | Dansk | Deutsch | Ελληνικά | English | Esperanto | Español | Eesti | Euskara | فارسی | Suomi | Français | Galego | עברית | Hrvatski | Magyar | Bahasa Indonesia | Ido | Íslenska | Italiano | 日本語 | ქართული | 한국어 | Kurdî / كوردي | Latina | Lëtzebuergesch | Lietuvių | Bahasa Melayu | Nnapulitano | Nederlands | Norsk (nynorsk) | Norsk (bokmål) | Polski | Português | Română | Русский | Slovenčina | Slovenščina | Shqip | Српски | Svenska | తెలుగు | ไทย | Türkçe | Українська | اردو | Tiếng Việt | Volapük | 中文(简体) | 中文(繁體) | +/-

Следните страници сочат към файла: