Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Mon 17 December 2007 12:31

Tiassma
Participant occasionnel
Date d'inscription: 4 Dec 2006
Messages: 39

optimiser un mapfile...

bonjour,

J'ai développé une petite appli mapserver/php-mapscript/postgis et j'en suis à optimiser les codes pour obtenir un affichage le plus efficient possible de mes cartes.
En observant de près les temps d'execution de mapserver pour l'affichage de mon mapfile, je me rend compte que le nombre de layer à afficher joue fortement sur la requête draw. C'est logique!
Mais en fait, mon mapfile, simple comme tout, affiche la même couche principale  en ponctuel à de nombreuses reprises, pour la simple raison que  je dois garantir l'ordre d'affichage des classes pour visualiser chaque type d'objet, par la classification en tailles imbriquées. Or, si j'affiche mes classes dans le même layer, je ne gère pas l'ordre d'affichage des objets et donc une partie est cachée derrière une autre partie.

Ma question est donc simple: existe t-il un moyen d'optimiser mon mapfile en limitant le nombre de couches (donc de connections à postgis) tout en garantissant un ordre d'affichage impeccable?

Merci d'avance pour votre aide précieuse  conseils wink

cool

Hors ligne

 

#2 Tue 25 December 2007 09:26

tbonfort
Participant actif
Date d'inscription: 11 Oct 2007
Messages: 87

Re: optimiser un mapfile...

oui, c'est generalement possible, avec eventuellement un minimum de pre-processing des donnees dans la table postgis, en utilisant un ORDER BY dans ta requete
par exemple

Code:

 DATA "the_geom from (SELECT gid, the_geom, largeur FROM troncon_route ORDER BY largeur) as foo using unique gid"
 CLASS
  EXPRESSION ([largeur] != 5.50)
  ....
 END
 CLASS
  ...
 END

Hors ligne

 

Pied de page des forums

Powered by FluxBB