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 :

Impossible d'afficher la carte géoportail


Sujet :

SIG : Système d'information Géographique

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2015
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Juin 2015
    Messages : 81
    Points : 30
    Points
    30
    Par défaut Impossible d'afficher la carte géoportail
    Bonjour,
    Je souhait afficher la carte géoportail sur un site internet. Malheureusement je ne trouve pas mon erreur.

    Pouvez vous m'aider? voici mon code. Merci


    HTML :

    <!DOCTYPE html>
    <html>
    <head>
    <title>Entrez votre titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" href="./css/style.css" />

    </head>
    <body>
    <h1 id="title">Entrez votre titre</h1>
    <div id="viewerContainer"></div>
    <script type="text/javascript">
    */**
    ** Property: iViewer
    ** {<Geoportal.InterfaceViewer>} The Geoportal API viewer interface.
    **/
    *iViewer= null;
    *
    */**
    ** Function: init
    ** Load the map. Called when "onload" event is fired.
    **/
    *function init() {
    **iViewer= Geoportal.load(
    *****// map's div id - identifiant de la div de la carte :
    *****"viewerContainer",
    *****// API's keys - clefs API :
    *****["g3fkg6ryrgrx16e8uwbnhtdk"],
    ******{
    ********// center in WGS84G - centre en WGS84G
    ********lon:2.36,
    ********lat:46.45000000000001
    ******},
    *****// zoom level (0-20) - niveau de zooms (0 à 20) :
    *****6,
    ******{
    *******// various options :
    ********// viewer default controls options overloads :
    ********componentsOptions:{},
    ********// Geoportal's layers to load (when none, all contracts' layers are loaded) :
    ********layers:["GEOGRAPHICALGRIDSYSTEMS.MAPS:WMTS","AREAMANAGEMENT.ZFU:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.NIVEAUXGRIS:WMTS","UTILITYANDGOVERNMENTALSERVICES.ALL:WMTS","GEOGRAPHICALNAMES.NAMES:WMTS","LANDUSE.AGRICULTURE2010:WMTS","LANDUSE.AGRICULTURE2008:WMTS","PROTECTEDAREAS.APB:WMTS","GEOGRAPHICALGRIDSYSTEMS.PLANIGN:WMTS","LANDUSE.AGRICULTURE2007:WMTS","GEOGRAPHICALGRIDSYSTEMS.ADMINISTRATIVEUNITS:WMTS","PROTECTEDAREAS.PN:WMTS","LANDUSE.AGRICULTURE2009:WMTS","ELEVATION.SLOPES:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN25TOUR.L93:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN25TOPO.L93:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.STANDARD.L93:WMTS","TRANSPORTNETWORKS.ROADS:WMTS","BUILDINGS.BUILDINGS:WMTS","ADMINISTRATIVEUNITS.BOUNDARIES:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.STANDARD:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.CLASSIQUE.L93:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.CLASSIQUE:WMTS","GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.ROUTIER:WMTS","LANDUSE.AGRICULTURE2012:WMTS","LANDUSE.AGRICULTURE2011:WMTS"],
    ********// Geoportal's layers options :
    ********layersOptions:{"GEOGRAPHICALGRIDSYSTEMS.MAPS:WMTS":{"opacity":0.3,"visibility":true},"AREAMANAGEMENT.ZFU:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.NIVEAUXGRIS:WMTS":{"opacity":1,"visibility":false},"UTILITYANDGOVERNMENTALSERVICES.ALL:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALNAMES.NAMES:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2010:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2008:WMTS":{"opacity":1,"visibility":false},"PROTECTEDAREAS.APB:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.PLANIGN:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2007:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.ADMINISTRATIVEUNITS:WMTS":{"opacity":1,"visibility":false},"PROTECTEDAREAS.PN:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2009:WMTS":{"opacity":1,"visibility":false},"ELEVATION.SLOPES:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN25TOUR.L93:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN25TOPO.L93:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.STANDARD.L93:WMTS":{"opacity":1,"visibility":false},"TRANSPORTNETWORKS.ROADS:WMTS":{"opacity":1,"visibility":false},"BUILDINGS.BUILDINGS:WMTS":{"opacity":1,"visibility":false},"ADMINISTRATIVEUNITS.BOUNDARIES:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.STANDARD:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.CLASSIQUE.L93:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.CLASSIQUE:WMTS":{"opacity":1,"visibility":false},"GEOGRAPHICALGRIDSYSTEMS.MAPS.SCAN-EXPRESS.ROUTIER:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2012:WMTS":{"opacity":1,"visibility":false},"LANDUSE.AGRICULTURE2011:WMTS":{"opacity":1,"visibility":false}},
    ********overlays:{},
    *
    **// callback to use before returning (after centering) :
    **onView:function() {viewer=iViewer.getViewer();
    *
    ******//Récupération de la barre d'outils
    ******var tbx= viewer.getMap().getControlsByClass("Geoportal.Control.ToolBox")[0];
    ******var panel= new Geoportal.Control.Panel({
    ******div:OpenLayers.Util.getElement(tbx.id+"_search")
    **});
    *
    **viewer.getMap().addControls([panel]);
    *
    ******//Ajout du contrôle d'impression
    ******var nv= viewer.getMap().getControlsByClass("Geoportal.Control.NavToolbar")[0];
    ******nv.addControls([new Geoportal.Control.PrintMap()]);
    *
    ******//Ajout de la barre d'outils de mesures
    ******var measurebar= new Geoportal.Control.MeasureToolbar({
    ********div: OpenLayers.Util.getElement(tbx.id+"_measure"),
    ********displaySystemviewer.getMap().getProjection().getProjName()=="longlat"?"geographic":"metric"),
    ********targetElement: OpenLayers.Util.getElement(tbx.id+"_meares")
    ******});
    **
    **viewer.getMap().addControl(measurebar);
    *
    ******//Ajout de la LayerToolbar
    ******var tOpts= {div: OpenLayers.Util.getElement(tbx.id+"_addlyr")};
    **********tOpts= OpenLayers.Util.extend(tOpts,{
    ************addVectorLayerOptions:{
    **************supportedClasses:[
    ****************"OpenLayers.Format.KML",
    ****************"Geoportal.Format.GPX",
    ****************"OpenLayers.Format.OSM",
    ****************"OpenLayers.Layer.GeoRSS",
    ****************"OpenLayers.Layer.WFS"
    **************],
    **************styleMapTemplates:{
    ****************"OpenLayers.Layer.GeoRSS":new OpenLayers.StyleMap(
    *****************new OpenLayers.Style(
    *******************OpenLayers.Util.applyDefaults({
    *********************"graphic":true,
    *********************"externalGraphic":Geoportal.Util.getImagesLocation()+"xy-target.gif",
    *********************"graphicOpacity":1.0,
    *********************"graphicWidth":25,
    *********************"graphicHeight":25,
    *********************"graphicXOffset":-12.5,
    *********************"graphicYOffset":-12.5
    *******************},OpenLayers.Feature.Vector.style["default"])
    *****************)
    ****************)
    **************},
    **************layerVectorOptions:{
    ****************global:{
    ****************}
    **************}
    ************},
    *
    ************addImageLayerOptions:{
    **************layerImageOptions:{
    ****************singleTile:false
    **************}
    ************}
    *
    ******});
    ******var LayerToolbar= new Geoportal.Control.LayerToolbar(tOpts);
    ******viewer.getMap().addControl(LayerToolbar);
    *
    ******//Accès au GéoCatalogue
    ******var CSW= new Geoportal.Control.CSW(
    ********OpenLayers.Util.extend(
    ************{
    *************title:"gpControlCSW.title"
    ************},
    ************{
    *************cswUrl:"http://www.geocatalogue.fr/api-public/servicesRest?"
    ************}
    **********))
    ******panel.addControls([CSW]);
    *
    ******//Ajout du contrôle de recherche par noms de lieux
    ******var GeoNames= new Geoportal.Control.LocationUtilityService.GeoNames(
    ********new Geoportal.Layer.OpenLS.Core.LocationUtilityService(
    ************"PositionOfInterest:OPENLS;Geocode",//layer name
    ************{
    *************maximumResponses:100,
    **************formatOptions: {
    **************}
    ************}
    ********),{
    ************drawLocation:true,
    ************setZoom: Geoportal.Control.LocationUtilityService.GeoNames.setZoomForBDNyme,
    ************autoCompleteOptions: {}
    **********}
    ******);
    ******panel.addControls([GeoNames]);
    *
    ******//Ajout du contrôle de recherche par adresses
    ******var Geocode= new Geoportal.Control.LocationUtilityService.Geocode(
    ********new Geoportal.Layer.OpenLS.Core.LocationUtilityService(
    ************"StreetAddress:OPENLS;Geocode",//layer name
    **************{
    ****************maximumResponses:100,
    ****************formatOptions: {
    ****************}
    **************}
    ***********),{
    ****************drawLocation:true,
    ****************setZoom: Geoportal.Control.LocationUtilityService.GeoNames.setZoomForBDNyme,
    ****************autoCompleteOptions: {}
    **************}
    ******);
    ******panel.addControls([Geocode]);
    **
    ****************},
    *****// class of viewer to use :
    *****viewerClass:"Geoportal.Viewer.Default"
    ************}
    ********);
    ****}
    *
    *
    ****window.onload= init;
    </script>
    <script type="text/javascript" charset="utf-8" src="http://api.ign.fr/geoportail/api/js/2.1.0/GeoportalExtended.js">
    </script>
    </body>
    </html>

    CSS :

    body {
    width: 100%;
    height: 100%;
    }
    body {
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
    }
    div#viewerContainer {
    width: 100%;
    height: 955px
    height: -webkit-calc(100% - 64px);
    height: calc(100% - 64px);
    }
    h1 {
    font-size:25px;
    font-weight:bold;

    color : red;
    font-family: sans-serif;
    }
    Fichiers attachés Fichiers attachés

  2. #2
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut
    Bonjour,

    Avant toute chose, sachez qu'il existe un sous-forum "API IGN Géoportail" dans lequel vous aurez plus de chance d'avoir une réponse à vos questions sur l'utilisation de l'API Géoportail :http://www.developpez.net/forums/f12...pi-geoportail/. Vous y aurez des réponses directement de la part du personnel de l'IGN qui développe et maintient l'API.

    Dans votre cas, il y a deux problèmes majeurs :

    1) Au niveau du CSS, vous utilisez des hauteurs de blocs à 100% mais sans avoir défini la hauteur de votre page html à 100%. Du coup, votre bloc carte calcule une hauteur 100% sur un élément parent qui n'a pas de hauteur, ce qui revient à lui donner une hauteur de 0px et le rend invisible. C'est une erreur classique, pour remédier à ça il suffit d'attribuer une hauteur de 100% à la balise html :
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    html {
      height: 100%;
    }
    Avec ceci, vous verrez apparaître votre bloc carte avec tous ses composants ... mais sans donnée cartographique (fond gris)

    2) Au niveau de l'API, vous essayez de charger énormément de données dont certaines sont hétérogènes en termes d'affichage (et notamment de projection, certaines sont en WebMercator, d'autres en Lambert 93 par exemple). Je pense que lors de la création de votre clé sur http://professionnels.ign.fr/api-web vous avez coché toutes les ressources disponibles, et qu'elles se sont ajoutées automatiquement dans votre code (qui je pense a été généré par le générateur API, je me trompe?). C'est une mauvaise pratique pour deux raisons :
    - cela fait charger des données qui n'ont pas vocation à être affichées ensemble => résultat : un joli fond gris car l'API n'arrive pas à s'en sortir
    - cela va ralentir votre page puisque vous allez faire appel à des quantités de données dont vous n'avez aucune préoccupation

    Pour remédier à cela, si votre but est uniquement d'afficher des cartes IGN, il vous suffit de modifier votre code à cet endroit précis :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // Geoportal's layers to load (when none, all contracts' layers are loaded) :
    layers:["GEOGRAPHICALGRIDSYSTEMS.MAPS"],
    // Geoportal's layers options :
    layersOptions:{"GEOGRAPHICALGRIDSYSTEMS.MAPS":{"opacity":1.0,"visibility":true}},
    Vous aurez alors la couche carte s'affichant avec une opacité à 100%.
    En parallèle à ça, je ne peux que vous conseiller d'aller faire du tri dans les données chargées sur votre clé en gérant votre contrat sur http://professionnels.ign.fr : accès à votre espace (en haut à droite de la page), rubrique "mes commandes", entrée "modifier mon contrat" puis "ajouter/supprimer des données API" (cf. image ci-dessous), et ne laisser cocher que les ressources suivantes :
    - WMTS-Géoportail - Cartes IGN (correspond à la couche de cartes)
    - OpenLS-Géoportail - Administratif (pour faire des recherches par géocodage administratif)
    - OpenLS-Géoportail - Adresses (pour faire des recherches par géocodage d'adresses)
    - OpenLS-Géoportail - Toponymes (pour faire des recherches par géocodage de lieux)
    Nom : 2015-06-10_165444.png
Affichages : 1397
Taille : 39,4 Ko

    Avec cela, vous devriez arriver au résultat attendu. Si vous avez d'autres questions, merci d'utiliser le forum dédié (sinon vos questions risquent de passer inaperçues et de ne pas avoir de réponse)

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2015
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

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

    Informations forums :
    Inscription : Juin 2015
    Messages : 81
    Points : 30
    Points
    30
    Par défaut
    J'ai postuler dans la bonne section avec plus de détail. Je vous remercie de votre aide et j'essai ce que vous m'avez conseillé.

    http://www.developpez.net/forums/d15...nt-geoportail/

  4. #4
    Membre éclairé Avatar de jrenard
    Homme Profil pro
    Webdesigner / développeur front-end
    Inscrit en
    Septembre 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Webdesigner / développeur front-end
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2013
    Messages : 456
    Points : 894
    Points
    894
    Par défaut
    Du coup, ce sujet (et son doublon) peuvent-ils être marqués comme ?

Discussions similaires

  1. Impossible d'afficher la carte géoportail
    Par shyfu dans le forum SIG : Système d'information Géographique
    Réponses: 0
    Dernier message: 09/06/2015, 11h58
  2. QGIS // QGIS_MAPSERVER // QGIS-Web-Client Impossible d'afficher la carte + Crash d'Apache
    Par onaris123 dans le forum SIG : Système d'information Géographique
    Réponses: 1
    Dernier message: 12/12/2014, 03h25
  3. [Google Maps] impossible d'afficher la carte
    Par alex61 dans le forum APIs Google
    Réponses: 0
    Dernier message: 06/12/2011, 13h36
  4. [Google Map]Impossible d'afficher la carte
    Par Invité dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 25/09/2008, 12h46
  5. [EasyPHP]"impossible d'afficher la page"
    Par Nip dans le forum Apache
    Réponses: 3
    Dernier message: 07/04/2005, 22h23

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