File:Leiterschaukelversuch.ogv

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

Original file(Ogg Theora video file, length 30 s, 1,920 × 1,080 pixels, 952 kbps, file size: 3.41 MB)

Captions

Captions

Add a one-line explanation of what this file represents

Summary[edit]

Description
Deutsch: Leiterschaukelversuch, Details next weekend.
Date
Source Own work
Author Miessen

Source code[edit]

leiterschaukel.pov[edit]

// povray 3.6


// Leiterschaukelversuch
//
// Demonstration der Lorentzkraft (im engeren Sinne) am stromdurchflossenen Leiter.
// Mit einer einstellbaren Stromquelle wird ein beweglich aufgehängter Leiterbügel
// bestromt, wobei sich dessen Querstück in Magnetfeld eines Hufeisenmagneten befindet.
// Abhängig von der (technischen) Stromrichtung ändert sich der Ausschlag des Leiterbügels

// Wesentliche Bestandteile bilden die einstellbare Stromquelle, die bewegliche
// Leiterschaukel, der Hufeisenmagnet, die Aufhängung und die Verdrahtung. Die Sequenz
// Ausschlag nach rechts und Ausschlag nach links wird dabei zweimal durchlaufen



// Achsen
// x -> links nach rechts
// y -> von unten nach oben
// z -> tiefe

global_settings {
   adc_bailout 0.00392157
   assumed_gamma 1.5
   noise_generator 2
   charset utf8
   
}


light_source {
   <10, 25, -35>,
   rgb <1.5, 1.5, 1.5>
   shadowless
}

camera {
   perspective
   location <10, 25, -35>
   sky <0, 1, 0>
   direction <0, 0, 1>
   right <1, 0, 0>
   up <0, 1, 0>
   look_at <5, 5, 0>
}

/*
camera { // X
   perspective
   location <45, 0, 0>
   sky <0, 1, 0>
   direction <0, 0, 1>
   right <1, 0, 0>
   up <0, 1, 0>
   look_at <0, 5, 0>
}

camera { // Z
   perspective
   location <0, 0, -45>
   sky <0, 1, 0>
   direction <0, 0, 1>
   right <1, 0, 0>
   up <0, 1, 0>
   look_at <0, 5, 0>
}
*/

#include "baukasten.pov"

#include "verdrahtung.pov"



// *******
// *
// * MAIN
// *
// *******

// Sequenz:
// 2x Durchlaufen
// pause 0,025 // anstieg 0,075 // halten 0,05 // abfall 0,075
// pause 0,05 // gegen anstieg 0,075 // halten 0,05 // abfall 0,075 // pause 0,025

// Variable faktor hat den Wertebereich -1..+1
#declare faktor = 0;


// 2x Durchlaufen
#declare my_clock = clock;

#if (my_clock > 0.5)
  #declare my_clock = my_clock - 0.5;
#end

// pause 0,025
#declare progress = 0.025;

#if (my_clock>progress) // anstieg 0,075
  #declare faktor = (my_clock-progress)/0.075;
#end
#declare progress = progress + 0.075;

#if ( my_clock> progress ) // halten 0,05
  #declare faktor = 1;
#end
#declare progress = progress + 0.05;

#if ( my_clock>progress ) // abfall 0,075
  #declare faktor = 1 - (my_clock-progress)/0.075;
#end
#declare progress = progress + 0.075;

#if ( my_clock>progress ) // halten 0,05
  #declare faktor = 0;
#end
#declare progress = progress + 0.05;

#if ( my_clock>progress ) // gegenanstieg 0,075
  #declare faktor = -1*(my_clock-(progress))/0.075;
#end
#declare progress = progress + 0.075;

#if ( my_clock>progress ) // halten 0,05
  #declare faktor = -1;
#end
#declare progress = progress + 0.05;

#if ( my_clock>progress ) // abfall 0,075
  #declare faktor = -1 - -1 * (my_clock-progress)/0.075;
