private double GetDistance(Aiport source, Aiport destination) { var sourceCoord = new GeoCoordinate(source.Latitude, source.Longitude); var destinationCoord = new GeoCoordinate(destination.Latitude, destination.Longitude); return(sourceCoord.GetDistanceTo(destinationCoord) / 1000); }
public async Task <Aiport> GetAiportAsync(string icao) { var uri = string.Format(Const.airpotInfo, icao); using (var response = await Client.GetAsync(uri)) { ApiLimits(response); var json = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(Aiport.FromJson(json)); } else { var msg = ApiException(json); throw new BadRequestException(msg); } } }
private double GetTime(Aiport source, Aiport destination) { var distance = this.GetDistance(source, destination); return(distance / speed); }
private TimeSpan GetFlighTime(Aiport source, Aiport destination) { return(TimeSpan.FromHours(this.GetTime(source, destination))); }