Пример #1
0
        private const string DATA_FILES_PATH = null; //@"C:\Users\ElevationAPI\AppData\Local"; // Leave to null for default location (Environment.SpecialFolder.LocalApplicationData)

        public SampleApplication(ILogger <SampleApplication> logger,
                                 IRasterService rasterService
                                 )
        {
            _logger            = logger;
            this.rasterService = rasterService;
        }
Пример #2
0
 public LocalFileSystemIndex(ILogger <LocalFileSystemIndex> logger, IRasterService rasterService)
 {
     _logger              = logger;
     _cacheByDemName      = new ConcurrentDictionary <string, List <DEMFileSource> >();
     _directoryPerDataset = new ConcurrentDictionary <string, string>();
     _rasterService       = rasterService;
 }
Пример #3
0
        private const string DATA_FILES_PATH = null; //@"C:\Users\ElevationAPI\AppData\Local"; // Leave to null for default location (Environment.SpecialFolder.LocalApplicationData)

        public SampleApplication(ILogger <SampleApplication> logger,
                                 IRasterService rasterService,
                                 DownloaderSample downloaderSample,
                                 STLSamples stLSamples,
                                 ElevationSamples elevationSamples,
                                 GpxSamples gpxSamples,
                                 Gpx3DSamples gpx3DSamples,
                                 DatasetSamples datasetSamples,
                                 TINSamples tinSamples,
                                 glTF3DSamples glTF3DSamples,
                                 CustomSamples customSamples,
                                 AerialGpxSample aerialGpxSample,
                                 ImagerySample imagerySample,
                                 IntervisibilitySample intervisibilitySample)
        {
            _logger                    = logger;
            this.rasterService         = rasterService;
            this.downloaderSample      = downloaderSample;
            this.stLSamples            = stLSamples;
            this.elevationSamples      = elevationSamples;
            this.gpxSamples            = gpxSamples;
            this.gpx3DSamples          = gpx3DSamples;
            this.datasetSamples        = datasetSamples;
            this.tinSamples            = tinSamples;
            this.glTF3DSamples         = glTF3DSamples;
            this.customSamples         = customSamples;
            this.aerialGpxSample       = aerialGpxSample;
            this.imagerySample         = imagerySample;
            this.intervisibilitySample = intervisibilitySample;
        }
Пример #4
0
 public glTFTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _gltfService      = fixture.ServiceProvider.GetService <IglTFService>();
     _meshService      = fixture.ServiceProvider.GetService <IMeshService>();
 }
Пример #5
0
 public DownloaderSample(ILogger <DatasetSamples> logger
                         , IRasterService rasterService
                         , IElevationService elevationService)
 {
     _logger           = logger;
     _rasterService    = rasterService;
     _elevationService = elevationService;
 }
Пример #6
0
 public CustomSamples(ILogger <CustomSamples> logger
                      , IElevationService elevationService
                      , IRasterService rasterService)
 {
     _logger           = logger;
     _elevationService = elevationService;
     _rasterService    = rasterService;
 }
Пример #7
0
 public TINSamples(ILogger <TINSamples> logger
                   , IRasterService rasterService
                   , IElevationService elevationService
                   , SharpGltfService glTFService)
 {
     _logger           = logger;
     _rasterService    = rasterService;
     _elevationService = elevationService;
     _glTFService      = glTFService;
 }
