Exemple #1
0
        async static public Task <ServiceMap> CreateAsync(Map original, IMapServer mapServer, IEnumerable <IMapApplicationModule> modules)
        {
            var serviceMap = new ServiceMap();

            serviceMap._mapServer = mapServer;
            serviceMap._modules   = modules;
            serviceMap._layers    = original._layers;
            serviceMap._datasets  = original._datasets;

            serviceMap.m_imageMerger = new ImageMerger2();

            serviceMap.m_name = original.Name;
            serviceMap._toc   = original._toc;
            serviceMap.Title  = original.Title;
            //serviceMap._ceckLayerVisibilityBeforeDrawing = true;
            serviceMap._mapUnits        = original.MapUnits;
            serviceMap._displayUnits    = original.DisplayUnits;
            serviceMap._backgroundColor = original.BackgroundColor;
            serviceMap.refScale         = original.refScale;

            serviceMap.SpatialReference             = original.Display.SpatialReference;
            serviceMap.LayerDefaultSpatialReference = original.LayerDefaultSpatialReference != null?original.LayerDefaultSpatialReference.Clone() as ISpatialReference : null;

            serviceMap._drawScaleBar = false;

            // Metadata
            await serviceMap.SetMetadataProviders(await original.GetMetadataProviders());

            serviceMap._debug = false;

            serviceMap._layerDescriptions   = original.LayerDescriptions;
            serviceMap._layerCopyrightTexts = original.LayerCopyrightTexts;

            serviceMap.SetResourceContainer(original.ResourceContainer);

            return(serviceMap);
        }