Skip to content

Instantly share code, notes, and snippets.

@sergiocasero
Created June 21, 2016 20:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sergiocasero/e43d32dcfd0d3e22d3f8cd094baee734 to your computer and use it in GitHub Desktop.
Save sergiocasero/e43d32dcfd0d3e22d3f8cd094baee734 to your computer and use it in GitHub Desktop.
createMapCircle: function(latitude, longitude){
var latitudeRadius = this.getRadiusInLatitudeDegrees(this.radius);
var longuitudeRadius = this.getRadiusInLongitudeDegrees(this.radius, latitude);
for (var i = 0; i < 360; i++) {
var angle = i * (3.141516/180);
this.push('points', {
latitude: latitude + latitudeRadius * Math.sin(angle),
longitude: longitude + longuitudeRadius * Math.cos(angle),
});
}
},
getRadiusInLatitudeDegrees: function(radiusMeters) {
var metersPerLatitudeDegree = 110574;
return radiusMeters / metersPerLatitudeDegree;
},
getRadiusInLongitudeDegrees(radiusMeters, circleCenterLatitude) {
var metersPerLongitudeDegree = 111320 * Math.cos(circleCenterLatitude);
return radiusMeters / metersPerLongitudeDegree;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment