google maps. comment créer un LatLngBounds rectangle (carré) compte tenu de coordonnées d'un point central
J'ai un point (X,Y) et je veux créer un carré , Google maps LatLngBounds objet, afin de faire de géocodage demandes biais uniquement dans ce LatLngBound région.
Comment puis-je créer un tel LatLngBounds carré dont le centre est le point? Je dois trouver le NE et SW point. Mais comment puis-je le trouver compte tenu de la distance d et un point (x,y)?
Grâce
OriginalL'auteur maiky | 2011-04-19
Vous devez vous connecter pour publier un commentaire.
Vous pouvez également
getBounds
à partir d'un rayon défini comme un cercle et laisser le trig à google.new google.maps.Circle({center: latLng, radius: radius}).getBounds();
var latLng = new google.maps.LatLng(32.79503, -117.24142);/*San Diego*/ var radius = 2000;/*meters*/ var circle = new google.maps.Circle({center: latLng, radius: radius}); var defaultBounds= circle.getBounds();
Grand. Belle solution!
OriginalL'auteur wprater
eh bien, c'est très compliqué. pour un accidenté de la zone essayez ceci:
MODIFIER
Ci-dessus a été la façon de faire le chemin du retour en 2011, lorsque je l'ai écrit. Ces jours-ci l'api google maps est venu sur un loooong. La réponse par @wprater est beaucoup plus propre et utilise certaines des plus récentes méthodes de l'api.
ok
brng
est le roulement ou l'angle. ainsi, l'utilisation de 45,10 nous sommes le calcul de la position d'un point à 10km au nord-est de votre point de départ. 225,10 vous donnera le sud-ouest de l'emplacement. ce sont les deux points nécessaires pour un google les limites de l'objet.voici un exemple: jsfiddle.net/herostwist/DnSHY/1
plus propre version: jsfiddle.net/herostwist/DnSHY/2
l'homme parfait! merci..!
OriginalL'auteur herostwist
Ne serait-ce pas le travail tout simplement ajouter/soustraire d/2 pour x/y des endroits?
X,y comme le point central:
Ne pas me faire confiance sur ce point, même si - je suis terrible en maths 🙂
Cela suppose d comme un "diamètre", plutôt que d'un rayon. Si "d" est le rayon, ne vous embêtez pas avec la division par deux de la partie.
OriginalL'auteur Earl B