Пример #8
0
        public static FileMetadata Migrate(IRasterService rasterService, ILogger logger, FileMetadata oldMetadata, string dataRootDirectory, DEMDataSet dataSet)
        {
            if (oldMetadata != null)
            {
                logger.LogInformation($"Migration metadata file {oldMetadata.Filename} from {oldMetadata.Version} to {FileMetadata.FILEMETADATA_VERSION}");

                // 2.2 version requires regeneration
                oldMetadata = rasterService.ParseMetadata(Path.Combine(rasterService.LocalDirectory, oldMetadata.Filename), dataSet.FileFormat);

                //switch (oldMetadata.Version)
                //{
                //    case "2.0":

                //        // 2.1 : relative path
                //        // Find dataset root within path
                //        DirectoryInfo dir = new DirectoryInfo(Path.GetDirectoryName(oldMetadata.Filename));
                //        while (dir.Name != dataSet.Name)
                //        {
                //            dir = dir.Parent;
                //        }
                //        dir = dir.Parent;
                //        // replace directory
                //        oldMetadata.Filename = oldMetadata.Filename.Replace(dir.FullName, dataRootDirectory);
                //        Uri fullPath = new Uri(oldMetadata.Filename, UriKind.Absolute);
                //        if (!(dataRootDirectory.Last() == Path.DirectorySeparatorChar))
                //            dataRootDirectory += Path.DirectorySeparatorChar;
                //        Uri relRoot = new Uri(dataRootDirectory, UriKind.Absolute);

                //        oldMetadata.Filename = Uri.UnescapeDataString(relRoot.MakeRelativeUri(fullPath).ToString());
                //        oldMetadata.FileFormat = dataSet.FileFormat;

                //        break;

                //    case "2.1":

                //        // 2.2 : [Metadata regneration required] file format is now mapped to DEMFileDefinition, lat/lon bounds names changed for clarity, file format changed from DEMFileFormat (name + file extenstion)
                //        //
                //        // to DEMFileDefinition
                //        oldMetadata.FileFormat = dataSet.FileFormat;

                //        break;

                //    default:

                //        // DEMFileFormat
                //        oldMetadata.FileFormat = dataSet.FileFormat;
                //        break;
                //}

                // set version and fileFormat
                oldMetadata.Version = FileMetadata.FILEMETADATA_VERSION;
            }
            return(oldMetadata);
        }
Пример #9
0
 public AerialGpxSample(ILogger <Gpx3DSamples> logger
                        , IRasterService rasterService
                        , IElevationService elevationService
                        , ImageryService imageryService
                        , SharpGltfService sharpGltfService)
 {
     _logger           = logger;
     _rasterService    = rasterService;
     _elevationService = elevationService;
     _imageryService   = imageryService;
     _sharpGltfService = sharpGltfService;
 }
Пример #10
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ProxyRaster" /> class.
        /// </summary>
        /// <param name="factory">The raster factory.</param>
        /// <param name="service">The raster service.</param>
        /// <param name="mapper">The raster mapper.</param>
        /// <exception cref="System.ArgumentNullException">The service is null.</exception>
        public ProxyRaster(IRasterFactory factory, IRasterService service, RasterMapper mapper)
            : base(factory, service?.Dimensions, mapper)
        {
            if (service == null)
            {
                throw new ArgumentNullException("service", "The service is null.");
            }

            _service             = service;
            _isSequentialService = _service.DataOrder == RasterDataOrder.RowColumnBand;

            _histogramValues = Enumerable.Repeat <Int32[]>(null, NumberOfRows).ToArray();
        }
Пример #11
0
 public DatasetSamples(ILogger <DatasetSamples> logger
                       , IRasterService rasterService)
 {
     _logger        = logger;
     _rasterService = rasterService;
 }
Пример #12
0
        private void PopulateRasterFileDictionary(RasterFileDictionary dictionary, FileMetadata mainTile, IRasterService rasterService, IEnumerable <FileMetadata> fileMetadataList)
        {
            // Add main tile
            if (!dictionary.ContainsKey(mainTile))
            {
                dictionary[mainTile] = rasterService.OpenFile(mainTile.Filename, mainTile.fileFormat);
            }

            foreach (var fileMetadata in fileMetadataList)
            {
                if (!dictionary.ContainsKey(fileMetadata))
                {
                    dictionary[fileMetadata] = rasterService.OpenFile(fileMetadata.Filename, fileMetadata.fileFormat);
                }
            }
        }
Пример #13
0
 public DatasetTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _gdalService      = fixture.ServiceProvider.GetService <IDEMDataSetIndex>();
 }
Пример #14
0
 public ElevationService(IRasterService rasterService, ILogger <ElevationService> logger = null)
 {
     _IRasterService = rasterService;
     _logger         = logger;
 }
Пример #15
0
 public TileTests(DemNetFixture fixture)
 {
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _rasterResolver   = fixture.ServiceProvider.GetService <RasterIndexServiceResolver>();
 }
Пример #16
0
 /// <summary>
 /// Creates a raster image for the specified service.
 /// </summary>
 /// <param name="service">The service.</param>
 /// <param name="mapper">The raster mapper.</param>
 /// <returns>The raster mapper created for the specified service.</returns>
 public IRaster CreateRaster(IRasterService service, RasterMapper mapper)
 {
     return(new ProxyRaster(this, service, mapper));
 }
Пример #17
0
 public DatasetTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _gdalService      = fixture.ServiceProvider.GetService <IGDALVRTFileService>();
 }
Пример #18
0
 public ElevationTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
 }