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 :

coordonnées gps en mètres


Sujet :

IGN API Géoportail

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2010
    Messages : 67
    Points : 35
    Points
    35
    Par défaut coordonnées gps en mètres
    bonjour,

    Les GPS sont souvent paramétrés pour fournir des coordonnées en mètre (par exemple (zone 32, x= 281231, y=4942030).
    Je cherche à convertir ces coordonnées, fournies par l'utilisateur dans un input pour créer un point sur la carte. ca fonctionne bien si je fourni les coordonnées en degrés décimaux mais impossible d'utiliser les mètres.
    Voici mon code :
    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
    <script type="text/javascript" src="http://api.ign.fr/geoportail/api?v-e=1.0beta4&amp;key=00000000000000000000000&amp;instance=map"> <!-- --> 
    </script> 
    <script type="text/javascript"> 
    
    
    initGeoportalMap = function() {
    
    	var coeur = new OpenLayers.Layer.WMS(
    			"Coeur du PN Ecrins"
    			,"http://cartotest.ecrins-parcnational.fr/wms?"
    			,{layers: "coeur", format: "image/png",transparent:"TRUE" }
    			,{projection: "EPSG:4326", isBaseLayer: false}
    		);
    	return{
    		init: function () {
    			geoportalLoadmap("GeoportalmapDiv", "normal","FXX"); 
    			// Exemple avec un code territoire (ici la Guadeloupe) 
    			//geoportalLoadmap("GeoportalmapDiv", "normal", "GLP"); 
    			if (map) { 
    				map.addGeoportalLayers(); 
    				map.getMap().setCenterAtLonLat("6d20'E", "44d53N",8);
    				map.openToolsPanel(false);
    				map.openLayersPanel(false);
    				map.getMap().addLayer(coeur);
    			} 
    		}
    		,localiserGPS: function (x,y){
    			var position = new OpenLayers.Geometry.Point(x, y);
    			//var z32 = new OpenLayers.Projection("epsg:32632")
    			//position.transform(z32, map.projection);
    			position.transform(OpenLayers.Projection.CRS84, map.projection);
    			var marqueurGeoportail = new OpenLayers.Feature.Vector(
    				position
    				,null
    			);
    			// couche du marqueur
    			var couche = new OpenLayers.Layer.Vector('Marqueur');
    			couche.addFeatures([marqueurGeoportail]);
    			map.getMap().addLayer(couche);
    		}
    	}
    }();
    
    </script> 
    </head> 
    <body onload="initGeoportalMap.init();"> 
    <div style="color:#a2a2a2;font-size:2em;">Petit test pour le parc national des Ecrins</div>
    	<form name="floc">
    		GPS x : <input type="text" name="fx" size="30" value="">
    		GPS y : <input type="text" name="fy" size="30" value="">
    		<img src = "images/tick.gif" alt="Localiser" title="localiser" border="0" width="25px" align="absmiddle" onclick="return initGeoportalMap.localiserGPS(document.floc.fx.value, document.floc.fy.value)">
    	</form>
    <div  id="GeoportalmapDiv" style="width:800px;height:600px;"></div> 
    </body>
    si j'active ces deux lignes
    var z32 = new OpenLayers.Projection("epsg:32632")
    position.transform(z32, map.projection);
    et que je commente celle-ci :
    position.transform(OpenLayers.Projection.CRS84, map.projection);
    ça ne fonctionne plus.

    Idem, est-il possible de gérer le contenu du bandeau bleu sous la carte pour avoir dans la liste une projection wgs84 en mètre.

    Merci de votre aide
    Gil

  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
    Sur cette page http://atlasnw.free.fr/geoportail/ex...ojections.html, je mets des points à partir de différentes coordonnées dont les utm.
    Dans le bandeau, les coordonnées sont Lambert93 (donc en mètres).

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2010
    Messages : 67
    Points : 35
    Points
    35
    Par défaut
    merci pour cet exemple, j'ai pu m'en inspirer et m'apercevoir que j'avais des erreur de 'defs' sur ma projection 32632. J'ai donc vu que vous chargiez un 'GeoportalExtended.js' local. Alors que mon appli ne chargeait que la page distante de l'IGN. J'ai donc été sur la page de téléchargement du site de l'API geoportail et j'ai téléchargé la toute nouvelle version 1.0.
    Le problème est que je charge ce fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript" src="http://api.ign.fr/geoportail/api?v-e=1.0&amp;key=5191482227938395905&amp;instance=map&amp;includeEngine=false&amp;"></script> 
    <script type="text/javascript" src="http://localhost/testgeoportail/js/geoportal-1.0/js/1.0/lib/geoportal/lib/Geoportal.js"></script>
    et que du coup, ce fichier charge des dizaines de .js. Le chargement de ma page, même en localhost prend près d'une minute, ce qui n'est pas acceptable.
    Par contre maintenant ça fonctionne.
    Mais j'imagine qu'il y a une façon de faire qui ne charge pas tout ces js.
    Où peut-on trouver un geoportal.js compressé et compatible avec la V1.0 ?

  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
    Je récupère les 3 fichiers Geoportal.js, GeoportalExtended.js etGeoportalMin.js via l'url de production de l'api http://api.ign.fr/geoportail/api/js/1.0/

    Mais normalement l'inclusion du javascript fonctionne.
    Il ne faut pas mettre "api?v-e=1.0" mais "api?v=1.0-e"

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2010
    Messages : 67
    Points : 35
    Points
    35
    Par défaut résolu
    Effectivement le pb venait de là. Avec "api?v=1.0-e" ça fonctionne bien et à vitesse normale.
    merci beaucoup pour la disponibilité et la rapidité des réponses. Je peux poursuivre mon développement.

  6. #6
    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 gilgil Voir le message
    ça ne fonctionne plus.
    Avec les retours de mg_geo, cela fonctionne-t-il ?

    Citation Envoyé par gilgil Voir le message
    Idem, est-il possible de gérer le contenu du bandeau bleu sous la carte pour avoir dans la liste une projection wgs84 en mètre.
    Je pense que tu veux signifier une projection UTM sur WGS84

    Si oui, il suffit d'indiquer à la construction de la carte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    geoportalLoadmap("GeoportalmapDiv", "normal","FXX",null,['EPSG:32632']);
    Tu peux en mettre plusieurs dans le tableau final.
    Sinon, à moins de faire tes propres définitions met epsg en EPSG, dans ce cas, la bibliothèque PROJ4JS tente automatiquement de charger la définition depuis http://spatialreference.org/ (Cf. http://spatialreference.org/ref/epsg/32632/).

  7. #7
    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 Résolu
    Il y a même un petit bouton "Résolu" qui fait plaisir aux modérateurs du forum.

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2010
    Messages : 67
    Points : 35
    Points
    35
    Par défaut
    Merci encore à tous les deux.
    Avec les compléments de dgrichard j'ai pu mettre toutes les projections souhaitées dans le bandeau bleu sous la carte
    Avec ça j'ai tout ce qu'il me faut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    geoportalLoadmap("GeoportalmapDiv", "normal","FXX",null,['EPSG:32632','EPSG:4326','EPSG:27572','EPSG:2154']);
    J'ai aussi corrigé le epsg en EPSG.

    A que je ne sais pas où il est le bouton "résolu alors j'ai écris résolu dans intitulé.
    Je vais regarder l'aide du forum (et pis je vais trouver ) car je ne le vois toujours pas.

    up : Ok ! vu. C'est pas quand on rédige mais après...

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

Discussions similaires

  1. Coordonnées Gps Access 2007
    Par pkrvz dans le forum Outils
    Réponses: 1
    Dernier message: 13/04/2008, 03h04
  2. Transposer coordonnées GPS en pixels XY
    Par devroot dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 01/12/2007, 08h23
  3. [vb.net]multiples coordonnées GPS
    Par phicarre dans le forum ASP.NET
    Réponses: 4
    Dernier message: 07/05/2007, 18h16
  4. Programme Delphi de conversion de coordonnées GPS/UTM
    Par furious-kiki dans le forum Delphi
    Réponses: 4
    Dernier message: 10/01/2007, 11h19
  5. Coordonnées GPS en varchar
    Par julien.63 dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/06/2006, 12h32

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