コード例 #1
0
        public void Initialize(string noun, GCDConsoleLib.Raster raster)
        {
            grpProperties.Text = string.Format("{0} {1}Properties", noun, noun.ToLower().EndsWith("raster") ? string.Empty : "Raster ");

            ItemProperties.Add(new GridViewPropertyValueItem("Raster Properties"));
            ItemProperties.Add(new GridViewPropertyValueItem("Cell size", UnitsNet.Length.From((double)raster.Extent.CellWidth, raster.Proj.HorizontalUnit).ToString(raster.Proj.HorizontalUnit)));
            ItemProperties.Add(new GridViewPropertyValueItem("Rows", raster.Extent.Rows.ToString("N0")));
            ItemProperties.Add(new GridViewPropertyValueItem("Columns", raster.Extent.Cols.ToString("N0")));
            ItemProperties.Add(new GridViewPropertyValueItem("Height", UnitsNet.Length.From((double)raster.Extent.Height, raster.Proj.HorizontalUnit).ToString(raster.Proj.HorizontalUnit)));
            ItemProperties.Add(new GridViewPropertyValueItem("Width", UnitsNet.Length.From((double)raster.Extent.Width, raster.Proj.HorizontalUnit).ToString(raster.Proj.HorizontalUnit)));
            ItemProperties.Add(new GridViewPropertyValueItem("Spatial Reference", raster.Proj.Wkt));

            try
            {
                raster.ComputeStatistics();
                Dictionary <string, decimal> stats = raster.GetStatistics();
                ItemProperties.Add(new GridViewPropertyValueItem("Raster Statistics"));
                ItemProperties.Add(new GridViewPropertyValueItem("Maximum raster value", stats["max"].ToString("n2")));
                ItemProperties.Add(new GridViewPropertyValueItem("Minimum raster value", stats["min"].ToString("n2")));
                ItemProperties.Add(new GridViewPropertyValueItem("Mean raster value", stats["mean"].ToString("n2")));
                ItemProperties.Add(new GridViewPropertyValueItem("Standard deviation of raster values", stats["stddev"].ToString("n2")));
            }
            catch (Exception ex)
            {
                ItemProperties.Add(new GridViewPropertyValueItem("Raster Statistics", "Failed to compute statistics"));
            }
        }