A library of ancient and medieval astronomic model animations.
HTML Ruby JavaScript CSS Shell
Permalink
Failed to load latest commit information.
app Scale Ptolemys universe a bit. Jan 27, 2016
config
db blarf Mar 31, 2012
doc First commit. Mar 31, 2012
lib First commit. Mar 31, 2012
log First commit. Mar 31, 2012
public feh Mar 31, 2012
script First commit. Mar 31, 2012
test First commit. Mar 31, 2012
vendor First commit. Mar 31, 2012
.DS_Store First commit. Mar 31, 2012
.gitignore Updates to text, migrating to heroku-toolbelt. Dec 8, 2014
COPYING.txt
Gemfile Switch to Unicorn. Dec 8, 2014
Gemfile.lock
Procfile
README Clean up some navigation. Dec 9, 2014
Rakefile
config.ru First commit. Mar 31, 2012
deploy.sh Typos. Text. Mar 31, 2012

README

The simple HTML5 canvas animation library for building out the models is all in app/assets/javascripts/.  The minimum required to set up a new model of the universe is the following:

<script>
  window.onload = function(){
    var universe = new Universe({ sun:{}, earth:{type:'center'} });
    universe.setup(); 
  }
</script>

All the planets as well as Pluto are built in with modern values for their default parameters.

Any given planet can be added manually, with these parameters defined at a minimum:

<script>
    universe.planets.xanax = new Planet(universe, {
     name:'xanax', color: "#CC0", aus: 30, mm: .2, size: 70000 
    });
</script>

Parameters can be passed as sexagesimal (base 60) straight from the literature.

Deferents are calculated as epicycles: if no epicycles are defined a basic deferent from
the AUs (aus:) and mean movement (mm:) properties will be added.  Here's a more complex
model:

<script>
   universe.planets.mercury.eccentric(6).cycles([
    {mm:-mm,radius:3},
    {mm:mm,radius:18,equant:3},
    {mm:universe.planets.mercury.mm-mm,radius:6},
   ]);
</script>

Note one can apply an arbitrary, static equant to any given cycle in this fashion.