#end
#declare progress = progress + 0.075;

#if ( my_clock>progress ) // pause 0,025
  #declare faktor = 0;
#end



object {
  leiterschaukel
  rotate z*faktor*15
  translate <0, 15, 0>  
}

object {
  aufhaengung
  translate <0, 15, 0>  
}



object {
  hufeisen
}


union {
  object {
    stromquelle
  }
  object {
    drehknopf
    rotate z*faktor*-135
    translate<0, 5, 0>
  }
  translate<15, -5, 11>
}

object {
  verdrahtung
}


// Raster oder wie auch immer

object { // Platte
  Grid_Plate(
      0, 0,
      3, 0.05,
      pigment{
        color rgb<1,1,1>*1.1
      },
      1,
      <24, 0, 27>,
      <-12, -1, -9>, 
)
  translate<0, -5,0>
}

/*
object {
  Grid(3, 0.05,
      pigment{
        color rgb<1,1,1>*1.1
      } )
  translate<0, -5,0>
}
*/

sky_sphere{
  pigment{
    gradient <0,1,0> // Hintergrund
    color_map {
      [0   color rgb<1,1,1>         ]//White
      [0.4 color rgb<0.24,0.34,0.56>]//~Navy
      [0.6 color rgb<0.24,0.34,0.56>]//~Navy
      [1.0 color rgb<1,1,1>         ]//White
    }
    scale 2
  }
} // end of sky_sphere

// EOF

baukasten.pov[edit]

// povray 3.6

// Baukasten für den Leiterschaukelversuch
//
// * einstellbare Stromquelle
// * Aufhängung
// * Leiterschaukel
// * Hufeisenmagnet


// Wesentliche Bestandteile bilden die einstellbare Stromquelle, die bewegliche
// Leiterschaukel, der Hufeisenmagnet, die Aufhängung und die Verdrahtung. Die Sequenz
// Ausschlag nach rechts und Ausschlag nach links wird dabei zweimal durchlaufen




#declare drehknopf = union { // Drehknopf
  cone { // Drehknopf der Stromquelle
    <0, 0, 0>, 1.5 <0, 0, -2>, 1
  }
  intersection {
    box {
      <-0.2, 0, 0>, <0.2, 2, -2.1>
    }
    cone { // Zeiger
      <0, 0, 0>, 1.7 <0, 0, -2>, 1.2
    }
  }
  
  pigment { // grau
    color rgb <0.5, 0.5, 0.6>
  }

}

#declare beschriftung_knopf = text { // Beschriftung für den Drehknopf
  // ttf "arial.ttf" // für windows
  // ttf "/usr/share/fonts/truetype/DejaVuSans.ttf",
  // cp /usr/share/fonts/truetype/DejaVuSans.ttf DejaVuSans.ttf // für linux
  ttf "DejaVuSans.ttf",
  "− ← 0 → +", 0.025, 0
  pigment{ // schwarz
    color rgb<0, 0, 0>
  }
}

#declare beschriftung_anschluss = union { // Beschriftung für die Anschlüsse

// länge 4

  cylinder { // Skalenteiler
    <1, 0, 0>, <2.5, 0, -0>, 0.1
    scale <1, 1, 0.025> // in der z-Achse plätten
  }
  cone { // Anschluss rot
    <1, 0, 0>, 0.25 <0, 0, -0>, 0
    scale <1, 1, 0.025> // in der z-Achse plätten
  }

  text {
    // ttf "courier.ttf" // für windows
    // ttf "/usr/share/fonts/truetype/DejaVuSerif.ttf",
    // cp /usr/share/fonts/truetype/DejaVuSerif.ttf DejaVuSerif.ttf // für linux
    ttf "DejaVuSerif.ttf",
    "I", 0.025, 0
    
    translate<1, 1, -0.025>
  
  }

  pigment { // schwarz
    color rgb<0, 0, 0>
  }


}

