// JavaScript Document
<!--
var jg = new jsGraphics("trackgraph");

var dist_zw= new Array();
var dist_ges=0;
var hoehe=new Array();
var pointx=new Array();
var pointy=new Array();
var lat_akt = 0;
var lon_akt = 0;
var lat_old = 0;
var lon_old = 0;
var dist_lat = 0;
var dist_lon = 0;
var point_count = 0;
var imgWidth = 230;
var imgHeight =100;
var min_hoehe = 10000;
var max_hoehe = 0;
var diff_hoehe = 0;
var offsetx =20;
var offsety=20;
var aufstieg=0;
var abstieg=0;
var missingAlti=0;


function showAltitude(){
 document.forms["hoeheninfo"].elements["hoehemax"].value=max_hoehe-200+" m";
 document.forms["hoeheninfo"].elements["hoehemin"].value=min_hoehe+50+" m";
 document.forms["hoeheninfo"].elements["aufstieg"].value=aufstieg+" m";
 document.forms["hoeheninfo"].elements["abstieg"].value=abstieg+" m";
 document.forms["hoeheninfo"].elements["punkte"].value=hoehe.length;
 var showdist=dist_ges/1000;
 showdist=showdist.toFixed(1);
 document.forms["hoeheninfo"].elements["dist"].value=showdist+" km";
}

function clear_all(){
  	jg.clear();
	dist_zw= new Array();
	dist_ges=0;
	hoehe=new Array();
 	pointx=new Array();
	pointy=new Array();
	lat_akt = 0;
	lon_akt = 0;
	lat_old = 0;
	lon_old = 0;
	dist_lat = 0;
	dist_lon = 0;
	point_count = 0;
 	min_hoehe = 10000;
	max_hoehe = 0;
	diff_hoehe = 0;
	aufstieg=0;
	abstieg=0;
}

function updateAltitude()
{ 
  
 if(boolShowAltitude==0){
  
  clear_all();
  hideall();
  document.getElementById('menuright1').style.visibility='visible';
  document.getElementById('trackgraph').style.visibility='visible';
  boolShowAltitude=1;

  //alert("0: "+savetrackpoints[0][0]+"1: "+savetrackpoints[0][1]+"2: "+savetrackpoints[0][2]+"3: "+savetrackpoints[1][0]);
  //jg.setColor("#ff0000"); // rot
  jg.setColor("white"); // blau
  jg.setColor("white"); // blau
   jg.setStroke(2);
  jg.drawLine(offsetx, offsety, offsetx, offsety+imgHeight);
  jg.drawLine(offsetx, offsety+imgHeight, offsetx+imgWidth, offsety+imgHeight);
  jg.drawPolyline(new Array(15,20,25), new Array(25,20,25));
  jg.drawPolyline(new Array(offsetx+imgWidth-5,offsetx+imgWidth,offsetx+imgWidth-5), new Array(offsety+imgHeight-5,offsety+imgHeight,offsety+imgHeight+5));  
  jg.setFont("arial","12px",Font.BOLD);
  jg.drawString("Entfernung",offsetx+imgWidth/3,offsety+imgHeight+5);
  jg.drawString("Höhe",offsetx-15,5);
  jg.setStroke(2);
  jg.setColor("white"); // blau-grau


  dist_zw[0]=0;
  for (f=1;f<tmpl;f++) {  
   	 if(f==1) hoehe[0] = savetrackpoints[f-1][2];
     if(savetrackpoints[f][2]==0) missingAlti=1;
    lat_akt = savetrackpoints[f][0];
		lon_akt = savetrackpoints[f][1];
		hoehe[f] = savetrackpoints[f][2]
		lat_old = savetrackpoints[f-1][0];
		lon_old = savetrackpoints[f-1][1];

		dist_lat=111324*Math.abs(lat_akt-lat_old);
	 	dist_lon=111324*Math.cos(((lat_old+lat_akt)/2)*3.14159/180)*Math.abs(lon_akt-lon_old);
		dist=Math.sqrt(Math.pow(dist_lat,2)+Math.pow(dist_lon,2));
		dist_zw[f]=dist_zw[f-1]+dist;
		dist_ges=dist_ges+dist;
  }
  
  //for(i=0; i<tmpl; i++){	
		//$pointx[$i]=$dist_zw[$i]*$imgWidth/$dist_ges;
		//$pointy[$i]=$imgHeight-((($hoehe[$i]-$min_hoehe)*$imgHeight)/$diff_hoehe);
	//}


  //for (f=1;f<=mpl;f++) {
  //		coordinates[f-1] = [ mappoints[f-1].lat(), mappoints[f-1].lng(),addpoint ]; 	
  //}
  //topoGetAltitudes(coordinates);
  //setTimeout("updatePoints()", 1500);
  //if(missingAlti==1){
  // var box2=window.confirm("Die Höhendaten sind unvollständig. Wollen sie diese jetzt updaten?") // textangebe die mit der confirm-box ausgegeben wird. 
    //if(box2==true) //Update Alti
   //else //tu nichts
  // }
   
    for (var i=0; i<hoehe.length; i++) {
	  if (hoehe[i] > max_hoehe) {
		  max_hoehe = hoehe[i];
	  }	 
	  if (hoehe[i] < min_hoehe) {
		  min_hoehe = hoehe[i];
	  }
	  if(i>0){
	   if(hoehe[i]<hoehe[i-1]) abstieg=abstieg+(hoehe[i-1]-hoehe[i]); 
		 if(hoehe[i]>hoehe[i-1]) aufstieg=aufstieg+(hoehe[i]-hoehe[i-1]);
	  } 
  }

diff_hoehe=max_hoehe-min_hoehe;
max_hoehe=max_hoehe+200;
min_hoehe=min_hoehe-50;
 for (f=0;f<tmpl;f++) { 
 pointx[f]=offsetx+dist_zw[f]*imgWidth/dist_ges;
 pointy[f]=(imgHeight+offsety)-(((hoehe[f]-min_hoehe)*imgHeight)/diff_hoehe);
 if(f>0) jg.drawLine(pointx[f-1], pointy[f-1], pointx[f], pointy[f]);
  }
jg.paint();
showAltitude();
//document.forms["hoehenbutton"].elements["point"].value='Höhenprofil';
//document.forms["hoehenbutton"].elements["point"].disabled=false;
 }
 else{
  boolShowAltitude=0;
  hideall();
 
 }
  
}

//-->

