private void CalculateDownloadSize(Poi poi) { string text = ""; bool enableDownloadButton = false; if (poi?.Id >= (long)PoiId.FIRST_VALID_ID || poi?.Id == (long)PoiId.CURRENT_LOCATION) { float size; var newDistance = GetDownloadDistance(); if (_oldDedItem == null || newDistance > _oldDedItem.Distance) { var gpsLocation = new GpsLocation(poi.Longitude, poi.Latitude, poi.Altitude); var etc = new ElevationTileCollection(gpsLocation, newDistance); size = etc.GetSizeToDownload(); text = String.Format(Resources.GetText(Resource.String.DownloadED_ExpectedSizeDownload), $"{size:F1}"); enableDownloadButton = true; } else if (newDistance < _oldDedItem.Distance) { var location = new GpsLocation(_oldDedItem.Longitude, _oldDedItem.Latitude, 0); var tilesToBeRemovedAll = ElevationTileCollection.GetTilesForRemoval(location, _oldDedItem.Distance, newDistance); var tilesToBeRemovedUnique = ElevationTileCollection.GetUniqueTilesForRemoval(_oldDedItem.Id, _allElevationData, tilesToBeRemovedAll); size = tilesToBeRemovedUnique.GetSize() / 1024f / 1024f; text = String.Format(Resources.GetText(Resource.String.DownloadED_ExpectedSizeRemove), $"{size:F1}"); enableDownloadButton = true; } } FindViewById <TextView>(Resource.Id.textViewDownloadSize).Text = text; FindViewById <Button>(Resource.Id.buttonSave).Enabled = enableDownloadButton; }
public void CalculateProfile() { GpsUtils.BoundingRect(_myLocation, _visibility * 1000, out var min, out var max); _data = new List <GpsLocation>(); string inputFileName = @"c:\Temp\ElevationMap\ALPSMLC30_N049E018_DSM.tif"; GeoTiffReaderList.ReadTiff(inputFileName, min, max, _myLocation, 3, _data); //Calculate old profile /*ElevationProfile ep = new ElevationProfile(); * ep.GenerateElevationProfile(_myLocation, _visibility, _data, progress => { }); * elevationProfileOld = ep.GetProfile();*/ //Calucate new profile var etc = new ElevationTileCollection(_myLocation, (int)_visibility); var d = etc.GetSizeToDownload(); etc.Download(progress => { }); etc.Read(progress => { }); profileGenerator.Generate(_myLocation, 12, etc, progress => { }); /*ProfileGeneratorOld ep2 = new ProfileGeneratorOld(); * //ep2.GenerateElevationProfile3(_myLocation, _visibility, _data, progress => { }); * ep2.GenerateElevationProfile3(_myLocation, _visibility, elevationPainter3.list, progress => { }); * elevationProfileNew = ep2.GetProfile();*/ ElevationProfile ep3 = new ElevationProfile(); ep3.GenerateElevationProfile3(_myLocation, _visibility, profileGenerator.GetProfile(), progress => { }); elevationProfileNew = ep3.GetProfile(); Invalidate(); }
public float GetSizeToDownload() { return(_elevationTileCollection.GetSizeToDownload()); }