${iServerJava6R_GeometryBufferAnalystParams_Title}

${iServerJava6R_GeometryBufferAnalystParams_Description}

Inheritance: BufferAnalystParameters
        internal static System.Collections.Generic.Dictionary<string, string> ToDictionary(GeometryBufferAnalystParameters geometryBufferParams)
        {
            var dict = new System.Collections.Generic.Dictionary<string, string>();
            if (geometryBufferParams.BufferSetting != null)
            {
                dict.Add("analystParameter", BufferSetting.ToJson(geometryBufferParams.BufferSetting));
            }
            else
            {
                dict.Add("analystParameter", BufferSetting.ToJson(new BufferSetting()));
            }

            if (geometryBufferParams.SourceGeometry != null)
            {
                dict.Add("sourceGeometry", ServerGeometry.ToJson(geometryBufferParams.SourceGeometry.ToServerGeometry()));
            }
            else
            {
                dict.Add("sourceGeometry", ServerGeometry.ToJson(new ServerGeometry()));
            }
            return dict;
        }
        private void GenerateAbsoluteUrl(GeometryBufferAnalystParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException("请求服务参数为空!");
            }

            //http://192.168.11.154:8090/iserver/services/spatialanalyst-sample/restjsr/spatialanalyst/geometry/buffer
            if (this.Url.EndsWith("/"))
            {
                this.Url += "geometry/buffer.json?debug=true&returnContent=true";
            }
            else
            {
                this.Url += "/geometry/buffer.json?debug=true&returnContent=true";
            }
        }
 /// <summary>${iServerJava6R_GeometryBufferAnalystService_method_ProcessAsync_D}</summary>
 /// <param name="parameters">${iServerJava6R_GeometryBufferAnalystService_method_ProcessAsync_param_parameter}</param>
 /// <param name="state">${iServerJava6R_GeometryBufferAnalystService_method_ProcessAsync_param_state}</param>
 public void ProcessAsync(GeometryBufferAnalystParameters parameters, object state)
 {
     GenerateAbsoluteUrl(parameters);
     base.SubmitRequest(this.Url, GetDictionaryParameters(parameters), new EventHandler<RequestEventArgs>(BufferAnalystService_Complated), state, true, false, false);
 }
 /// <summary>${iServerJava6R_GeometryBufferAnalystService_method_ProcessAsync_D}</summary>
 /// <overloads>${iServerJava6R_GeometryBufferAnalystService_method_ProcessAsync_overloads_D}</overloads>
 public void ProcessAsync(GeometryBufferAnalystParameters parameters)
 {
     ProcessAsync(parameters, null);
 }
 private System.Collections.Generic.Dictionary<string, string> GetDictionaryParameters(GeometryBufferAnalystParameters parameters)
 {
     return GeometryBufferAnalystParameters.ToDictionary(parameters);
 }
        //实体缓冲
        private void geometryBuffer_Click(object sender, RoutedEventArgs e)
        {
            var bufferAnalystParams = new GeometryBufferAnalystParameters
            {
                BufferSetting = new BufferSetting
                {
                    EndType = BufferEndType.ROUND,
                    LeftDistance = new BufferDistance
                    {
                        Value = 100
                    },
                    RightDistance = new BufferDistance
                    {
                        Value = 100
                    },
                    SemicircleLineSegment = 4
                },
                SourceGeometry = new GeoLine
                    {
                        Parts = new ObservableCollection<Point2DCollection>
                        {
                            new Point2DCollection()
                            {
                                new Point2D{ X=23,Y=23},
                                new Point2D{ X=33,Y=37},
                                new Point2D{ X=43,Y=23}
                            }
                        },
                    },
            };

            var geometryBufferAnalyst = new GeometryBufferAnalystService(url);
            geometryBufferAnalyst.ProcessAsync(bufferAnalystParams);
            geometryBufferAnalyst.ProcessCompleted += new EventHandler<GeometryBufferAnalystArgs>(geometryBufferAnalyst_ProcessCompleted);
            geometryBufferAnalyst.Failed += new EventHandler<SuperMap.Web.Service.ServiceFailedEventArgs>(geometryBufferAnalyst_Failed);
        }