Jump to content

Buscar coordenadas .net


Recommended Posts

Buenas, estoy haciendo un mini proyecto en vb.net y necesito una función que me devuelva un string con las coordenadas de una dirección que yo le envíe por parámetro.

 

Algo asi:

 

private function buscaCoordenadas(ByVal direccion as String) as String

 

Dim latitud,longitud as String

...

...

...

...

...

...

 

return latitud+","+longitud

end function

 

Gracias =)

Link to comment
Share on other sites

Dirección de domicilio... pero ya encontré y lo pondré aquí para los que les sirva ;)

 

Public Function CodificacionGeografica(ByVal direccion As String, Optional ByVal regionBusqueda As String = "es", Optional ByVal idioma As String = "es", Optional ByVal sensor As Boolean = False) 'busca latitud/longitud a partir de dirección

'La función recibe 4 parámetros. La región, idioma y sensor son opcionales.

'Creamos la dirección
Dim direccion1 As String
direccion1 = "address=" & direccion

'Creamos la region
Dim region1 As String
region1 = "region=" & regionBusqueda

'Creamos el idioma
Dim idioma1 As String
idioma1 = "language=" & idioma

'Creamos el sensor
Dim sensor1 As String
sensor1 = "sensor=" & sensor.ToString.ToLower

'Creamos la URL con los datos
Dim url = "http://maps.googleapis.com/maps/api/geocode/xml?" + direccion1 + "&" + region1 + "&" + idioma1 + "&" + sensor1

Dim LatLong As New ArrayList() 'Creamos un arraylist en el que almacenaremos toda la información

'Creamos una petición http y asignamos un tiempo máximo de espera de 3000 milisegundos
Dim req As HttpWebRequest = DirectCast(WebRequest.Create(url), HttpWebRequest)
req.Timeout = 1000000
'Preparamos el archivo xml
Dim res As System.Net.WebResponse = req.GetResponse()
Dim responseStream As Stream = res.GetResponseStream()
Dim NodeIter As XPathNodeIterator
Dim docNav As New XPathDocument(responseStream)
Dim nav = docNav.CreateNavigator

Dim ExLatitud, ExLongitud As String 'Variables para buscar dentro del archivo xml

'Creamos los paths
ExLatitud = "GeocodeResponse/result/geometry/location/lat"
ExLongitud = "GeocodeResponse/result/geometry/location/lng"

'Recorremos el xml
NodeIter = nav.Select(ExLatitud)
While (NodeIter.MoveNext())
LatLong.Add(NodeIter.Current.Value)
Exit While
End While

NodeIter = nav.Select(ExLongitud)
While (NodeIter.MoveNext())
LatLong.Add(NodeIter.Current.Value)
Exit While
End While

responseStream.Close() 'Cerramos la conexión
Return LatLong 'Devolvemos el arraylist con los datos
End Function

Link to comment
Share on other sites

  • 2 months later...
  • 4 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...