Déterminer si le point se trouve dans le cadre de sélection
Comment voulez-vous déterminer si un point est à l'intérieur de la boîte englobante?
Mon point est 48.847172 , 2.386597.
Boundingbox:
"48.7998602295",
"48.8198640442",
"2.46138595581",
"2.48138619423"
source d'informationauteur viniciusmo
Vous devez vous connecter pour publier un commentaire.
Faire comme d'habitude:
bb
est la boîte englobante,(ix,iy)
sont son en haut à gauche de coordonnées, et(ax,ay)
son bas-coordonnées de droite.p
est le point et(x,y)
ses coordonnées.Cette solution prend également en considération d'une affaire dans laquelle l'INTERFACE utilisateur envoie une boîte qui traverse la longitude 180/-180 (cartes vues sur le faible niveau de zoom où vous pouvez voir le monde entier, permettant d'infinies cyclique défilement horizontal, de sorte qu'il est possible, par exemple, qu'une boîte de bottomLeft.lng=170 tout en haut.lng=-170(=190) et par qui, y compris une gamme de 20 degrés.
Si vous utilisez la brochure, vous pouvez créer un nouveau
LatLngBounds
et l'utilisation de soncontains()
opération:Il y a assez agréable méthodes utilitaires pour CGRect et CGPoint (en supposant que vous n'avez pas l'esprit le fait qu'ils sont à l'aide de CGFloat pour le stockage des coordonnées et de la recherche à vos valeurs, vous n'avez pas 🙂 ).
Vous pouvez le faire comme ça:
Utiliser cette fonction pour plus de c plus pour vérifier si un point de quitte à l'intérieur d'un rectangle