Le cadre fournit MapKit nombreuses fonctions utiles, sauf le retour de longitude et latitude d'une adresse. En JavaScript, par exemple, vous pouvez utiliser le service fourni par Google de géocodage et discutés dans Google Maps: Comment obtenir Latitude et Longitude partir d'une adresse . Apple iPhone ou iPad, cependant, vous pouvez surmonter cet obstacle en utilisant un des différents services Google. Plus précisément, vous pouvez appeler directement à l'url:
1
| http://maps.google.com/maps/geo?q = [adresse] & output = csv |
Où est [indirizzo] pour entrer dans la chaîne avec l'adresse que vous voulez transformer les coordonnées. La sortie retournée est de type:
1
| 200,8,41.9128300,12.2241172 |
). La première valeur, 200 , indique que tout s'est bien passé ( 200 OK ). La seconde, 8 , Google est le paramètre de précision (1-10). Les deux dernières valeurs sont, enfin, la latitude et la longitude. Maintenant, nous voyons un prototype d'une méthode peut être inclus dans nos applications:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| CLLocationCoordinate2D ) getLocationFromAddress : ( NSString * ) address { - (CLLocationCoordinate2D) getLocationFromAddress: ( NSString *) Adresse { urlString = [ NSString stringWithFormat : @ "http://maps.google.com/maps/geo?q=%@&output=csv" , NSString * urlString = [ NSString stringWithFormat: @ "% @ http://maps.google.com/maps/geo?q = & output = csv" NSUTF8StringEncoding ] ] ; [StringByAddingPercentEscapesUsingEncoding adresse: NSUTF8StringEncoding]]; listItems = [ locationString componentsSeparatedByString : @ "," ] ; NSArray * ListItems = [locationString componentsSeparatedByString: @ ""]; / / Int zoom = 0; 0.0 ; Latitude double = 0,0; 0.0 ; Longitude double = 0,0; listItems count ] > = 4 && [ [ listItems objectAtIndex : 0 ] isEqualToString : @ "200" ] ) { if ([ListItems count]> = 4 & & [[ListItems objectAtIndex: 0] isEqualToString: @ "200"]) { / / Zoom = [[objectAtIndex ListItems: 1] intValue]; listItems objectAtIndex : 2 ] doubleValue ] ; Latitude = [[ListItems objectAtIndex: 2] doubleValue]; listItems objectAtIndex : 3 ] doubleValue ] ; longitude = [[ListItems objectAtIndex: 3] doubleValue]; { Else {} / / Erreur } Lieu CLLocationCoordinate2D; location.latitude = latitude; location.longitude = longitude; Lieu de retour; } |
Notes d'intérêt
, alla stregua della funzione explode ( ) del PHP per intenderci. La chaîne retournée dans locationString est "split" par la méthode componentsSeparatedByString , comme la fonction explode ( ) en PHP par exemple. J'ai mis l'exemple que j'ai proposé - mais commenté - le code pour récupérer le paramètre de précision, même Google, la précision ou le facteur d'échelle, notée zoom .
Source comme
Pour être complet, j'ai fait un exemple d'application petits avec lesquels vous pouvez essayer la méthode proposée ci-dessus, entrer d'adresse et de l'iPhone va montrer sur la carte.


