private Dictionary <string, double> StatArea(int[] aoi, Dictionary <string, Func <short, bool> > filters)
        {
            IRasterDrawing drawing = _activeViewer.Canvas.PrimaryDrawObject as IRasterDrawing;

            if (drawing == null)
            {
                return(null);
            }
            IRasterDataProvider prd = drawing.DataProvider;

            if (prd == null)
            {
                return(null);
            }
            RasterOperator <short> rs = new RasterOperator <short>();

            if (_extractedPixels == null)
            {
                Dictionary <string, double> areas = rs.Area(prd, aoi, filters);
                return(areas);
            }
            else
            {
                double area = rs.Area(prd, _extractedPixels, aoi);
                Dictionary <string, double> areas = new Dictionary <string, double>();
                areas.Add("判识面积", area);
                return(areas);
            }
        }
Exemple #2
0
        private void button4_Click(object sender, EventArgs e)
        {
            string fname1 = "F:\\FIR_NDVI_FY3A_MERSI_250M_20120610164136_20120611164136.dat";
            IRasterDataProvider     prd  = GeoDataDriver.Open(fname1) as IRasterDataProvider;
            IRasterOperator <float> oper = new RasterOperator <float>();

            area = oper.Area(prd, null, (v) => { return(true); });
        }