#declare stromquelle = union {
  box { // Gehäuse
    <-7, 0, 0>, <7, 11, 14>
    pigment { // grau
      color rgb <0.7, 0.7, 0.8>
    }
  }

  // http://www.f-lohmueller.de/pov_tut/animate/anim113e.htm

  #declare SkalaNr = 0;
  #declare Flat = <1, 1, 0.025>; // in der z-Achse plätten

  union {
    #while (SkalaNr<=10)

      cylinder { // Skalenteiler
        // platter Zylinder
        #if (SkalaNr = 0 | SkalaNr = 5 | SkalaNr = 10 )
          <2, 0, 0>, <2.75, 0,0>, 0.1
        #else 
          <2, 0, 0>, <2.5, 0,0>, 0.1
        #end
        scale Flat
        rotate z*(27*SkalaNr-45)
      }
      #declare SkalaNr=SkalaNr+1;
    #end
    
    translate<0, 5, 0>
    pigment { // schwarz
      color rgb <0, 0, 0>
    }

//    translate<0, 5, -0.025>
  }
  
  object {
    beschriftung_knopf
    translate x*-1* max_extent(beschriftung_knopf)/2 // hack -> center text
    translate<0, 8, -0.025>
  }
  
  cone { // Anschluss rot
    <0, 0, 0>, 0.5 <0, 0, -2>, 0.3

    translate<5.5, 2, 0>
    pigment { // rot
      color rgb <1, 0, 0>
    }
  }

  cone { // Anschluss schwarz
    <0, 0, 0>, 0.5 <0, 0, -2>, 0.3

    translate<4, 2, 0>
    pigment { // schwarz
      color rgb <0.1, 0.1, 0.1>
    }
  }
  object {
    beschriftung_anschluss
    translate<3.5, 3, 0>
  }

}



#declare aufhaengung = union { // Aufhängung für die Leiterschaukel
  union { // Standfuß
    cylinder { // Säule
      <0, 4, 0>, <0, -19, 0>, 0.3
    }
    /*
    box { // Säule
      <-0.75, 2, -0.75>, <0.75, -19, 0.75>
    }
    */
    box { // Bodenplatte
      <-3, -19, -3>, <3, -20, 3>
    }
    translate<0,0,9>
    pigment { // grau
      color rgb <0.5, 0.5, 0.5>
    }
  }
  /*
  cylinder { // Haltebalken
    <0, 1, -5>, <0, 1, 9>, 0.5

    pigment { // grau
      color rgb <0.5, 0.5, 0.5>
    }
  }
  */
  box { // Haltebalken
    <-0.6, -0.6, -5>, <0.6, 0.6, 10>

    translate<0,1.5,0>
    pigment { // grau
      color rgb <0.5, 0.5, 0.5>
    }
  }

  
  
  union { // Verbinder
    cylinder { // Verbinder hinten
      <0, 0, 4>, <0, 3, 4>, 0.15
    }
    sphere { // Eckkugel hinten
      <0, 0, 4>, 0.15
    }
    
    cylinder { // Verbinder vorne
      <0, 0, -4>, <0, 3, -4>, 0.15
    }
    sphere { // Eckkugel vorne
      <0, 0, -4>, 0.15
    }

    pigment { // orange
      color rgb <1, 0.388235, 0.235294>
    }
  }

  cone { // Anschluss blau
    <0, 0, 0>, 0.5 <0, 2, 0>, 0.3

    translate<0, 2.1, -4>
    pigment { // blau
      color rgb <0.2, 0.2, 1>
    }
  }
  cone { // Anschluss blau
    <0, 0, 0>, 0.5 <0, 2, 0>, 0.3

    translate<0, 2.1, +4>
    pigment { // blau
      color rgb <0.2, 0.2, 1>
    }
  }


  
  
}


