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

IGN API Géoportail Discussion :

débutante : place du code pour modif affichage


Sujet :

IGN API Géoportail

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Points : 68
    Points
    68
    Par défaut débutante : place du code pour modif affichage
    Bonjour !

    Archi débutante, je ne sais pas où mettre le code pour modifier la transparence de la carte à l'affichage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // Changer la transparence par défaut de la couche « Cartes » à 80%
    for (var i=0;i<viewer.getMap().layers.length;i++)
    {
     if (viewer.getMap().layers[i].name == 'GEOGRAPHICALGRIDSYSTEMS.MAPS')
     {
       viewer.getMap().getLayersByName(viewer.getMap().layers[i].name)[0].setOpacity(0.8);
     }
    }
    Pourriez-vous me le dire svp ?
    Merci d'avance !

    Pour l'instant ma page d'essai est comme cela :

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <title>API Geoportail - votre carte personnelle</title>
      <meta http-equiv="X-UA-Compatible" content="IE=7"/>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
      <script
        type="text/javascript"
        src="http://api.ign.fr/geoportail/api?v=1.0beta4&amp;key=8933678217670066389&amp;instance=VISU">
      <!-- -->
      </script>
    
      <script type="text/javascript">
      <!--
        function initGeoportalMap() {
          geoportalLoadVISU("GeoportalVisuDiv", "normal");
       
       // Exemple avec un code territoire (ici la Guadeloupe)
       // Snapshot with a territory code (here Guadeloupe island)
       // geoportalLoadVISU("GeoportalVisuDiv", "normal", "GLP");
    
          if (VISU) {
            VISU.addGeoportalLayers();
    		
    		
    // Creation d’un point 
    
    var mon_point = new OpenLayers.Geometry.Point(-0.4, 46.65); 
    
    // Passage en projection Géoportail 
          var sourceproj = OpenLayers.Projection.CRS84; // WGS84
          var destproj = VISU.projection; // projection Geoportail
          mon_point.transform(sourceproj, destproj); 
    
    
    // Création du POI  à partir du point
          var stylepoi = {externalGraphic:'http://api.ign.fr/geoportail/api/js/1.0beta4/theme/geoportal/img/picto_zoomToMapExtent_ off.gif',  graphicWidth:50, graphicHeight:50 };
          var mon_poi = new OpenLayers.Feature.Vector(mon_point, null, stylepoi); 
    
    // Ajout d’une couche d'objet vectoriels
          var vector_layer = new OpenLayers.Layer.Vector('Mes POIs'); 
    // Ajout du POI à la couche créée et affichage de la couche
          vector_layer.addFeatures([mon_poi]);
    // Ajout de la couche à la carte
          VISU.getMap().addLayer(vector_layer); 
    
    
    // Ajout de l’info bulle 
          var popup = new OpenLayers.Popup('id', 
                            new OpenLayers.LonLat(mon_point.x, mon_point.y), 
                            new OpenLayers.Size(200,50), 
                           'Ma Première info bulle', 
                           true
          );
    
    // Ajout de l’info bulle
          VISU.getMap().addPopup(popup, true); 
    
    
          }
    	  
        }
      -->
      </script>
    </head>
    <body>
      <div id="GeoportalVisuDiv" style="width:800px;height:600px;"></div>
    </body>
    </html>

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 124
    Points : 1 764
    Points
    1 764
    Par défaut Quelques remarques ...
    Il faut bien vite oublier la 1.0beta4.
    La 1.0 ne nécessite plus la compatibilité IE-7.
    En 1.0, une solution pour l'opacité est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    viewer.addGeoportalLayers(['GEOGRAPHICALGRIDSYSTEMS.MAPS:WMSC'], { opacity:1.0 });

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Points : 68
    Points
    68
    Par défaut
    le code qu'ils donnent quand on crée un contrat (je viens d'en créer un autre) est celui-là :

    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
    28
    29
    30
    31
    32
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <title>API Geoportail - votre carte personnelle</title>
      <meta http-equiv="X-UA-Compatible" content="IE=7"/>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
      <script
        type="text/javascript"
        src="http://api.ign.fr/geoportail/api?v=1.0beta4&amp;key=7604651427970581049&amp;instance=VISU">
      <!-- -->
      </script>
    
      <script type="text/javascript">
      <!--
        function initGeoportalMap() {
          geoportalLoadVISU("GeoportalVisuDiv", "normal");
       
       // Exemple avec un code territoire (ici la Guadeloupe)
       // Snapshot with a territory code (here Guadeloupe island)
       // geoportalLoadVISU("GeoportalVisuDiv", "normal", "GLP");
    
          if (VISU) {
            VISU.addGeoportalLayers();
          }
        }
      -->
      </script>
    </head>
    <body>
      <div id="GeoportalVisuDiv" style="width:800px;height:600px;"></div>
    </body>
    </html>
    Ils ne mettent dons pas en ligne la version la plus récente ?

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 124
    Points : 1 764
    Points
    1 764
    Par défaut
    Ils ont un peu de retard à l'allumage! sur ce forum cmail en a fait la remarque.

    Pour être constructif, cette page peut servir de base: http://atlasnw.free.fr/geoportail/ex...ojections.html

    Je charge une version en locale de l'API pour des problèmes de compatibilité avec IE8.
    Pour des tests juste sous Firefox, le code suivant est préférable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        <script type="text/javascript" src="http://api.ign.fr/geoportail/api?v=1.0-e&amp;key=6767854512754535096&amp;instance=viewer&amp;includeEngine=true&amp;"><!-- --></script>

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 223
    Points : 68
    Points
    68
    Par défaut
    merci !

  6. #6
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966

  7. #7
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par evevev Voir le message
    Ils ne mettent dons pas en ligne la version la plus récente ?
    "Ils" s'excuse c'est un oubli; dès qu'"Ils" aura du temps, "Ils" mettra à jour le modèle retourné par le site de création de contrat avec le modèle suivant :

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <title>API Geoportail - votre carte personnelle</title>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
      <script
        type="text/javascript"
        src="http://api.ign.fr/geoportail/api?v=1.0&amp;key=#CONTRACT_KEY#&amp;instance=VISU">
      <!-- -->
      </script>
    
      <script type="text/javascript">
      <!--
        function initGeoportalMap() {
          // Par défaut on se positionne sur la France métropolitaine :
          // Default to France main land :
          geoportalLoadVISU("GeoportalVisuDiv");
    
          // Avec un code territoire (ici la Guadeloupe), on peut choisir son point de vue
          // Snapshot with a territory code (here Guadeloupe island)
          // geoportalLoadVISU("GeoportalVisuDiv", "normal", "GLP");
    
          if (VISU) {
            VISU.addGeoportalLayers();
          }
    
          VISU.setCenter(VISU.viewerOptions.defaultCenter,VISU.viewerOptions.defaultZoom);
        }
      -->
      </script>
      <style type="text/css">
      <!--
      div#GeoportalVisuDiv {
        width:800px;
        height:600px;
      }
        -->
      </style>
    </head>
    <body>
      <div id="GeoportalVisuDiv"></div>
    </body>
    </html>

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Et "ils" seront pardonnés

  9. #9
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Amen!

  10. #10
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut Utilité de <body onload="initGeoportalMap();">
    A propos, Cmail, dans le lien que tu cites précédemment, tu indiques qu'il faut modifier <body> comme ceci :
    <body onload="initGeoportalMap();">
    Sais-tu quelle est l'utilité de cette modif et si elle présente un intérêt en production ?

    Merci par avance.

  11. #11
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Salut Zébulon (comment vas-tu? )
    dgrichard a rectifié mes propos de la manière suivante:
    Cette référence en onload était utile tant que l'API était en essai. Depuis le 16 mars (date officielle de sortie en production) elle n'est plus utile.

  12. #12
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par Zébulon-21 Voir le message
    Sais-tu quelle est l'utilité de cette modif et si elle présente un intérêt en production ?
    Aucune quant :

    1/ la fonction à déclencher est initGeoportalMap();
    2/ le paramètre d'instance est défini;
    3/ que le développeur n'a pas mis un callback sur le onload!

  13. #13
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut
    Salut très Chers,

    Tout va bien en ce moment car j'ai enfin un peu de temps libre à consacrer à l'API.

    Cmail : Toi qui es un "fin maniaque" de l'ergonomie, de la mise en page, etc... ce serait sympa de jeter un oeil inquisiteur sur mes exemples de page ICI.

    Ces pages sont à destination de gens comme moi : Les passionnés qui ne maitrisent pas bien les techniques du code. Les adaptations sont théoriquement faciles grâce à la description de chaque bout de code.

  14. #14
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Je ne sais pas très bien ce que tu me demandes.
    J'ai regardé tes 4 pages en version 1.0 (sous FF3) dont l'air de famille est très proches.

    Mes premières impressions:

    1. Je suis toujours très sceptique sur l'intérêt de recentrage de la carte à l'affichage d'un popup.
    2. Comme jeanluc35 te le conseillait , il faudrait que ta couche de trace contienne aussi les différents repères (POI) associés, sinon sous FF3 le jonglage avec les couches ne sera pas évident pour tes visiteurs non férus.

  15. #15
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut
    Merci cmail, c'est exactement ce genre d'avis qui aide à avancer, ainsi que le signalement d'éventuelles balourdises dans le code.

    J'essaye de retrouver la discussion (lancée par toi ?) concernant le recentrage des popups.

  16. #16
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut Recentrage de la carte sur un clic
    Pour Cmail : Apparemment, la dernière discussion traitant du recentrage de la carte, après le clic sur un marqueur, est celle-ci.

    N'ayant plus aucun accès à mon serveur (Mavenhosting "planté" ?), il ne m'est pas possible de re-tester la formule avancée dans cette discussion. Mais j'ai fait choux blanc jusqu'à présent :
    Dans la 1.0bêta5, il est possible d'ajouter l'option panMapIfOutOfView à false à la création du layer.
    As-tu trouvé la solution miracle de ton côté ?
    (il faut peut-être relancer le sujet dans une discussion distincte de celle-ci ?)

  17. #17
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Par exemple un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    viewer.getMap().addLayer("KML","communes","./kml/commune.kml",
               {    minZoomLevel: 7,
                    maxZoomLevel:10,
                    panMapIfOutOfView:false,
                    styleMap:s100Style,
                    visibility: true
                    },
    répond à notre attente (à ce que je comprends de ta demande).
    Mais SGDG (Sans Garantie du Gouvernement) ou plus focalisé SGDGRichard!!!!! Accroche toi!

  18. #18
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par cmail Voir le message
    Mais SGDG (Sans Garantie du Gouvernement) ou plus focalisé SGDGRichard!!!!!
    * OpenLayers: par défaut, panMapIfOutOfView est false sauf pour OpenLayers.Popup.FramedCloud ;
    * Geoportal: par défaut, panMapIfOutOfView est true, il faut donc bien passer panMapIfOutOfView:false à la construction des couches supportant les popups.

Discussions similaires

  1. Réponses: 20
    Dernier message: 23/07/2012, 14h32
  2. Formater du code pour un affichage en html
    Par Cladjidane dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/11/2006, 14h35
  3. code pour l'affichage d'un arbre en visual c++
    Par med_anis_dk dans le forum MFC
    Réponses: 8
    Dernier message: 24/05/2006, 22h16
  4. Réponses: 8
    Dernier message: 28/03/2006, 16h52
  5. Réponses: 4
    Dernier message: 06/11/2003, 10h37

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