2009-07-06 26 views
19

Estoy desarrollando una aplicación que tiene dos versiones. Uno para la web y otro para iPhone.Google Map Route Draw en el iPhone

En la aplicación web, puedo dibujar una ruta en la carretera (dibujando automáticamente la ruta que sigue a las carreteras/carreteras) y fuera de la carretera (dibuje una línea directa entre dos puntos específicos).

¿Hay una API, para iPhone, que se pueda usar para dibujar una ruta en el mapa? Puedo dibujar una línea recta en el mapa entre dos nodos, pero no puedo dibujar una ruta de mapa de ruta en iPhone.

estoy usando iPhone SDK 3.0 y 3.0

Gracias.

+24

Me parece que hay una tendencia entre las personas aquí a rechazar las preguntas porque están escritas en un inglés pobre. Cualquiera que sienta la necesidad de votar negativamente debería pensar dos o tres veces acerca de si la pregunta está mal formulada, o si solo se trata de un inglés deficiente. Al mismo tiempo, las personas que no dominan el inglés deben hacer un esfuerzo adicional para verificar la ortografía y asegurarse de que su pregunta sea inteligible. También es más fácil obtener buenas respuestas de esa manera. – Felixyz

+10

Además, en lugar de downvoting, otra opción es editar la pregunta para que sea más legible. Algunas preguntas no pueden repararse, pero esta pregunta era perfectamente buena, solo que necesitaba cierta limpieza. –

+0

Respondí una pregunta similar a la que puede consultar [aquí] (http://stackoverflow.com/questions/1494836/mkmapview-route-directions/2941835#2941835) – coffeemate

Respuesta

3

Desafortunadamente, no hay API para eso en 3.0. Es probable que tenga que añadir una superposición en la MKMapView, pero eso es probablemente muy tedioso

2

Una forma estándar en el iPhone (ya que existen restricciones expresadas en la licencia de MapKit) es usar [[[UIApplication sharedApplication] delegate] openURL:myURL]; para abrir la aplicación Mapas.

myURL es una URL 'http://maps.google.com/maps? ...' (objeto NSURL) con el subconjunto de opciones admitidas en los documentos en developer.apple.com. Utiliza los parámetros saddr = y daddr = para establecer la dirección (o las coordenadas) de inicio y fin de la ruta, y el usuario puede ver la ruta y usar las indicaciones de texto de la aplicación Mapas para conducir, andar en bicicleta o caminar para recorrer la ruta. Tal vez en el iPhone 4 GM podrá volver a su programa, pero al abrir la URL se terminará su aplicación y se iniciará la aplicación Maps (o Safari, si Maps no está instalado) en su lugar.

10

hay una nueva API en iOS4 llamada MKOverlayPathView que hace exactamente esto. MKOverlayPathView

Solo quería actualizar esta publicación con esta información para que la gente pueda contar toda la historia.

4
  1. Utilizar esta dirección URL para crear un archivo JSON/XML http://maps.googleapis.com/maps/api/directions/output?parameters (leer code.google.com/apis/maps/documentation/direcciones/para más referencia)

  2. analizar el archivo JSON/XML

  3. en rutas - piernas - pasos - polilínea se puede ver los puntos que están en formato codificado

  4. decodificar esos puntos (véase http://fkn1337.com/decode-google-maps-polylines-objective-c/) y hacer una matriz CLLocationCoordinate2D

  5. uso

(MKPolyline *) polylineWithCoordinates: (CLLocationCoordinate2D *) coords cuenta: (NSUInteger) contar

para crear un objeto MKPolyline

6 Uso addOverlay de MKMapView podemos crear una superposición con la dirección

1

alguna adición a La pregunta podría ser: ¿CÓMO PUEDE OBTENER ESAS COORDENADAS DINÁMICAMENTE, QUE SE UTILIZAN PARA SORTEO DE LA RUTA, EN EL EJEMPLO Craig Spitzkoff's MapLinesAndAnnotations sample ....? (Obtención de coordenadas entre dos ubicaciones desde google maps).

Usa el siguiente enlace: MapWithRoute

Esperanza, éste le ayudaría a trazar la ruta utilizando dos ubicación definida usuario.