#declare leiterschaukel = union { // Leiterschaukel
// Beschreibung:
//
// Der bewegliche Teil der Leiterschaukel U-foermig
//
// Ausrichtung:
//
// Oeffnung nach oben in der y-z-Ebene liegend
//
// Dimensionen:
//
// Lange: 15 / Tiefe
//
// Nullpunkt:
//
// Aufhaengepunkt der Leiterschaukel



  cylinder { // Querbalken
    <0, -15, 4>, <0, -15, -4>, 0.15
  }
  sphere { // Eckkugel vorne
    <0, -15, -4>, 0.15
  }
  sphere { // Eckkugel hinten
    <0, -15, 4>, 0.15
  }
  cylinder { // vorderer Balken
    <0, 0, -4>, <0, -15, -4>, 0.15
  }
  cylinder { // hinterer Balken
    <0, 0, 4>, <0, -15, 4>, 0.15
  }

  pigment { // orange
    color rgb <1, 0.388235, 0.235294>
  }

}

#declare hufeisen = union { // Hufeisenmagnet
// Beschreibung :
//
// Hufeisenmagnet
//
// Ausrichtung:
//
// Oeffnung zeigt nach rechts
// Nord/Suedpol sind zur y-Achse ausgerichtet
//
// Dimensionen:
//
// Breite: 5 / Hoehe: 10 / Laenge: 13 (Armlange: 12 / Dicke: 1)
// 
// Nullpunkt:
//
// Zwischen den Polschuhen auesseres Drittel

  merge { // Nordpol (rot)
    box { // magnetteil
      <0, 0, -2.5>, <1, 4, 2.5>
    }
    box { // polschuh
      <0, 4, -2.5>, <13, 5, 2.5>
    }
    pigment { // rot
      color rgb <1, 0, 0>
    }
  }

  merge {
    box { // magnetteil
      <0, 0, -2.5>, <1, -4, 2.5>
    }
    box { // polschuh
      <0, -4, -2.5>, <13, -5, 2.5>
    }  
  
    pigment { // gruen
      color rgb <0.168627, 0.678431, 0>
    }
  }
  translate <-9, 0, 0>  
}


// Grid macro erzeugt eine gerasterte bodenebene

// http://www.f-lohmueller.de/pov_tut/calc/math_300e.htm
#macro Grid_Plate(
    RD1, Width1,//primary raster distance/width,
    RD2, Width2,//secondary raster distance/width,
    Base_Texture, //  non = pigment { Clear }
    Intensity, // Line gray intensity
    Start_Box, End_Box, // vectors
  ) //------------------------------------------
//----------------------------------------------
box{ Start_Box,End_Box
     texture{ Base_Texture }
  #if (RD1 > 0 ) // raster big  RD1, Width1,
    texture { Grid_Lines(RD1,Width1,Intensity) }
    texture { Grid_Lines(RD1,Width1,Intensity)
              rotate<0,90,0>}
  #end
  #if (RD2 > 0 ) // raster small RD2, Width2,
    texture { Grid_Lines(RD2,Width2,Intensity) }
    texture { Grid_Lines(RD2,Width2,Intensity)
        rotate<0,90,0>}
  #end
} // end box -----------------------------------
#end // ------------------------------ end of macro
//------------------------------------- ////////////


#macro Raster(RScale, RLine)
pigment{
 gradient x scale RScale
 color_map{
     [0.000   color rgb<1,1,1>*0.5]
     [0+RLine color rgb<1,1,1>*0.5]
     [0+RLine color rgbt<1,1,1,1>]
     [1-RLine color rgbt<1,1,1,1>]
     [1-RLine color rgb<1,1,1>*0.5]
     [1.000   color rgb<1,1,1>*0.5]
    }}
#end// of "Raster(RScale, RLine)"