Télécharger Source
Je remercie l'équipe devAPP pour l'inspiration de cet article.
Suite ...
Pour trouver les coordonnées d'une adresse ou la latitude et la longitude, nous pouvons utiliser ce hack simple et utile. Ouvrez le site Google Maps . Une fois sur la carte à la recherche de l'adresse que vous voulez (par exemple via Cortese 10, Modène).
Suite ...
Aussi cette fois-ci je réponds à un commentaire d'un poste, compte tenu de l'intérêt général. Armando m'a demandé si c'était possible, en utilisant Google Maps, Latitude et Longitude obtenue à partir d'un nom de ville ou de rue. La réponse est oui! Utilisation du service Google Maps API de géocodage vous pouvez demander à Google directement à partir du retraitement de nos informations textuelles (Etat, ville, etc) en coordonnées géographiques. Vous pouvez essayer une ligne par exemple des documementazione Google directement sur le site.
Suite ...
Elle a été libérée de la beta 0.6 composante UMAP pour Flash CS3 (ActionScript 3.0) - est également présent dans la version du package pour Flex. Parmi les nouvelles que nous voyons l'adoption d' OpenStreetMap comme fournisseur par défaut. Ajout également été un marqueur gestionnaire avancé et une série d'optimisations diverses.
Suite ...
Mapstraction est une bibliothèque JavaScript qui agit comme une couche intermédiaire à utiliser les cartes de systèmes les plus populaires disponibles aujourd'hui. L'idée est de fournir une enveloppe, une interface qui peut unifier le code que ce soit, alors le type de moteur de rendu des cartes que vous souhaitez utiliser.
Sont disponible sur le site des démos et des documents . La bibliothèque est téléchargeable gratuitement. Pris en charge dans cette version sont les moteurs les plus célèbres 9: OpenStreetMap, Yahoo , Google , Microsoft , Map24, Multimap, MapQuest, FreeEarth et OpenLayers.
Soutient la création de point, ligne et polygone. Vous pouvez insérer votre superposition galerie d'images. Intéressant de soutien pour le géocodage des adresses de rue et les orientations de la marque! Compatibilité avec les flux nets GeoRSS et KML .
A partir des exemples du code de fois que vous comprenez l'utilité d'un outil de ce type. Chaque «Interface» ( Google , Microsoft , Yahoo , etc ...), il a son propre ensemble d'API. Grâce Mapstraction , cependant, nous pouvons écrire un seul bloc de code et de laisser l'utilisateur final le choix du fournisseur à utiliser. Par exemple, lorsque vous initialiser la bibliothèque, la ligne de code suivante:
1 2
| / / Initialiser la carte avec votre choix de l'API new Mapstraction ( 'mapstraction' , 'google' ) ; var = new mapstraction Mapstraction ('mapstraction', 'Google'); |
Détermine le moteur Google ! Il est sans dire que, j'ai remplacé 'google' de la chaîne, changer immédiatement le moteur de rendu des cartes!
1 2
| / / Initialiser la carte avec votre choix de l'API new Mapstraction ( 'mapstraction' , 'microsoft' ) ; var = new mapstraction Mapstraction ('mapstraction', 'Microsoft'); |
Bien que la bibliothèque n'est pas vraiment complète, peut être intégré dans un cadre unique l'ensemble des fonctionnalités "spread" des bibliothèques individuelles. Le moteur de rendu de Microsoft, par exemple, permet d'afficher «à vol d'oiseau." OpenStreetMap et Google Maps ont une excellente gestion de la route, y compris les italiens. En bref, pour ceux qui doivent faire face à développer une application avec l'utilisation de cartes et ne peut pas - juste - pour décider de la technologie à utiliser pour le développement, Mapstraction permet - en fait - de se couper, de résoudre le dilemme en introduisant, en fait, troisième acteur, et de cette manière, nous donnent la capacité de changer le moteur de rendu à tout moment. Alors bonne idée à suivre et à utiliser!
Suite ...
Derniers Commentaires
datrix : Merci beaucoup!
Robert : Je rispsoto vos questions avec plaisir. L'idée est vraiment géniale. Je suis à la recherche d'une solution ...
Sting : @ Darius - vous pouvez voir un exemple ici: http://www.fight4fun.it/ cliquant sur: CARTES j'espère ...
Vik : Giustappunto je travaille sur un projet et le client m'a demandé de montrer toutes les nouvelles (qui sont CPT) au ...
Giovambattista Fazioli : @ paso: absolument. Il suffit d'identifier le champ [CCI] entrée [/ cci] que vous souhaitez ...