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 Tue 25 February 2020 16:09

remi_c
Juste Inscrit !
Date d'inscription: 6 Nov 2019
Messages: 1

Affichage couche WFS avec OpenLayers

Bonjour,

Suite à pas mal de recherche sur internet, je n'arrive pas à afficher ma couche en WFS avec OpenLayers. En WMS, celle-ci s'affichait bien mais étant donné que je veux pouvoir afficher les informations d'un point en cliquant dessus, il était plus simple de le faire en WFS (et aussi parce que j'aimerais pouvoir afficher en WFS et WMS, histoire d'acquérir un peu d’expérience).

Voici mon code java :

Code:

var osm = new ol.layer.Tile({    
  source: new ol.source.OSM({
    crossOrigin: ''
    })
});

var vectorSource = new ol.source.Vector({
    format: new ol.format.GML3({srsName: 'EPSG:3857'}),
    url: 'https://ggat.alwaysdata.net/cgi-bin/mapserv?service=wfs&version=1.1.0&request=GetFeature&map=/home/ggat/www/html/stages.map&typename=stages&',
    projection:'EPSG:3857'
});

var vecteur = new ol.layer.Vector({
    source : vectorSource,
    name: 'stages'
});

var view = new ol.View({
    center: [310640.0830, 5801876.1950],
    zoom: 5
});

//Création de la carte
var map = new ol.Map({            //Ajout de la couche OSM
    layers: [osm,vecteur],                
    target: 'map',
    controls : ol.control.defaults().extend([        //Ajouter des fonctionnalités
        new ol.control.ScaleLine(),                    //Ajouter une échelle
        new ol.control.FullScreen()                    //Ajouter l'option plein écran
    ]),    //fin de controle
    view : view
});

Et mon MapFile :

Code:

MAP
    IMAGETYPE      PNG
    EXTENT         -20000000 -20000000 20000000 20000000
    SIZE           900 900
    IMAGECOLOR     255 255 255
    SYMBOLSET        "/home/ggat/www/html/position.sym"
    PROJECTION
       "init=epsg:3857"
    END
 
WEB
        TEMPLATE        "template_stage.html"
        METADATA
            "wfs_title"           "wfs Server Demonstration"
            "wfs_onlineresource"  "https://ggat.alwaysdata.net/cgi-bin/mapserv?map=/home/ggat/www/html/stages.map"
            "wfs_srs"             "EPSG:3857"
            "wfs_enable_request" "*"
        END
END

OUTPUTFORMAT
  NAME "geojson"
  DRIVER "OGR/GEOJSON"
  MIMETYPE "application/json; subtype=geojson"
  FORMATOPTION "STORAGE=stream"
  FORMATOPTION "FORM=SIMPLE"
END
    
SCALEBAR
  LABEL
    COLOR 0 0 0
    SIZE SMALL
  END
END

LAYER
    NAME stages
    TYPE POINT
    STATUS ON
T -20000000 -20000000 20000000 20000000
    CONNECTIONTYPE POSTGIS
    CONNECTION "host=postgresql-ggat.alwaysdata.net port=5432 dbname='ggat_webmapping' /* Les infos de connexions (privées)*/ "
    DATA "geom from webmapping_stages USING UNIQUE id"    
    PROJECTION
       "init=epsg:3857"
    END
    
    DUMP TRUE

    METADATA
            "wfs_title"           "les stages"
            "wfs_srs"             "EPSG:3857"
            "gml_include_items" "all"
            "gml_featureid"     "ID"
            "wfs_enable_request" "*"
            "wfs_getfeature_formatlist" "geojson"        
    END
    
    CLASS
            NAME "Stages"
            STYLE
            symbol 'pointeur'
                size 30
            END
    END
    END    
    
END

Hors ligne

 

#2 Mon 09 March 2020 21:57

Bruno
Membre du bureau
Lieu: Toulouse
Date d'inscription: 22 Jun 2005
Messages: 11953
Site web

Re: Affichage couche WFS avec OpenLayers

Vous aurez peut-être plus de chance ici (dans ce forum).

Hors ligne

 

Pied de page des forums

Powered by FluxBB