Is there a better way to generate a N numer of Lat/Long coordinates around a Start Point given a distance? This is my approach but it does not creates a uniform distribution.
generate_gps_coordinates_in_circle<-function(start_lat,start_lon,max_distance_in_m,min_distance_in_m){
lat <- (start_lat * pi / 180) #center of the circle
lon <- (start_lon * pi / 180) #center of the circle
earth_radius <- 6371000
distance <- sqrt(runif(1, 0, 1) * (max_distance_in_m ** 2 - min_distance_in_m ** 2) + min_distance_in_m ** 2) #max and min distance from the center
delta_lat = cos(runif(1) * pi) * distance / earth_radius
sign = runif(1, 0, 2) * 2 - 1
delta_lon = sign * acos(((cos(distance/earth_radius) - cos(delta_lat)) / (cos(lat) * cos(delta_lat + lat))) + 1)
result <- c(lon = (lon + delta_lon) * 180 / pi, lat =(lat + delta_lat) * 180 / pi)
return(result)
}