#macro Grid_Lines (RScale, LineW, Intensity_)
 pigment{ gradient x scale RScale
          color_map{
           [0.000   color rgbt<1,1,1,0>*Intensity_]
           [0+LineW color rgbt<1,1,1,0>*Intensity_]
           [0+LineW color rgbt<1,1,1,1>]
           [1-LineW color rgbt<1,1,1,1>]
           [1-LineW color rgbt<1,1,1,0>*Intensity_]
           [1.000   color rgbt<1,1,1,0>*Intensity_]
           } // end color_map
         } // end pigment
 #end// of Raster(RScale, HLine)-macro

//---------------<<<< Grid macro

#macro Grid(RasterScale, RasterHalfLine, Background_pigment)
  plane{<0,1,0>,0
  //layered textures!
  texture{Background_pigment}
      // 1st layer - base color
  texture{
    Raster( RasterScale, RasterHalfLine)
   }
  texture{
    Raster( RasterScale, RasterHalfLine)
      rotate<0,90,0>
    }
  }// end of plane
#end // end of "Grid(...)"-macro 
 
 
// EOF

verdrahtung.pov[edit]

// povray 3.6

// Verdrahtung für den Leiterschaukelversuch
//
// Verdrahtung zwischen Stromquelle und Aufhängung
// mit vielen Magic-Numbers



#declare verdrahtung = union {
  union { // rot
    // Startpunkt
    // Anschluss rot x:5.5 y: 1.5 z: 2
    union { // Stromquelle
      cylinder { // Anschluss Stromquelle
        <0, 0, 0>, <0, 0, -2.5>, 0.2
      }
      sphere { // Eckkugel Stromquelle
        <0, 0, -2.5>, 0.2
      }
      cylinder { // von der Stromquelle zur Bodenplatte
        <0, 0, -2.5>, <-17, 0, -2.5>, 0.2
      }

      translate<5.5, 2, -2>
      
      translate<15, -5, 11>
    }
    
    union { // Aufhängung
      cylinder { // Anschluss Aufhängung vorne
        <-0.75, 0, 0>, <0.75, 0, 0>, 0.15
        pigment { // orange
          color rgb <1, 0.388235, 0.235294>
        }
      }
      cylinder { // Anschluss Aufhängung vorne
        <0.75, 0, 0>, <3.5, 0, 0>, 0.2
      }
      sphere { // Eckkugel Anschluss Aufhängung
        <3.5, 0, 0>, 0.2
      }
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <3.5, 0, 0>, <3.5, 0, 2.5>, 0.2
      }
      
      translate<0, 3, 4>
    
      translate <0, 15, 0>  
    }
    
    union { // Verbindung
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <0, 0, 0>, <0, 21, 0>, 0.2
      }
      sphere { // Eckkugel oben
        <0, 21, 0>, 0.2
      }
      sphere { // Eckkugel unten
        <0, 0, 0>, 0.2
      }
      translate <3.5, -4+1, 6.5>
    
    }
  
  
    pigment { // rot
      color rgb <1, 0, 0>
    }
  }
  
  union { // schwarz

    // Anschluss schwarz x:4 y: 1.5 z: 2
    union { // Stromquelle
      cylinder { // Anschluss Stromquelle
        <0, 0, 0>, <0, 0, -1>, 0.2
      }
      sphere { // Eckkugel Stromquelle
        <0, 0, -1>, 0.2
      }
      cylinder { // von der Stromquelle zur Bodenplatte
        <0, 0, -1>, <-17, 0, -1>, 0.2
      }
      
      translate<4, 2, -2>
      
      translate<15, -5, 11>
    }
    
    union { // Aufhängung
      cylinder { // Anschluss Aufhängung vorne
        <-0.75, 0, 0>, <0.75, 0, 0>, 0.15
        pigment { // orange
          color rgb <1, 0.388235, 0.235294>
        }
      }
      cylinder { // Anschluss Aufhängung vorne
        <0.75, 0, 0>, <2, 0, 0>, 0.2
      }
      sphere { // Eckkugel Anschluss Aufhängung
        <2, 0, 0>, 0.2
      }
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <2, 0, 0>, <2, 1.5, 0>, 0.2
      }
      sphere { // Eckkugel Anschluss Aufhängung
        <2, 1.5, 0>, 0.2
      }
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <2, 1.5, 0>, <2, 1.5, 12>, 0.2
      }
      /*
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <2, 0, 0>, <2, 0, 4>, 0.2
      }
*/

      translate<0, 3, -4>
    
      translate <0, 15, 0>  
    }

    union { // Verbindung
      cylinder { // Anschluss Aufhängung vorne zur Säule
        <0, 0, 0>, <0, 22.5, 0>, 0.2
      }
      sphere { // Eckkugel oben
        <0, 22.5, 0>, 0.2
      }
      sphere { // Eckkugel unten
        <0, 0, 0>, 0.2
      }
      translate <2, -4+1, 8>    
    }
    

    pigment { // schwarz
      color rgb <0.1, 0.1, 0.1>
    }
  }
}


