Ernestine Posté 16 Mars 2011 Posté 16 Mars 2011 Bonjour, Sur un site web, j'affiche une google map contenant plusieurs dizaines de milliers de points, formant entre eux différents tracés. Le problème, vue la quantité énorme de points, c'est que le positionnement des points et le tracés des trajets, fait considérablement ramer le moteur javascript sur des ordinateurs peu puissants. D'où ma question : comment optimiser cela ? Quand l'utilisateur est à un faible niveau de zoom (vue de l'Europe entière, par exemple), il n'a pas besoin d'avoir un détail aussi précis : la plupart des points sont tellement rapprochés les uns des autres, qu'un seul point sur 100 ou sur 200 suffirait. Ensuite, quand le niveau de zoom augmente, le nombre de points devrait idéalement augmenter. Finalement, c'est uniquement en zoom très rapproché (raz du sol) qu'on a vraiment besoin de voir chacun des points. Mais je ne sais pas comment faire, ni même si c'est possible. Comment faire en sorte que le niveau de précision (c'est à dire le nombre de points) n'augemente que progressivement en fonction du niveau de zoom ? Merci d'avance.
Portekoi Posté 16 Mars 2011 Posté 16 Mars 2011 Bonjour, De mémoire, tu peux utiliser un "getZoom()" pour savoir où en est l'utilisateur niveau zoom Ensuite, tu peux décider d'afficher les points uniquement inclus dans les bornes de la map visible par l'utilisateur avec la méthode ".contains(lepoint)" Enfin, tu peux passer à ton fichier qui te renvoie les points à afficher, le zoom "en cours" afin d'afficher un point sur 2 ou sur 3 Portekoi
captain_torche Posté 16 Mars 2011 Posté 16 Mars 2011 Tout dépend de comment sont gérés tes polygones. J'avais fait quelque chose de similaire il y a un moment, et lorsque j'appelais les coordonnées du polygone, je générais un KML avec un point sur 20. http://www.webmaster-hub.com/topic/45931-google-maps-recuperer-les-contours-des-regions-francaises/
Clair de Lune Posté 16 Mars 2011 Posté 16 Mars 2011 A partir de quelques dizaines de points, il vaut mieux générer un fichier kml (ou mieux kmz en format compressé) : en effet ce sont les moteurs de Google qui s'occupent de mettre en cache les images aux différents niveaux de zoom, c'est beaucoup plus rapide et le navigateur du client ne fait pas tout le travail
Ernestine Posté 16 Mars 2011 Auteur Posté 16 Mars 2011 Merci pour ces réponses très intéressantes. Je vais étudier cela et vous tiendrai au courant.
Ernestine Posté 23 Mars 2011 Auteur Posté 23 Mars 2011 J'ai donc créé un fichier kmz à partir de la base de données, et tout fonctionne parfaitement. Merci encore pour vos réponses.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant