function calc()
{	var coord1 = document.formville.ville1[ document.formville.ville1.selectedIndex ].value;
	var coord2 = document.formville.ville2[ document.formville.ville2.selectedIndex ].value;
	var lo1 = coord1.substring( 0, 7 );	var la1 = coord1.substring( 8 );
	var lo2 = coord2.substring( 0, 7 );	var la2 = coord2.substring( 8 );

	if( lo1==lo2 && la1==la2 )
	{	document.formville.dist_km.value = "0";
		document.formville.dist_mi.value = "0";
		drawmap.clear();
		return;
	}

	// Image: x=210, y=305
	// x: -82.5 -> -67.5
	// y:   0.0 -> -20.0
	x1 = Math.round( (82.5-lo1) * 14 );
	y1 = Math.round( la1 * 15.6 );
	x2 = Math.round( (82.5-lo2) * 14 );
	y2 = Math.round( la2 * 15.6 );

	drawmap.clear();

	drawmap.setColor("green");
	drawmap.fillEllipse(x1-4, y1-4, 8, 8);

	drawmap.setColor("red");
	drawmap.fillEllipse(x2-4, y2-4, 8, 8);

	drawmap.setColor("black");
	drawmap.drawLine(x1, y1, x2, y2);

	drawmap.paint();

	lo1 = -lo1 / 57.29577951;
	la1 = -la1 / 57.29577951;
	lo2 = -lo2 / 57.29577951;
	la2 = -la2 / 57.29577951;

	document.formville.dist_km.value = lo2;
	document.formville.dist_mi.value = la2;

	var dist = ( Math.sin(la1) * Math.sin(la2) ) + ( Math.cos(la1) * Math.cos(la2) * Math.cos(lo1-lo2) );
	dist = 3963.1 * Math.acos( dist );

	document.formville.dist_km.value = Math.round( dist * 1.609344 );
	document.formville.dist_mi.value = Math.round( dist );
}

