Bienvenue! Inscrivez-vous et rejoignez notre communauté :)
  • Login:

Bienvenue sur Forum SIG - Systèmes d'Information Géographique et Géomatique.

Bienvenue sur le forumSIG. S'il s'agit de votre première visite, assurez vous de faire une recherche préalable dans les FAQ SIG. Vous devez vous inscrire avant de pouvoir poster.

Affichage des résultats 1 à 1 sur 1
  1. #1

    Date d'inscription
    décembre 2017
    Messages
    18

    Par défaut Problème getGetFeatureInfoUrl [OpenLayers3 / Geoserver / PostgreSQL]

    Bonjour, j'utilise OpenLayers3, Geoserver2.7.6 et PostgreSQL.
    J'ai un problème en utilisant la méthode getGetFeatureInfoUrl qui me renvoi des choses que je ne comprends pas.


    J'ai une carte que j'ai modifié et stylisé en SingleBand pseudocolor sous QGIS.
    J'ai importer mon fichier TIFF dans ma base de données et je le recupere sous geoserver via ce protocole : http://www-iuem.univ-brest.fr/pops/attachments/884


    Lors du clic sur mon image TIF, je veux que cette méthode me renvoi la valeur du pixel de mon image, alors qu'elle me renvoi des choses comme :
    367, 87 not in dimensions of image: 256, 256
    350, 196 not in dimensions of image: 256, 256
    365, 181 not in dimensions of image: 256, 256
    A quoi correspond ces chiffres ? 256 est la taille de mes tuiles mais pourquoi OpenLayers me renvoi ça ?


    Lorsque je clique via le portail geoserver, geoserver me renvoi 4 bandes de valeurs differentes comme :
    layer
    fid layer layer_Band1 layer_Band2 layer_Band3
    127.0 39.0 4.0 255.0
    Ces valeurs sont les valeurs des 4 bandes présentes définies dans les métadata de mon fichier TIFF ??? Comment faire pour récupérer uiquement la valeur des pixels et non pas 4 valeurs?? J'ai essayer de paramètrer le Coverage Band Details dans Geoserver (Layers --> Edit Layer), mais impossible de le modifier, il ne prend pas en compte ce que je lui écrit. De quels informations Geoserver se sert pour remplir ces champs là ??


    Le gdalinfo de mon fichier:
    Driver: GTiff/GeoTIFF
    Files: layer.tif
    layer.tif.aux.xml
    layer.tifw
    Size is 1538, 827
    Coordinate System is `'
    Origin = (96.023245667292642,22.569634759397122)
    Pixel Size = (0.010918984280528,-0.010918984280528)
    Metadata:
    TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
    TIFFTAG_XRESOLUTION=96
    TIFFTAG_YRESOLUTION=96
    Image Structure Metadata:
    INTERLEAVE=PIXEL
    Corner Coordinates:
    Upper Left ( 96.0232457, 22.5696348)
    Lower Left ( 96.0232457, 13.5396348)
    Upper Right ( 112.8166435, 22.5696348)
    Lower Right ( 112.8166435, 13.5396348)
    Center ( 104.4199446, 18.0546348)
    Band 1 Block=1538x1 Type=Byte, ColorInterp=Red
    Min=127.000 Max=255.000
    Minimum=127.000, Maximum=255.000, Mean=253.523, StdDev=13.143
    Metadata:
    STATISTICS_MAXIMUM=255
    STATISTICS_MEAN=253.52340702211
    STATISTICS_MINIMUM=127
    STATISTICS_STDDEV=13.143398797696
    Band 2 Block=1538x1 Type=Byte, ColorInterp=Green
    Band 3 Block=1538x1 Type=Byte, ColorInterp=Blue
    Band 4 Block=1538x1 Type=Byte, ColorInterp=Undefined


    Pourquoi j'ai 4 bandes Red/Green/Blue/Undefined alors que j'ai stylisé mon TIFF en singlebandpseudocolor sous QGIS ??


    Mon code en front:
    <!DOCTYPE html>
    <html>
    <head>
    <title>Utilisation WMS</title>


    <script src="lib/v4.6.4/build/ol.js"></script>
    <script src="https://code.jquery.com/jquery-3.2.1.js" integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE=" crossorigin="anonymous"></script>


    <style type="text/css">
    #map {
    height: 500px;
    width: 500px;
    border-style: solid;
    }


    </style>


    </head>
    <body>


    <div id="map"></div>
    <h2>info:</h2>
    <div id="info">&nbsp;</div>


    <script>


    /*********************** PARTIE WMS *******************************************/

    var source = new ol.source.TileWMS({
    url: 'http://localhost:8080/geoserver/wms',
    params: {
    'LAYERS': 'gaez_fao:gleyic_layer',
    'TILED': true
    },
    serverType: 'geoserver'
    });


    var layer = new ol.layer.Tile({
    preload: Infinity,
    visible: true,
    source: source
    });
    layer.setProperties({opacity: 1, contrast:1});


    var layers = [layer];


    var view = new ol.View({
    center: [11500000, 2000000],
    zoom: 6
    });


    var map = new ol.Map({
    layers: layers,
    target: 'map',
    view: view
    });


    /*http://openlayers.org/en/latest/exam...fo-tile.html*/
    map.on('singleclick', function(evt) {
    document.getElementById('info').innerHTML = '';
    var viewResolution = (view.getResolution());
    var url = source.getGetFeatureInfoUrl(
    evt.coordinate, viewResolution, 'EPSG:4326',
    {'INFO_FORMAT': 'text/html'});
    if (url) {
    document.getElementById('info').innerHTML =
    '<iframe seamless src="' + url + '"></iframe>';
    }
    });


    </script>
    </body>
    </html>


    J'espere avoir été le plus complet. Pouvez vous m'aidez svp ?

 

 

Discussions similaires

  1. [Données] Problème Geoserver
    Par khadija.91 dans le forum Assistance Technique
    Réponses: 2
    Dernier message: 12/03/2016, 12h17
  2. [OpenLayers] Équivalences OpenLayers2 <> OpenLayers3
    Par Geo-x dans le forum Assistance et Programmation
    Réponses: 0
    Dernier message: 12/01/2015, 12h56
  3. [OpenLayers] Openlayers3 création de popup
    Par Leehan dans le forum Assistance et Programmation
    Réponses: 1
    Dernier message: 29/07/2014, 10h50
  4. [GeoServer] Geoserver + appachephp probleme entre php et geoserver
    Par Mr_CoDe dans le forum Assistance et Programmation
    Réponses: 0
    Dernier message: 06/10/2012, 20h50
  5. [OpenLayers] OL et Geoserver : problème de proxy
    Par gerome45 dans le forum Assistance et Programmation
    Réponses: 4
    Dernier message: 31/01/2011, 08h17

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •