#1 Thu 23 June 2011 11:02
- matthieu_b
- Juste Inscrit !
- Date d'inscription: 23 Jun 2011
- Messages: 3
[OpenLayers] Zoomer sans chargement de tuiles
Salut
J'utilise OpenLayers pour afficher mes propres layers tuilés. Pour cela, j'utilise la classe Layer.XYZ. Les layers possèdent environ 7/8 niveaux où des tuiles existent. Pour chaque layer, j'ai remplit la propriété "resolutions". J'ai légèrement modifier la fonction getXYZ pour que les coordonnées des tuiles correspondent parfaitement à mon arborescence.
J'aimerais pouvoir zoomer au delà des résolutions définies. Par exemple, quand je suis au niveau de zoom le plus fort pour lequel il existe des tuiles, si je zoom une fois de plus, j'aimerais pourvoir juste zoomer sur les tuiles déjà présente, sans tenter de charger de nouvelles tuiles (qui n'existent pas de toute façon...), un peu à la manière de ce qu'on voit brièvement lorsqu'on a la propriété "transitionEffect:'resize'".
Je sèche depuis plusieurs jours là-dessus. Auriez vous des idées ?
Merci
Hors ligne
#2 Fri 24 June 2011 13:00
- matthieu_b
- Juste Inscrit !
- Date d'inscription: 23 Jun 2011
- Messages: 3
Re: [OpenLayers] Zoomer sans chargement de tuiles
J'ai trouvé une solution à mon problème. Je ne sais pas si c'est une solution propre ou pas, mais c'est la seule que j'ai trouvée actuellement.
Quand on arrive à un niveau de zoom où le layer ne possède pas d'image, on fais deux choses :
- on change la taille des tuiles. Par exemple, avec une taille de tuile nominale de 256*256, si je passe à un niveau de zoom plus faible que la résolution max, la taille de tuile sera 128*128, deux niveaux de zoom plus faible que la résolution max, ça sera 64*64, etc. Et dans l'autre sens également, si je passe à un niveau de zoom plus fort que la résolution min, la taille de tuile sera 512*512, etc.
- on change la coordonnées en z de la tuile : elle est égale au niveau de zoom le plus proche où il existe des tuiles.
Hors ligne