${iServerJava6R_InterpolationAnalystService_Title}

${iServerJava6R_InterpolationAnalystService_Description}

Inheritance: SuperMap.Web.Service.ServiceBase
        //执行样条(径向基函数)插值
        private void InterpolationRBF_Click(object sender, RoutedEventArgs e)
        {
            ClearLayers();
            MyProgressBar.Storyboard1.Begin();
            MyProgressBar.Visibility = Visibility.Visible;
            InterpolationRBFAnalystParameters param = new InterpolationRBFAnalystParameters();
            param.Dataset = "SamplesP@Interpolation";
            param.Bounds = new Rectangle2D(-2640403.6321084504, 1873792.1034850003, 3247669.390292245, 5921501.395578556);
            param.OutputDataset = "RBF";
            param.PixelFormat = PixelFormat.DOUBLE;
            param.SearchMode = SearchMode.KDTREE_FIXED_COUNT;
            param.SearchRadius = 0;
            param.ZValueFieldName = "AVG_TMP";
            InterpolationAnalystService service = new InterpolationAnalystService(url);
            service.ProcessCompleted += new EventHandler<InterpolateAnalystArgs>(processCompleted);
            service.Failed += new EventHandler<ServiceFailedEventArgs>(excuteErrors);
            service.ProcessAsync(param);

        }
        private void sqlService_ProcessCompleted(object sender, QueryEventArgs e)
        {
            int zMin = Convert.ToInt32(zMinValue.Text);
            int zMax = Convert.ToInt32(zMaxValue.Text);

            FeatureCollection fc = e.Result.Recordsets[0].Features;
            for (int i = 0; i < fc.Count; i++)
            {
                GeoPoint gp = fc[i].Geometry as GeoPoint;
                var z = random.Next(zMin, zMax);
                Point2D point = new Point2D()
                {
                    X = gp.X,
                    Y = gp.Y,
                    Tag = z
                };
                inputPoints.Add(point);
            }
            InterpolationIDWAnalystParameters idwParams = new InterpolationIDWAnalystParameters()
            {
                Bounds = new Rectangle2D(-2640403.6321084504, 1873792.1034850003, 3247669.390292245, 5921501.395578556),
                OutputDataset = "idwcretepoints",
                OutputDataSource = "Interpolation",
                SearchMode=SearchMode.KDTREE_FIXED_RADIUS,
                InterpolationAnalystType=InterpolationAnalystType.GEOMETRY,
                InputPoints = inputPoints
            };
            InterpolationAnalystService service = new InterpolationAnalystService(url);
            service.ProcessCompleted += new EventHandler<InterpolateAnalystArgs>(processCompleted);
            service.Failed += new EventHandler<SuperMap.Web.Service.ServiceFailedEventArgs>(excuteErrors);
            service.ProcessAsync(idwParams);
        }
        //执行泛吕金插值
        private void InterpolationUniversalKriging_Click(object sender, RoutedEventArgs e)
        {
            ClearLayers();
            MyProgressBar.Storyboard1.Begin();
            MyProgressBar.Visibility = Visibility.Visible;
            InterpolationKrigingAnalystParameters param = new InterpolationKrigingAnalystParameters();
            param.Dataset = "SamplesP@Interpolation";
            param.Bounds = new Rectangle2D(-2640403.6321084504, 1873792.1034850003, 3247669.390292245, 5921501.395578556);
            param.OutputDataset = "UniversalKriging";
            param.Type = InterpolationAlgorithmType.UniversalKriging;
            param.PixelFormat = PixelFormat.DOUBLE;
            param.SearchMode = SearchMode.KDTREE_FIXED_COUNT;
            param.SearchRadius = 0;
            param.ExpectedCount = 12;
            param.Exponent = Exponent.EXP1;
            param.VariogramMode = VariogramMode.SPHERICAL;
            param.Nugget = 0;
            param.Angle = 0;
            param.Range = 0;

            param.ZValueFieldName = "AVG_TMP";
            param.Sill = 0;
            InterpolationAnalystService service = new InterpolationAnalystService(url);
            service.ProcessCompleted += new EventHandler<InterpolateAnalystArgs>(processCompleted);
            service.Failed += new EventHandler<ServiceFailedEventArgs>(excuteErrors);
            service.ProcessAsync(param);
        }