Spanish GPS Distancia

Tester1972

Member
Buenas a todos,
como puedo hacer que el gps en evento changed solo se ejecute cada vez que la distancia sea 100 metros?
 

drgottjr

Expert
Licensed User
Longtime User
¿y gps.start( demora, distancia ) ya no vale?
 
Upvote 0

Situ LLC

Active Member
Licensed User
Longtime User
Es simple compadre , lo primero que debes de tener es la cordenas del Gps origen , es decir tu localizacion y luego las cordenas destino lo que posiblemente se acerque tu localizacion, la comparacion de origen destino por calculo de distancia se pueden hacer de varias maneras. Por calculo con una funcion que te pongo abajo

Distancias2= Distancia(latitud,longitud, Lat2s, Lon2s)

latitud, longitud son las queel GPS provee y las Lat2s,Lon2s son la localizacion actual
Y importante ver com quieres medir las distancias millas o kilometros con esta valores

Dim radiusOfEarth As Double = 6717407 ' Millas --> 6378.137 y kms --> ' 6717407.00 ' 6371 ' Earth radius in kilometers




Haversine:
Public  Sub Distancia(lat1 As Double, lon1 As Double, lat2 As Double, lon2 As Double) As Double
    ' Convert latitude and longitude from degrees to radians
 
 
    Dim lat1Rad As Double = DegreesToRadians(lat1)
    Dim lon1Rad As Double = DegreesToRadians(lon1)
    Dim lat2Rad As Double = DegreesToRadians(lat2)
    Dim lon2Rad As Double = DegreesToRadians(lon2)
 
    ' Haversine formula
    Dim dlon As Double = lon2Rad - lon1Rad
    Dim dlat As Double = lat2Rad - lat1Rad
    Dim a As Double = Power(Sin(dlat / 2), 2) + Cos(lat1Rad) * Cos(lat2Rad) * Power(Sin(dlon / 2), 2)
    Dim c As Double = 2 * ATan2(Sqrt(a), Sqrt(1 - a))
    Dim radiusOfEarth As Double = 6717407   ' Millas  --> 6378.137   y kms --> ' 6717407.00    '  6371 ' Earth radius in kilometers
    Dim distance As Double = radiusOfEarth * c
'    Log(distance)
    Return distance
End Sub

Suerte y salud
 
Last edited:
Upvote 0

emexes

Expert
Licensed User
Longtime User
1737780448258.png
 
Upvote 0

emexes

Expert
Licensed User
Longtime User
Upvote 0
Top