IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SIG : Système d'information Géographique Discussion :

Openlayers: affichage d'une couche vecteur


Sujet :

SIG : Système d'information Géographique

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien en Geomatique
    Inscrit en
    Avril 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien en Geomatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 21
    Points : 16
    Points
    16
    Par défaut Openlayers: affichage d'une couche vecteur
    Bonjour,
    J'essai il y a des jours sans succès d'afficher une couche vecteur avec openlayers, voici comment je définie ma couche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    var style = new OpenLayers.Style({
     'strokeWidth': 1,
      'strokeColor': '#000000',
      'fillOpacity': '0.4'
      });      
    
    
      var gouv = new OpenLayers.Layer.Vector(
            "geojson",
            {
                strategies: [new OpenLayers.Strategy.Fixed()],
                isBaseLayer:false,
                projection : new OpenLayers.Projection("EPSG:4326"),
                protocol: new OpenLayers.Protocol.HTTP({
                   url: "http://localhost/MonTP/Appli_stage/pg_connexion.php",
                    format: new OpenLayers.Format.GeoJSON()
                }),
                styleMap: style
            }
        );
    le résultat est que j'obtient le nom de la couche dans le layer switcher mais elle ne s'affiche pas réellement, et dans logs de la console javascript j'obtient le message d'erreur suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XHR finished loading: "http://localhost/MonTP/Appli_stage/pg_connexion.php".
    quelqu'un a rencontré le probleme ?
    je vous joint une imprime ecran du resultat
    Images attachées Images attachées  

  2. #2
    Membre à l'essai
    Homme Profil pro
    Technicien en Geomatique
    Inscrit en
    Avril 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien en Geomatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Bonjour,!!
    je sèche là est ce que quelqu'un peut m'aider svp

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 214
    Points : 310
    Points
    310
    Par défaut
    Le message ne ressemble pas à un message d'erreur.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Technicien en Geomatique
    Inscrit en
    Avril 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien en Geomatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Bonjour,
    je reviens avec mon ancien problème
    je ne crois pas que le probleme vient du chargement de la couche vecteur, voici la définition des variables:
    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     var gouv = new OpenLayers.Layer.Vector("GOUVERNORAT", {
           strategies: [new OpenLayers.Strategy.BBOX()],  projection: new OpenLayers.Projection("EPSG:4326"),
           protocol: new OpenLayers.Protocol.WFS({
           url: "http://localhost/cgi-bin/mapserv.exe?map=C:/OSGeo4W/apache/htdocs/MonTP/Appli_stage/mapfile.map",
           featureType: "afrique",
           srsName: "EPSG:4326",
           featureNS: "http://www.openplans.org/topp",
    	   geometryName: "the_geom",
    	   version: "1.0.0",
           }),
           styleMap: new OpenLayers.StyleMap({
           strokeWidth: 3,
           strokeColor: "#ffffff"
          })
         });
    dans la console du firebug j'obtient la ligne suivante :"POST http://localhost/cgi-bin/mapserv.exe?map=C:/OSGeo4W/apache/htdocs/MonTP/Appli_stage/mapfile.map"
    et dans l'anglet Réponse j'ai le code XML suivant:
    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?xml version='1.0' encoding="ISO-8859-1" ?>
    <wfs:FeatureCollection
       xmlns:ms="http://mapserver.gis.umn.edu/mapserver"
       xmlns:wfs="http://www.opengis.net/wfs"
       xmlns:gml="http://www.opengis.net/gml"
       xmlns:ogc="http://www.opengis.net/ogc"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd 
                           http://mapserver.gis.umn.edu/mapserver http://localhost/cgi-bin/mapserv.exe?map=C:/OSGeo4W/apache/htdocs/MonTP/Appli_stage/mapfile.map&amp;SERVICE=WFS&amp;VERSION=1.0.0&amp;REQUEST=DescribeFeatureType&amp;TYPENAME=feature:afrique&amp;OUTPUTFORMAT=XMLSCHEMA">
          <gml:boundedBy>
              <gml:Box srsName="EPSG:4326">
                  <gml:coordinates>7.522091,30.239791 11.607518,37.347021</gml:coordinates>
              </gml:Box>
          </gml:boundedBy>
    <!-- WARNING: FeatureId item 'NAME' not found in typename 'afrique'. -->
        <gml:featureMember>
          <ms:afrique>
            <gml:boundedBy>
                <gml:Box srsName="EPSG:4326">
                    <gml:coordinates>9.592882,36.000441 10.390449,36.661751</gml:coordinates>
                </gml:Box>
            </gml:boundedBy>
            <ms:msGeometry>
            <gml:Polygon srsName="EPSG:4326">
              <gml:outerBoundaryIs>
                <gml:LinearRing>
                  <gml:coordinates>10.018452,36.660716 10.018519,36.660667 10.018560,36.660638 10.018587,36.660618 10.018588,36.660617 10.018654,36.660570 10.018668,36.660560 10.018722,36.660522 10.018791,36.660475 10.018833,36.660446 10.018842,36.660440 10.018860,36.660428 10.018888,36.660409 10.018930,36.660381 10.019000,36.660335........
    la réponse XML est complete mais je n'ai pas tout mis car c'est trop long mais la réponse est valide, je l'ai enregistré en format xml et je l'ai ouvert dans qgis et j'ai bien obtenu la couche
    Mais il y a un méchant erreur qui m'apprait et que je ne comprend pas son origine!
    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Erreur d'analyse XML : aucun élément trouvé Emplacement : moz-nullprincipal:{fe5c2d4a-29d7-429b-9df3-40d8f8e511c8} Numéro de ligne 540, Colonne 447132 :
    ...55374,37.113521 10.15414, 37.113526 10.155453, 37.
    ...--------------------------------------------------^
    Est ce que le problème peut etre lié à l'url que j'y accède "http://localhost/MonTP/Appli_stage/essai.html" ? doit je configurer un proxy? mais je travail sur un seul serveur en locale "mapserver" , comment savoir quelle est la bonne url dont je peut y accèder ?
    j'attend votre aide svp

  5. #5
    Membre à l'essai
    Homme Profil pro
    Technicien en Geomatique
    Inscrit en
    Avril 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien en Geomatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Bonjour,
    tous mes essais ne donnent rien, j'attend encore une lumière

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 37
    Points : 37
    Points
    37
    Par défaut
    Hello,
    concernant tes soucis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XHR finished loading: "http://localhost/MonTP/Appli_stage/pg_connexion.php".
    ce n'est pas un message d'erreur, il te dis justement qu'il a chargé la ressource. Après à savoir si cela correspond à la bonne couche chez toi, a toi de contrôler...

    Mais pour le xml que tu as ajouté, si tu lis le contenu, il est clairement écrit que le problème est le featureType qu'il ne trouve pas.

    Tu as défini mais tu es sûr de cette définition dans ta couche ?

    Pour tes questions :
    Citation Envoyé par georex Voir le message
    Est ce que le problème peut etre lié à l'url que j'y accède "http://localhost/MonTP/Appli_stage/essai.html" ?
    La page HTML n'a rien à voir avec cela, le javascript s'exécute sur une page HTML sans problème.
    Citation Envoyé par georex Voir le message
    doit je configurer un proxy?
    Si tu va chercher du contenu externe, ton JavaScript devra aller chercher du contenu en passant sur un autre serveur, ce qui est interdit. Tu n'auras donc pas d'autres choix que de passer par un proxy.php. Cela n'est pas nécessaire si tu récupères juste les données d'un service sur ton serveur. Tu peux simplement passer par un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $.getJSON("WS/ws_getData.php",{...
    ($ = jquery)


    edit : Merci de mettre tes autres questions en [Résolu] si c'est le cas.

Discussions similaires

  1. affichage d'une couche postgis avec openlayers
    Par georex dans le forum SIG : Système d'information Géographique
    Réponses: 0
    Dernier message: 20/04/2012, 16h15
  2. [SVG 1.1] Affichage d'une couche GEOMETRY
    Par yo_haha dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/02/2011, 08h50
  3. Edition d'une couche vecteur existante
    Par mga_geo dans le forum IGN API Géoportail
    Réponses: 5
    Dernier message: 19/02/2010, 18h52
  4. Affichage d'une couche WMS Diren
    Par Berto974 dans le forum IGN API Géoportail
    Réponses: 9
    Dernier message: 18/12/2009, 19h58
  5. Affichage d'une couche TMS
    Par mga_geo dans le forum IGN API Géoportail
    Réponses: 1
    Dernier message: 10/10/2009, 10h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo