Beispiel #1
0
        private ParkDistance GetParkDistance(ParkCoordinates park, ZipCoordinates visitor)
        {
            var parkCoordinates    = new GeoCoordinate((double)park.Latitude, (double)park.Longitude);
            var visitorCoordinates = new GeoCoordinate((double)visitor.Latitude, (double)visitor.Longitude);

            var distance = parkCoordinates.GetDistanceTo(visitorCoordinates);

            distance = Math.Round(distance, 2) / 1000;

            return(new ParkDistance
            {
                Park = park,
                Distance = distance
            });
        }
        private async Task <IEnumerable <ParkDistance> > GetParkDistancesAsync(int?total, ZipCoordinates visitorCoordinates)
        {
            var parksCoordinates = await _parksLocatorRepository.GetAll();

            var parksDistances = _distanceService.GetParksDistance(parksCoordinates, visitorCoordinates);

            return(parksDistances);
        }
Beispiel #3
0
 public IEnumerable <ParkDistance> GetParksDistance(IEnumerable <ParkCoordinates> parksCoordinates, ZipCoordinates visitorCoordinates)
 {
     return(parksCoordinates.Select(p => GetParkDistance(p, visitorCoordinates)));
 }