Zoom In/Out react-native-maps basé sur le rayon en km/miles

Aug 18 2020

J'ai une exigence dans mon application réactive native où si l'utilisateur fournit un nombre qui sera le nombre de kilomètres ou de miles (comme 5 ou 10), la carte doit effectuer un zoom avant/arrière montrant la zone avec le rayon comme entrée Numéro.

Comment puis-je modifier les valeurs latitudeDelta et longitudeDelta en fonction de ces nombres d'entrée.

Sil te plait aide moi. Merci d'avance.

Réponses

MuhammadJunaid Aug 18 2020 at 17:11

latitudeDelta est le nombre de degrés visibles à l'écran. Environ 111,045 KM est toujours égal à 1 degré, vous pouvez donc calculer la latitudeDelta de la zone actuellement visible en KM avec ceci

latitudeDelta = diamètre (UserEntered) / 111.045

Cela suppose que l'écran est en mode portrait et, par conséquent, latitudeDelta est la valeur la plus élevée. Sinon, utilisez plutôt longitudeDelta.

pour mettre à jour la carte, vous pouvez définir des variables d'état pour longitudeDelta et latitudeDelta et lorsque l'utilisateur entre une valeur, vous pouvez effectuer un calcul à partir de la formule ci-dessus et mettre à jour ces variables d'état et la carte sera éventuellement également mise à jour.