function toRad(num){return num*Math.PI/180;}
function toDeg(num){return num*180/Math.PI;}
function toBrng(num){return(toDeg(num)+360)%360;}
function distancePoints(LL1,LL2){var sLat=LL1.lat();var sLng=LL1.lng();var eLat=LL2.lat();var eLng=LL2.lng();var dLatr=toRad(eLat-sLat);var dLonr=toRad(eLng-sLng);var R=6371;var dLat=dLatr;var dLon=dLonr;var a=Math.sin(dLat/2)*Math.sin(dLat/2)+
Math.cos(toRad(sLat))*Math.cos(toRad(eLat))*Math.sin(dLon/2)*Math.sin(dLon/2);var c=2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));var d=R*c;return d;}
function anguloPoints(LL1,LL2){var sLat=LL1.lat();var sLng=LL1.lng();var eLat=LL2.lat();var eLng=LL2.lng();lat1=toRad(sLat);lat2=toRad(eLat);var dLon=toRad(eLng-sLng);var y=Math.sin(dLon)*Math.cos(lat2);var x=Math.cos(lat1)*Math.sin(lat2)-
Math.sin(lat1)*Math.cos(lat2)*Math.cos(dLon);return toBrng(Math.atan2(y,x));}
function pointToDistance(dp,LL1,grd){var d=dp;var R=6371;var lat1=toRad(LL1.lat()),lon1=toRad(LL1.lng());brng=toRad(grd);var lat2=Math.asin(Math.sin(lat1)*Math.cos(d/R)+
Math.cos(lat1)*Math.sin(d/R)*Math.cos(brng));var lon2=lon1+Math.atan2(Math.sin(brng)*Math.sin(d/R)*Math.cos(lat1),Math.cos(d/R)-Math.sin(lat1)*Math.sin(lat2));lon2=(lon2+Math.PI)%(2*Math.PI)-Math.PI;if(isNaN(lat2)||isNaN(lon2))return null;return new GLatLng(toDeg(lat2),toDeg(lon2));}
function point_distance(){var sLat=$('#startpoint input#TripStartLat').val();var sLng=$('#startpoint input#TripStartLng').val();var eLat=$('#endpoint input#TripEndLat').val();var eLng=$('#endpoint input#TripEndLng').val();var dLatr=toRad(eLat-sLat);var dLonr=toRad(eLng-sLng);var R=6371;var dLat=dLatr;var dLon=dLonr;var a=Math.sin(dLat/2)*Math.sin(dLat/2)+
Math.cos(toRad(sLat))*Math.cos(toRad(eLat))*Math.sin(dLon/2)*Math.sin(dLon/2);var c=2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));var d=R*c;return d;}
