public void AddAssociatedSurface(AssocSurface assocRow) { IGroupLayer pAssocGrpLyr = AddAssociatedSurfaceGroupLayer(assocRow.DEM); short dTransparency = GCDCore.Properties.Settings.Default.TransparencyAssociatedLayers ? GCDCore.Properties.Settings.Default.AutoTransparencyValue : (short)-1; IRasterRenderer rasterRenderer = null; switch (assocRow.AssocSurfaceType) { case AssocSurface.AssociatedSurfaceTypes.InterpolationError: if (!GCDCore.Properties.Settings.Default.ApplyComparativeSymbology) { rasterRenderer = RasterSymbolization.CreateClassifyRenderer(assocRow.Raster, 11, "Slope"); } break; case AssocSurface.AssociatedSurfaceTypes.PointQuality3D: if (!GCDCore.Properties.Settings.Default.ApplyComparativeSymbology) { rasterRenderer = RasterSymbolization.CreateClassifyRenderer(assocRow.Raster, 11, "Precipitation", true); } break; case AssocSurface.AssociatedSurfaceTypes.PointDensity: assocRow.Raster.ComputeStatistics(); decimal rasterMax = assocRow.Raster.GetStatistics()["max"]; if (rasterMax <= 2 & rasterMax > 0.25m) { rasterRenderer = RasterSymbolization.CreateClassifyRenderer(assocRow.Raster, 11, "Green to Blue", 1.1, true); } else { rasterRenderer = RasterSymbolization.CreateClassifyRenderer(assocRow.Raster, 11, "Green to Blue", true); } break; case AssocSurface.AssociatedSurfaceTypes.GrainSizeStatic: rasterRenderer = RasterSymbolization.CreateGrainSizeStatisticColorRamp(assocRow.Raster, ProjectManager.Project.Units.VertUnit); break; case AssocSurface.AssociatedSurfaceTypes.Roughness: rasterRenderer = RasterSymbolization.CreateRoughnessColorRamp(assocRow.Raster); break; case AssocSurface.AssociatedSurfaceTypes.SlopeDegree: rasterRenderer = RasterSymbolization.CreateSlopeDegreesColorRamp(assocRow.Raster); break; case AssocSurface.AssociatedSurfaceTypes.SlopePercent: rasterRenderer = RasterSymbolization.CreateSlopePrecentRiseColorRamp(assocRow.Raster); break; } AddRasterLayer(assocRow.Raster, rasterRenderer, assocRow.Name, pAssocGrpLyr, assocRow.LayerHeader, dTransparency); }
public void AddErrSurface(ErrorSurface errRow) { IGroupLayer pErrGrpLyr = null; if (errRow.Surf is DEMSurvey) { pErrGrpLyr = AddErrorSurfacesGroupLayer(errRow.Surf as DEMSurvey); } else { pErrGrpLyr = AddReferenceErrorSurfacesGroupLayer(errRow.Surf); } string sHeader = string.Format("Error ({0})", UnitsNet.Length.GetAbbreviation(ProjectManager.Project.Units.VertUnit)); short dTransparency = -1; if (GCDCore.Properties.Settings.Default.TransparencyErrorLayers) { dTransparency = GCDCore.Properties.Settings.Default.AutoTransparencyValue; } errRow.Raster.ComputeStatistics(); Dictionary <string, decimal> stats = errRow.Raster.GetStatistics(); double rMin = (double)stats["min"]; double rMax = (double)stats["max"]; if (rMin == rMax) { IRasterRenderer rasterRenderer = RasterSymbolization.CreateESRIDefinedContinuousRenderer(errRow.Raster, 1, "Partial Spectrum"); AddRasterLayer(errRow.Raster, rasterRenderer, errRow.Name, pErrGrpLyr, sHeader, dTransparency); } else if (rMax <= 1 & rMax > 0.25) { IRasterRenderer rasterRenderer = RasterSymbolization.CreateClassifyRenderer(errRow.Raster, 11, "Partial Spectrum", 1.1); AddRasterLayer(errRow.Raster, rasterRenderer, errRow.Name, pErrGrpLyr, sHeader, dTransparency); } else { IRasterRenderer rasterRenderer = RasterSymbolization.CreateClassifyRenderer(errRow.Raster, 11, "Partial Spectrum"); AddRasterLayer(errRow.Raster, rasterRenderer, errRow.Name, pErrGrpLyr, sHeader, dTransparency); } }