ArcGIS MultipleRingBuffer的参数使用问题
private IFeatureLayer featureLayer;
...
ILayer layer = rasterHelper.getLayerFromName(comboBoxLayers.SelectedItem.ToString());
featureLayer = layer as IFeatureLayer;
...
Geoprocessor gp = new Geoprocessor();
gp.OverwriteOutput = true;
ESRI.ArcGIS.AnalysisTools.MultipleRingBuffer multipleRingBuffer = new ESRI.ArcGIS.AnalysisTools.MultipleRingBuffer();
multipleRingBuffer.Input_Features = featureLayer;
multipleRingBuffer.Distances = distances;
gp.Execute(multipleRingBuffer, null);
如上图代码,首先定义了一个IFeatureLayer
类型变量,然后在别的地方进行赋值了。
最后调用gp工具调用,但是结果会失败,经过研究分析有两个问题。
1.Distances
参数问题,刚开始使用了distances = "1,2,3"
,失败。最后确认该参数格式应该为distances = "1;2;3"
。
2.Input_Features
参数问题,改参数使用绝对路径的shapefile文件就能完成执行(如:C:temp.shp),但是使用IFeatureLayer
类型则会出错。为什么?有没有不使用绝对路径的方法呢?
注:Input_Features
对象类型为object
。
望有知道的大神为我解惑!感激不尽!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论