ArcGIS 9.2 笔记(5):Georocessing与Python
2007-01-10 01:31
381 查看
ArcGIS 9.0引入 Python ,作为其 Georocessing 的
首选脚本编程语言,并使用PythonCOM直接调用作为COM对象的GP(Georocessing的主对象)对象,这个办法是最容易实现的办法,但问
题多多。加上调用方式采用类似Shell的调用,Python在ArcGIS 9.0中形同虚设。前面的Blog里有过多次说明。
ArcGIS 9.2的Python支持去掉的采用PythonCOM的方式,采用C/C++扩展了一个Python对象(GP),这样,Python就可以直接调用该对象,无须启动ArcGIS(由GP来调用AO或者ArcGIS),架构上上了一个台阶。
这
个GP对象存在于ArcGIS的Bin目录下,名称为:arcgisscrīpting.dll,和其他dll不同,全部使用小写的名称也是C风格。使用
Dependency可以看到,这个对象引用了Python24.dll。要在Python中使用,还需要增加PYTHONPATH变量,其值指向
ArcGIS的Bin目录,这样在Python脚本中就可以直接import该对象了:
import arcgisscrīpting
然后就可以使用该对象创建gp对象:
gp = arcgisscrīpting.create()
有了gp,就类似有了Office的Application对象,一切就都在掌握之中了。
使用这种方式有很多好处,最起码的是ArcGIS和Python的桥梁只是通过arcgisscrīpting来搭起,与 其他 东西无关,使用python或者使用ArcGIS都更自由。再者,这种方式下,Geoprocessing也应该比较稳定了。
首选脚本编程语言,并使用PythonCOM直接调用作为COM对象的GP(Georocessing的主对象)对象,这个办法是最容易实现的办法,但问
题多多。加上调用方式采用类似Shell的调用,Python在ArcGIS 9.0中形同虚设。前面的Blog里有过多次说明。
ArcGIS 9.2的Python支持去掉的采用PythonCOM的方式,采用C/C++扩展了一个Python对象(GP),这样,Python就可以直接调用该对象,无须启动ArcGIS(由GP来调用AO或者ArcGIS),架构上上了一个台阶。
这
个GP对象存在于ArcGIS的Bin目录下,名称为:arcgisscrīpting.dll,和其他dll不同,全部使用小写的名称也是C风格。使用
Dependency可以看到,这个对象引用了Python24.dll。要在Python中使用,还需要增加PYTHONPATH变量,其值指向
ArcGIS的Bin目录,这样在Python脚本中就可以直接import该对象了:
import arcgisscrīpting
然后就可以使用该对象创建gp对象:
gp = arcgisscrīpting.create()
有了gp,就类似有了Office的Application对象,一切就都在掌握之中了。
使用这种方式有很多好处,最起码的是ArcGIS和Python的桥梁只是通过arcgisscrīpting来搭起,与 其他 东西无关,使用python或者使用ArcGIS都更自由。再者,这种方式下,Geoprocessing也应该比较稳定了。
相关文章推荐
- ArcGIS 9.2 笔记(5):Georocessing与Python
- 我的Python学习笔记(5) ArcGIS API for Python
- ArcGIS9.2中使用Python和GP交互
- ArcGIS 9.2 笔记(2):Personal ArcSDE,个人ArcSDE
- ArcGIS 9.2 笔记(3):三维功能
- ArcGIS 9.2 笔记(4):数据互操作
- ArcGIS 9.2 开发学习笔记(转自Mars的自语)
- ArcGIS Desktop 9.2学习笔记-1
- ArcGIS 9.2 笔记(1)
- 基于ArcGIS的Python编程秘笈笔记(一):面向ArcGIS的Python语言基础
- python学习笔记9.2-文件及文件夹操作
- ArcGIS 9.2 笔记(2):Personal ArcSDE,个人ArcSDE
- ArcGIS 9.2 笔记(3):三维功能
- ArcGIS 9.2 笔记(1)
- ArcGIS 9.2 笔记(4):数据互操作
- Python入门学习笔记1(变量、运算符、数据类型I)
- Python学习笔记:变量作用域
- python学习笔记7-函数返回值
- python 笔记(1) 运算优先级
- [笔记]Python的整数对象:PyIntObject