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 :

POI en Lambert II e


Sujet :

IGN API Géoportail

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 7
    Par défaut POI en Lambert II e
    Bonjour,

    Je ne sais comment résoudre le problème suivant:

    La finalité d'une application en python est la création d'un fichier Html utilisant l'api geoportail afin d'afficher un POI, associé à un fichier kml.
    la carte doit être centrée sur le Poi avec le zoom adequat.
    Pas de soucis tant que les coordonnées du centrage et du POI sont des lat et lon en décimale avec :
    VISU.getMap().setCenterAtLonLat(lon, lat, zoom);
    var mon_point = new OpenLayers.Geometry.Point(lon, lat);

    Cependant la majorité des coordonnées de mes POI sont des X et Y en Lambert II étendus,

    Comment afficher mes données avec un POI en cartographique Lambert II tout en conservant mes points du kml en géographique décimal ?

    Je n'ai pas trouvé de solution de conversion Lambert-->geo dec applicable à mon niveau en math , et malgré mes recherches tout ce que j'ai trouvé ce sont des possibilités de centrage de carte sur des coordonnées géographiques. Y a t il une solution ?
    merci

    Ps, je sais qu'il existe des outils pour effectuer la conversion nécessaire, cependant je cherche à ce que cela soit automatisé par mon soft au niveau du script, j'ai quelques centaines si ce n'est milliers de points X et Y susceptibles d'être afficher. Je ne trouve pas de formule utilisable par un humain,

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 133
    Par défaut
    Quelque chose comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    // le marqueur NE en Lambert IIe	
      var position=new OpenLayers.LonLat(314990,2355910);
      projLIIe = new OpenLayers.Projection("IGNF:LAMBE");
      position.transform(projLIIe, map.getProjection());
      var marqueur = new OpenLayers.Marker(position);
      layer.addMarker(marqueur);

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 7
    Par défaut
    Merci pour la réponse, je vais voir immédiatement si j'arrive à l'appliquer.

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 7
    Par défaut
    Avec la réponse proposée qui en l'état ne semble pas fonctionner dans ma page et divers autres renseignements tirés de la doc, du site de l'API etc etc, je suis arrivé à 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
    
    <!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>Vikking</title>
                <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
                
                <script type="text/javascript" src="http://api.ign.fr/geoportail/api?v=1.2-e&amp;key=xxxxxxxxxxxxxxxxxxxxxxxx&amp;instance=VISU"></script>
                <script type="text/javascript">
                    <!--
                        function initGeoportalMap()
                            {
                            // On implémente la carte
                            geoportalLoadVISU("GeoportalVisuDiv", "normal");
                            // On charge les couches de données définies dans le contrat
                            if (VISU) {VISU.addGeoportalLayers([
    															'ORTHOIMAGERY.ORTHOPHOTOS:WMSC',
    															'GEOGRAPHICALGRIDSYSTEMS.MAPS:WMSC'/*,
    															'BUILDINGS.BUILDINGS:WMS'*/]);}
    															
                            // marqueur en Lambert IIe	
    						var position=new OpenLayers.LonLat(568058,2322581);
    						var projsrc = new OpenLayers.Projection("IGNF:LAMBE");
    						var projdst = new VISU.getProjection();
    						position.transform (projsrc, projdst);
    						var marqueur = new VISU.OpenLayers.Marker(position);
    						VISU.addMarker(marqueur);
                            
                            }
                    -->
                </script>
            </head>
            <body onload="initGeoportalMap();">  
                <h1>Marqueur Lambert 2</h1>
    			<div id="GeoportalVisuDiv" style="width:800px;height:600px;"></div>
            </body>
        </html>
        
    <body onload="initGeoportalMap();">  
        <h1> 568058, 2322581</h1>
        <div id="GeoportalVisuDiv" style="width:800px;height:600px;"></div>
    </body>
    </html>
    Bien entendu ça ne fonctionne pas, pas d'affichage du marqueur au coordonnées désirées.
    Si on peut me dire où sont mes erreurs...
    Merci.

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 133
    Par défaut
    J'avais fait cela il y a longtemps: http://atlasnw.free.fr/geoportail/ex...ojections.html qui devrait t'inspirer!

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 7
    Par défaut
    Merci, je vais étudier ça et trouver l'inspiration ...
    j'espère...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [POI] Style et taille de cellule pour Excel
    Par relivio dans le forum Documents
    Réponses: 6
    Dernier message: 28/05/2014, 10h45
  2. [POI / JExcelAPI][premiere fois] comment ça marche ?
    Par Regis.C dans le forum Documents
    Réponses: 13
    Dernier message: 25/11/2009, 10h01
  3. [POI] execution de macro...
    Par BizuR dans le forum Documents
    Réponses: 6
    Dernier message: 31/08/2006, 09h28
  4. Problème avec la librairie POI
    Par clement42 dans le forum Documents
    Réponses: 3
    Dernier message: 18/11/2005, 19h11
  5. [POI] Usage à partir d'une Servlet
    Par fredmorvant29 dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 19/07/2004, 15h35

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