ملف:Euclidian and non euclidian geometry.png

الملف الأصلي(4٬000 × 1٬500 بكسل حجم الملف: 128 كيلوبايت، نوع 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, dark 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 copyright holder of this work, hereby publish it under the following licenses:
GFDL
يسمح بنسخ و توزيع و/أو تعديل هذا المستند وفق شروط رخصة الوثائق الحرة (جنو) إصدار 1.2 أو أي إصدار أحدث المنشورة من قبل مؤسسة البرمجيات الحرة بدون أقسام ثابته و نصوص الغلاف الأمامي و الخلفي.
قالب:Cc-by-sa-3.0-migrated
[You may select the license of your choice.] Error: {{Lang}}: text has italic markup (help)

تاريخ الملف

اضغط على زمن/تاريخ لرؤية الملف كما بدا في هذا الزمن.

زمن/تاريخصورة مصغرةالأبعادمستخدمتعليق
حالي ★ مراجعة معتمدة
01:31، 9 أكتوبر 2023
تصغير للنسخة بتاريخ 01:31، 9 أكتوبر 20234٬000 × 1٬500 (128 كيلوبايت)Pastakhov (نقاش | مساهمات)Upload https://upload.wikimedia.org/wikipedia/commons/5/5e/Euclidian_and_non_euclidian_geometry.png

لا يوجد صفحات تصل لهذه الصورة.

معلومات الصورة (ميتا)