private List <MountainPoint> GetData(HeightRequestDbData requestData) { var elevationService = new ElevationService(); var request = new ElevationRequest(); request.Samples = requestData.ResolutionX; var latStep = (requestData.NeLat - requestData.SwLat) / requestData.ResolutionY; var lat = requestData.SwLat + latStep * requestData.RequestNumber; request.Path.Add(new LatLng(lat, requestData.SwLng)); request.Path.Add(new LatLng(lat, requestData.NeLng)); var response = elevationService.GetResponse(request); if (response.Status == ServiceResponseStatus.Ok) { return(response.Results.Select(i => new MountainPoint { height = i.Elevation, lat = (decimal)i.Location.Latitude, lng = (decimal)i.Location.Longitude }).ToList()); } throw new Exception("Not supported status: " + response.Status + ". " + response.ErrorMessage); }
private void RequestHeight(MountainDbData mountain, MountainDbContext context) { var request = new HeightRequestDbData { MountainId = mountain.Id, NeLat = mountain.NeLat, NeLng = mountain.NeLng, SwLat = mountain.SwLat, SwLng = mountain.SwLng, RequestNumber = 0, ResolutionX = 100, ResolutionY = 100 }; context.HeightRequests.Add(request); context.SaveChanges(); }