我已经编写了一个python脚本来对ArcGIS数据进行地理处理,并将python代码中的工作空间、输入和输出参数设置为:
env.workspace = arcpy.GetParameterAsText(0)
# input feature class
inFeatures = arcpy.GetParameterAsText(1)
# output feature class
Transect_featureclass = arcpy.GetParameterAsText(2)因为我是在Visual Studio2010中使用c#的ArcObjects新手,所以我正在尝试使用ArcMap插件在ArcMap桌面中添加一个按钮。但我不知道如何从c#调用此python脚本,并获得类似于文本框弹出窗口的内容,并询问有关输入和输出参数路径的信息。因为我直接调用了python,所以它不能在python代码中使用GetParameterAsText命令。
如果有人能在这件事上提供帮助,我将非常感激。提前谢谢。
发布于 2012-04-15 19:12:03
Esri页面的.NET开发人员帮助中有一个示例:http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Walkthrough_Consuming_a_geoprocessing_model_tool_in_NET/0001000001sw000000/
完成它之后,您应该已经学习了如何从ArcMap调用地理处理工具。为此,您必须创建一个包含python脚本的工具箱。这可以用.NET代码调用(请参阅演练)。
注意: Esri页面上已经很好地记录了大多数基本的开发内容,但有时很难找到;-)
发布于 2012-11-06 19:29:58
ArcPy不支持IronPython,它会给出错误“cannot load library arcgisscripting”。我认为问题是IronPython does not support pyd files里面包含了arcgisscripting。
ESRI为leveraging ArcPy in .net提供了以下示例
发布于 2012-03-29 02:31:13
找到几个选项:
或
执行脚本
首选的方法是选项1。它似乎是一个更“完整”的解决方案,允许直接从C#调用Python脚本方法,同时也允许异常冒泡。对于选项2,您完全依赖于单独的Python进程来进行错误处理和日志记录。
我犹豫是否提供选项2,但如果您不能让arcpy模块很好地与IronPython配合使用,则可能需要提供选项2。
https://stackoverflow.com/questions/9910461
复制相似问题