// EOF

leiterschaukel.ini[edit]

povray 3.6
Die komplette Szene soll 30 Sekunden dauern und mit 25 FPS laufen.


Input_File_Name=leiterschaukel.pov

Initial_Clock=0 Final_Clock=1 Initial_Frame=0 Final_Frame=1

Final_Frame=10
Final_Frame=60
Final_Frame=300

Final_Frame=750

Final_Frame=1500
+W320 +H200
+W640 +H400
+W960 +H540

+W1920 +H1080

Output_File_Name=out/

Output_File_Name=r_leiterschaukel Cyclic_Animation=on Pause_when_Done=off Antialias=on

Display=off

ogv-ing.txt[edit]

  1. /bin/bash

rm -rf out; rm -rf yuv; rm -rf ogv; rm *png;

mkdir out; mkdir yuv; mkdir ogv;


povray leiterschaukel.ini;


mv *png ./out;

  1. scheitert ersterer, kommt letzterer zum Zug.

png2yuv -j ./out/r_leiterschaukel%02d.png -f 25 -I p -b 1 > ./yuv/out.yuv || png2yuv -j ./out/r_leiterschaukel%03d.png -f 25 -I p -b 1 > ./yuv/out.yuv;

./ffmpeg2theora-0.29.linux32.bin ./yuv/out.yuv -F 25 -v 9 -o ./ogv/leiterschaukel.ogv;


  1. rm -rf out;
  2. rm -rf yuv;

firefox ./ogv/leiterschaukel.ogv;

Licensing[edit]

I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current17:36, 3 November 201330 s, 1,920 × 1,080 (3.41 MB)Miessen (talk | contribs)User created page with UploadWizard

There are no pages that use this file.

Transcode status

Update transcode status
Format Bitrate Download Status Encode time
VP9 1080P 450 kbps Completed 17:05, 1 September 2018 43 s
Streaming 1080p (VP9) 451 kbps Completed 03:15, 17 March 2024 1.0 s
VP9 720P 118 kbps Completed 17:05, 1 September 2018 26 s
Streaming 720p (VP9) Not ready Unknown status
VP9 480P 62 kbps Completed 17:05, 1 September 2018 20 s
Streaming 480p (VP9) Not ready Unknown status
VP9 360P 39 kbps Completed 17:05, 1 September 2018 15 s
Streaming 360p (VP9) Not ready Unknown status
VP9 240P 26 kbps Completed 17:05, 1 September 2018 11 s
Streaming 240p (VP9) 26 kbps Completed 23:53, 14 January 2024 1.0 s
WebM 360P 292 kbps Completed 17:37, 3 November 2013 23 s
Streaming 144p (MJPEG) 854 kbps Completed 16:47, 9 November 2023 3.0 s

File usage on other wikis

The following other wikis use this file:

Metadata