function get1secOfLat(lat) {
	return (Math.PI * 6335439.32721236 ) / (648000 * Math.pow((1- 0.00669438 * Math.pow(Math.sin(lat) , 2)), (3/2)));
}

function get1secOfLng(lat) {
	return (Math.PI * 6378137 * Math.cos(lat)) / (180 * Math.sqrt(1 - 0.00669438 * Math.pow(Math.sin(lat) , 2)) * 3600);
}
function prepareCircle(p, r, color) {

	var r_lat = (r * 5) / (18 * get1secOfLat(p.latRadians()));
	var r_lng = (r * 5) / (18 * get1secOfLng(p.latRadians()));

	var lat, lng;
	var pp = [];
	for (i = 0; i <= 360; i++) {
		var rad = i / 180 * Math.PI;
		lat = r_lat * Math.sin(rad) + p.lat();
		lng = r_lng * Math.cos(rad) + p.lng();
		pp.push(new google.maps.LatLng(lat, lng));
	}
	return new google.maps.Polygon(pp, color, 1, 1, color, 0.5);
}
