//******** all.js - Impaktsimulator - (c) hsulzer@t-online.de - 2004 ********//

//PRELOAD IMAGES
m_1     = new Image(); m_1.src     = "images/modell_1.png"
m_1_a   = new Image(); m_1_a.src   = "images/modell_1_a.png"
m_1_a_e = new Image(); m_1_a_e.src = "images/modell_1_a_e.png"
m_1_b   = new Image(); m_1_b.src   = "images/modell_1_b.png"
m_1_b_e = new Image(); m_1_b_e.src = "images/modell_1_b_e.png"
m_2     = new Image(); m_2.src     = "images/modell_2.png"
m_2_a   = new Image(); m_2_a.src   = "images/modell_2_a.png"
m_2_a_e = new Image(); m_2_a_e.src = "images/modell_2_a_e.png"
m_2_b   = new Image(); m_2_b.src   = "images/modell_2_b.png"
m_2_b_e = new Image(); m_2_b_e.src = "images/modell_2_b_e.png"
m_3     = new Image(); m_3.src     = "images/modell_3.png"
m_3_a   = new Image(); m_3_a.src   = "images/modell_3_a.png"
m_3_a_e = new Image(); m_3_a_e.src = "images/modell_3_a_e.png"
m_3_b   = new Image(); m_3_b.src   = "images/modell_3_b.png"
m_3_b_e = new Image(); m_3_b_e.src = "images/modell_3_b_e.png"

//SET DATA
var dm = 50
var types = 1
var velocities = 15000

//CHECK INTEGRITY
function checkint()
 {
  if(document.calculator.diameter.value < 50 | document.calculator.diameter.value > 2000)
   {
    document.calculator.reset()
    document.basis.src='images/modell_3.png'
    document.calculator.all_out.value = 'Berechnung nur für Durchmesser von 50 m bis 2000 m realistisch'
   }
  else
   {
    calculate()
   }
 }

//CALCULATE DATA
function calculate()
 {
  //Kugelvolumen : (4/3 pi) * (radius hoch 3)
  //Kinetische Energie : 1/2 Masse in kg * Geschwindigkeit in m/sec² = n KiloJoule
  //Joule in TNT : 1t TNT <=> 4612 Megajoule

  document.basis.src=m_3.src

  if(types == 1) {type = "Komet"} else if(types == 3) {type = "Steinmeteorit"} else {type = "Eisenmeteorit"}

  r  = eval(document.calculator.diameter.value / 2)
  da  = eval(r * 2 / 1000)
  v  = Math.round(eval(4 / 3 * 3.142 * (r * r * r)))
  va = v
  if(va > 1000000) {va = Math.round(eval(va/1000000))+' Millionen'}
  m  = eval(v * types)
  ma = eval(m / 1000000)
  if(ma > 10) {ma = Math.round(ma)}
  e  = Math.round(eval(m / 2 * (velocities * velocities)))
  ea = eval(e / 1000)
  tnt = Math.round(eval(ea / 4600000))
  bmb = Math.round(eval(tnt / 20))
  ga = eval(velocities / 1000)

  document.calculator.all_out.value = type+' mit '+da+' km Durchmesser und Bahngeschwindigkeit von '+ga+' km/s'
  document.calculator.volume_out.value = va +' Kubikmeter Volumen'
  document.calculator.mass_out.value = ma +' Millionen Tonnen Masse'
  document.calculator.energy_out.value = ea +' Megajoule kinetische Energie'
  document.calculator.e_tnt_out.value = tnt +' Kilotonnen TNT entsprechend'
  document.calculator.e_bmb_out.value = bmb +' Atombomben (20 kt) entsprechend'

  if(bmb < 1500) {dm = 1}
  else if(bmb < 5000) {dm = 2}
  else if(bmb < 100000) {dm = 3}
  else if(bmb < 5000000) {dm = 4}
  else if(bmb < 100000000) {dm = 5}
  else {dm = 6}

  setTimeout('impact(dm)',500)
}

//ASSIGN IMAGES
function impact(dm)
{
 document.basis.src=m_3.src

 if(dm==1)
  {
   setTimeout('document.basis.src=m_3_b.src',1500)
   setTimeout('document.basis.src=m_3_b_e.src',3500)
  }
 else if(dm==2)
  {
   setTimeout('document.basis.src=m_3_a.src',1500)
   setTimeout('document.basis.src=m_3_a_e.src',3500)
  }
  else if(dm==3)
  {
   setTimeout('document.basis.src=m_2.src',1500)
   setTimeout('document.basis.src=m_2_b.src',3000)
   setTimeout('document.basis.src=m_2_b_e.src',4000)
  }
  else if(dm==4)
  {
   setTimeout('document.basis.src=m_2.src',1500)
   setTimeout('document.basis.src=m_2_a.src',3000)
   setTimeout('document.basis.src=m_2_a_e.src',4000)
  }
  else if(dm==5)
  {
   setTimeout('document.basis.src=m_2.src',1500)
   setTimeout('document.basis.src=m_1.src',3000)
   setTimeout('document.basis.src=m_1_b.src',4500)
   setTimeout('document.basis.src=m_1_b_e.src',5500)
  }
  else if(dm==6)
  {
   setTimeout('document.basis.src=m_2.src',1500)
   setTimeout('document.basis.src=m_1.src',3000)
   setTimeout('document.basis.src=m_1_a.src',4500)
   setTimeout('document.basis.src=m_1_a_e.src',5500)
  }
 else if(dm==7)
  {
   document.basis.src='images/modell_3.png'
  }
 else if(dm==8)
  {
   document.basis.src='images/modell_2.png'
  }
 else
  {
   document.basis.src='images/modell_1.png'
  }
}

//RESET SYSTEM
function resetsys()
 {
  document.calculator.reset()
  document.basis.src='images/modell_3.png'
 }

//ZOOM IMAGE
function zoom(z)
 {
  document.basis.src='images/modell_'+z+'.png'
 }