随州公司做网站,j2ee网站开发,天门网站网站建设,友链交易平台源码arcgis文档中的有提供缓冲区的接口 geometryService#xff0c;但要4.19后版本才提供  
案例中使用的版本为4.16#xff0c;因此这里的缓冲区分析借助gp工具 
新建服务 
1、打开arcmap 
选择工具将要存放的文件夹#xff0c;右键 new  Toolbox 对新建好的工具的mode…arcgis文档中的有提供缓冲区的接口 geometryService但要4.19后版本才提供  
案例中使用的版本为4.16因此这里的缓冲区分析借助gp工具 
新建服务 
1、打开arcmap 
选择工具将要存放的文件夹右键 new  Toolbox 对新建好的工具的model右键工具 new  model进行编辑如图  
2、打开ArcToolbox 
通过工具按钮打开ArcToolbox  Buffer所在位置如图  
3、编辑服务工具 
将Buffer工具拉入工具编辑界面如图  其中矩形为工具椭圆为参数参数可以是传参也可以是固定参数。 
4、设置参数 
右键矩形框 make Variable 选择参数 可以选择所需要的传参如图  缓冲区分析需要的参数有 Input Features和Distance 右键选择Model Parameter将其设置参数以Input Features为例Distance同理出现P即为需要传参如图  
5、设置需要传参的参数的数据 
选择数据将要存放的文件夹右键选择Shapefile如图  以线条为例将Feature Type设置为Polyline  
若使用4490的坐标系通过Edit搜索4490如图  
选择新建的shp数据即InputLine进行编辑选择Editor  Start Editing如图  
Start Editing后选择InputLine选择工具栏的Create Features如图  出现绘制工具选择line即可进行绘制绘制通过双击结束  选择Editor  Save Editing 对绘制的shp进行保存 最后双击椭圆形框InputLine选择保存好的shp文件无色椭圆形框变为蓝色如图  
Distance同理如图  如图工具即创建成功  
6、运行工具 
双击新建的工具model运行选择输出文件重新创建不存在的name如图  没有错误提示选择OK如图  
发布服务 
1、Geoprocessing  results 选中工具下的model如图  
2、根据Output Feature即输出结果的shp选择对应的model进行发布如图  右键model  share as  Geoprocessing service如图点击下一步  
3、可修改服务名如图  
4、选择发布的路径如图  
5、设置发布的服务参数优先选择同步服务如图  可对Model中的参数进行描述  
7、设置完成后点击Analyze分析分析如果没有错误使用Publish发布GP服务 代码部分 
绘制线条 const graphic  new self.Graphic({geometry: new self.Polyline({paths: polygon2,spatialReference: self.map.spatialReference}),symbol: {type: simple-line,color: [255, 255, 255],style: solid,width: 2}})通过Geoprocessor请求GP服务url即为gp服务的urlgraphic即为上文中定义的graphic 
drawBuffer (graphic) {const self  thisconst featureSet  new this.FeatureSet()featureSet.features  [graphic]const geop  new self.Geoprocessor(url)let params  {}params[InputHCQ]  featureSetparams[Distance]  {distance: self.bufferDistance,units: esriMeters}geop.outSpatialReference  {wkid: this.map.spatialReference.wkid}geop.execute(params).then(data  {console.log(测试, data)if (data.results.length  0) {const graphic1  new self.Graphic({geometry: data.results[0].value.features[0].geometry,symbol: {type: simple-fill,color: [0, 0, 255, 0.1],style: solid,outline: {color: white,width: 2}}})self.map.graphics.add(graphic1)}})},效果如下