28-08-2014, 10:17 AM
A voir, car je n'en suis pas sûr: SVG répond très bien au zoom (la méthode de zoom étant définie par le navigateur, par exemple Ctrl+molette sur FF ou Ctrl++/-). Il se peut (et le doute est là) que SVG offre une forme de "n'afficher que si le zoom est suffisant", auquel cas il créer la carte en format SVG et de définir à partir de quand tel élément doit s'afficher.
Si SVG ne le propose pas, je n'ai pas de bibliothèque toute faite pour ce genre de problème, mais il sera possible de:
• Poser une classe indiquant le niveau de zoom de chaque élément (class="zoom-1", "zoom-2" etc)
• De récupérer le niveau de zoom (à voir comment cela se fait, google devrait aider, l'intérêt étant que le navigateur gère la commande du zoom et donc, cette commande sera forcément adaptée au support ce qui fait moins de boulot pour le dev du site)
• Masquer les classes dont le niveau de zoom est hors cadre (aka masquer tout sauf zoom-1 quand on est dézoomé au max et masquer tout sauf zoom-5 quand on est zoomé à la moitié)
Pour l'idée basique, elle s'appelle Quadtree: elle consiste à découper une zone d'affichage en 4, constituant ainsi 4 nouvelles zones, que l'on peut redécouper à loisir (et on forme un arbre, facile d'y naviguer ou d'y zoomer).
Si SVG ne le propose pas, je n'ai pas de bibliothèque toute faite pour ce genre de problème, mais il sera possible de:
• Poser une classe indiquant le niveau de zoom de chaque élément (class="zoom-1", "zoom-2" etc)
• De récupérer le niveau de zoom (à voir comment cela se fait, google devrait aider, l'intérêt étant que le navigateur gère la commande du zoom et donc, cette commande sera forcément adaptée au support ce qui fait moins de boulot pour le dev du site)
• Masquer les classes dont le niveau de zoom est hors cadre (aka masquer tout sauf zoom-1 quand on est dézoomé au max et masquer tout sauf zoom-5 quand on est zoomé à la moitié)
Pour l'idée basique, elle s'appelle Quadtree: elle consiste à découper une zone d'affichage en 4, constituant ainsi 4 nouvelles zones, que l'on peut redécouper à loisir (et on forme un arbre, facile d'y naviguer ou d'y zoomer).