// JavaScript Document


function faster(){
	
		move=move+.35;
		if(move > 5){
			move=5;
		}
		rateit();
	
}
function slower(){
	
		move=move-.35;
		if(move <= 0){
			move=.5;
			
		}
		rateit();
}

function reverseit(){

	dir=dir*(-1);

}

function higher(){
	alt=alt+5;
	if(alt > 50){
	
		alt=50;
	
	}
}

function lower(){
	alt=alt-5;
	if(alt <= 2){
		alt=2;
	
	}

}

	
function nextpoint(incr){
	
	currenttrackpoint=currenttrackpoint+incr;
	if(currenttrackpoint > trackpoints.length-1){
		currenttrackpoint=0;
	}
		
	var lookAt = ge.getView().copyAsLookAt(ge.ALTITUDE_RELATIVE_TO_GROUND);
		lookAt.setLatitude(trackpoints[currenttrackpoint].lat);
		lookAt.setLongitude(trackpoints[currenttrackpoint].lon);
		lookAt.setAltitude(15);
		lookAt.setTilt(90);
		lookAt.setRange(300);
		var temp;
		temp=getheading(trackpoints[currenttrackpoint].lat,trackpoints[currenttrackpoint].lon,trackpoints[currenttrackpoint-1].lat,trackpoints[currenttrackpoint-1].lon);
		lookAt.setHeading(temp);
		ge.getView().setAbstractView(lookAt);
}
	
	

function loadnavi(){

	
	  if (animation) {  
		google.earth.removeEventListener(ge, 'frameend', newframe);    
		animation = false; 
		ge.getOptions().setFlyToSpeed(1); 
	  }
		var navControl = ge.getNavigationControl();
		var screenXY = navControl.getScreenXY();
			
  		navControl.setVisibility(ge.VISIBILITY_SHOW);
		setpoint(currenttrackpoint);

}
function unloadnavi(){

	var navControl = ge.getNavigationControl();
	var screenXY = navControl.getScreenXY();
	
  	navControl.setVisibility(ge.VISIBILITY_HIDE);

	nextpoint(1);

}


function setpoint(thepoint){
	
	currenttrackpoint=thepoint;
	if(currenttrackpoint > trackpoints.length-1){
		currenttrackpoint=0;
	}
	
	document.getElementById('debug').innerHTML='fuckyeah';
	
	var lookAt = ge.getView().copyAsLookAt(ge.ALTITUDE_RELATIVE_TO_GROUND);
		lookAt.setLatitude(trackpoints[currenttrackpoint].lat);
		lookAt.setLongitude(trackpoints[currenttrackpoint].lon);
		lookAt.setAltitude(10);
		lookAt.setTilt(60);
		lookAt.setRange(90);
		var temp;
		var avglat;
		var avglong;		
				
		nlat=trackpoints[currenttrackpoint].lat;
		nlong=trackpoints[currenttrackpoint].lon;
	
		var head1=0;
	
		if(currenttrackpoint < trackpoints.length-4){
		
		avglat1=(parseFloat(trackpoints[currenttrackpoint+1*dir].lat)+parseFloat(trackpoints[currenttrackpoint+2*dir].lat)+parseFloat(trackpoints[currenttrackpoint+3*dir].lat)+parseFloat(trackpoints[currenttrackpoint+4*dir].lat)+parseFloat(trackpoints[currenttrackpoint+5*dir].lat))/5;
		
		avglong1=(parseFloat(trackpoints[currenttrackpoint+1*dir].lon)+parseFloat(trackpoints[currenttrackpoint+2*dir].lon) + parseFloat(trackpoints[currenttrackpoint+3*dir].lon) + parseFloat(trackpoints[currenttrackpoint+4*dir].lon) + parseFloat(trackpoints[currenttrackpoint+5*dir].lon))/5;
			
		head1=getheading(avglat1,avglong1,nlat,nlong);
		
		}
		
		lookAt.setHeading(head1);
		ge.getView().setAbstractView(lookAt);
}

