2011-03-30 5 views
1

Bonjour Je rencontre des problèmes avec les performances KML. À certains moments, les marqueurs KML n'apparaissent qu'après un rechargement qui peut être lié à la mise en cache des résultats par google. Je pense qu'une meilleure solution est peut-être nécessaire, par exemple afficher un total de marqueurs pour une zone à un niveau de zoom plus grand, puis plus détaillé pour les niveaux qui ont plus de zoom. Une telle solution est-elle faisable et si oui, comment? Pouvez-vous imaginer d'autres façons d'améliorer les performances de ma carte KML? Les liens sont http://www.koolbusiness.com et le fichier KML est http://www.koolbusiness.com/list.kmlComment améliorer les performances KML

Je peux charger le fichier KML dans maps.google.com sans problème mais lorsque vous essayez de l'afficher sur mon habitude carte l'affichage parfois ne se charge pas. Merci d'avance pour vos suggestions.

MISE À JOUR: J'ai mis à jour à l'aide d'un fichier KMZ avec compression zip. Le fichier est disponible via http://www.koolbusiness.com/list.kmz et la source et plus d'informations sont disponibles à http://montao.googlecode.com

Répondre

2

ne sait pas si elle affecte les performances mais il semble que vous ayez besoin de configurer les types MIME pour les fichiers kml. http://code.google.com/apis/kml/documentation/kml_tut.html#kml_server

Avez-vous essayé de compresser les fichiers kml en tant que fichiers kmz? Vous pouvez le faire avec un programme zip et appelez simplement le fichier kmz.

Vous répétez l'élément de style dans les repères, mais vous pouvez également les créer sous l'élément doucment, puis les référencer simplement avec un ID. http://code.google.com/apis/kml/documentation/kmlreference.html#style

+0

Merci pour la réponse. Je vais essayer le mentionné ci-dessus. –

1

Je ne sais pas si vous avez modifié le KML encore se conformer à certaines des suggestions précédentes, mais ...

  • Le fichier KML semble être assez minime qui est bon. J'allais suggérer de tronquer les points décimaux sur le lat/lng.
  • Vous pouvez compresser comme fichier KML à KMZ comme l'affiche précédente l'a mentionné. Plus d'informations peuvent être trouvées ici: http://code.google.com/apis/kml/documentation/kml_tut.html#kml_server Vous devrez également configurer le type KMZ MIME sur votre serveur.
  • Vous pouvez réduire la quantité d'espace blanc dans votre fichier KML. Il semble avoir des espaces supplémentaires quand il n'est pas nécessaire ...
  • Vous pouvez configurer votre serveur Web pour envoyer des versions en cache du fichier KML ... Je ne suis pas sûr du type de back-end que vous utilisez pour que je puisse ne donne pas vraiment de pointeurs. Cela pourrait être une raison pour laquelle les marqueurs n'apparaissent pas. Le serveur de Google mettra fin à votre demande si cela prend trop de temps.

Quant à votre question sur une solution à l'affichage des marqueurs totaux dans une zone pour un zoom: Je pensais que vous pouvez pour chaque niveau de zoom, vérifiez la limite de la carte et afficher uniquement les marqueurs des coordonnées dans cette limite. Vous devrez probablement écrire une sorte de fonction qui vérifie si elle est dans la limite. Je ne connais aucun moyen de récupérer les marqueurs du fichier KML en tant qu'objets à moins que vous n'analysiez manuellement le fichier KML en utilisant un analyseur côté client.

Pour vous aider à déterminer pourquoi vos marqueurs ne se chargent pas, essayez d'utiliser FireBug pour déterminer les demandes adressées aux serveurs de Google. Et voyez quel genre de réponse revient, ce qui pourrait conduire à plus de réponses à votre problème. Je crois que celui que vous devriez rechercher est KmlOverlayService.

Espérons que ça aide.

+0

Merci pour votre réponse avec beaucoup de bons conseils.Le KML est maintenant un KMZ qui fonctionne beaucoup mieux qu'il y a quelques temps. http://www.montao.com.br/montaolist.kmz –

Questions connexes