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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Fri 23 April 2010 09:43

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

exemple de mapfile postgis

Bonjour,


j'essaie de faire un mapfile connecté à postgis

dans ma fenetre web je ne vois aucune carte, seulement le fond vert du rectangle encadrant la carte (IMAGECOLOR 10 78 100)


Je n'ai pas d'erreur de compilation

quand j'affiche la couche postgis sur geoserver, ca marche je peux voir la carte depuis le viewer openlayers-geoserver


Je ne connais pas les subtilités de l'art du parametrage des mapfiles, j'ai suivi les syntaxes par ci et là mais je ne vois pas ma carte à part le fond .

Mon mapfile:

Code:

MAP

IMAGETYPE PNG
 imageCOLOR 10 78 100
STATUS ON
EXTENT -97.239 41.62 -82.123 49.386

SIZE 512 347
 
LAYER
  



  CONNECTION "host=localhost dbname=postgistest user=postgres password=monmotdepasse port=5432"

  CONNECTIONTYPE POSTGIS

  DATA "the_geom from states_ugl"
  NAME "states_ugl"
  TYPE POLYGON
    STATUS ON
 
    CLASS
    
     COLOR 89 225 225
            OUTLINECOLOR 0 0 0
       

   
  END



END

END

"the_geom" est bien le champ renfermant les obj géometriques (multipolygon) de ma table states_ugl.


La table states_ugl était un fichier shp intégré à postgis par le "postgis importer" (postgresql 8.4 et postgis 1.5)





mon url est:
http://localhost:8081/cgi-bin/mapserv.e … p;mode=map


port 8081, mon mapfile s'appelle "testjuin"


merci d'avance

Dernière modification par icadedt (Fri 23 April 2010 09:53)

Hors ligne

 

#2 Fri 23 April 2010 09:58

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: exemple de mapfile postgis

Bonjour,

Quelques pistes :
1. ajoute un objet PROJECTION à ta MAP
2. augmente l'étendue de ta carte (paramètre EXTENT) au cas où celui-ci serait trop petit.

Le paramétrage du mapfile me parait correct.

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#3 Fri 23 April 2010 10:48

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: exemple de mapfile postgis

Yves a écrit:

Bonjour,

Quelques pistes :
1. ajoute un objet PROJECTION à ta MAP
2. augmente l'étendue de ta carte (paramètre EXTENT) au cas où celui-ci serait trop petit.

Le paramétrage du mapfile me parait correct.

Y.


c'est bon j'y suis arrivé , j'ai changé légèrement la variable DATA, j'y ai ajouté " using unique gid" , où "gid" (clé primaire) est un champ de ma table postgis "states_ugl"


le mapfile devient:


Code:

MAP
 imageCOLOR 10 78 100

IMAGETYPE PNG

STATUS ON

EXTENT -97.239 41.62 -82.123 49.386

SIZE 512 347

 

 
LAYER
  

  CONNECTION "host=localhost dbname=postgistest user=postgres password=azertyuiop port=5432"

  CONNECTIONTYPE POSTGIS

  DATA "the_geom from states_ugl using unique gid"
  NAME "states_ugl"
  TYPE POLYGON
    
 STATUS DEFAULT
    CLASS
     

      COLOR 89 225 225
      OUTLINECOLOR 0 0 0
      
         
   
    END



END

END

en revanche si je parametre le status du layer à "ON", il n'affiche rien, apparement il faut qu'il soit obligatoirement à "DEFAULT" !

Savez-vous pourquoi?

Dernière modification par icadedt (Fri 23 April 2010 10:49)

Hors ligne

 

#4 Fri 23 April 2010 11:10

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: exemple de mapfile postgis

Bonjour,

Voici la réponse issu de la FAQ qui te concerne :

STATUS ON and STATUS OFF set the default status of the layer. If a map is requested, those layers will be ON/OFF unless otherwise specified via the layers parameter. This is particularly the case when using MapScript and MapServer’s built-in template mechanism, but is also useful as a hint when writing your own apps and setting up the initial map view.

STATUS DEFAULT means that the layer is always on, even if not specified in the layers parameter. A layer’s status can be changed from DEFAULT to OFF in MapScript, but other than that, it’s always on.

CGI turns everything off that is not “STATUS DEFAULT” off so all layers start from the same state (e.g. off) and must be explicitly requested to be drawn or query. That common state made (at least in my mind) implementations easier. I mean, if a layer “lakes” started ON the doing layer=lakes would turn it OFF. So I wanted to remove the ambiguity of a starting state.


http://mapserver.org/faq.html

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

Pied de page des forums

Powered by FluxBB