我将开始创建程序来处理来自PostGIS服务器的地理数据,并使用GDAL。
根据您的经验,用最好的语言来编程吗?我可以使用Perl和Python进行编程,但想了解该语言,并提供更多可重复使用的代码,示例,库等。
我将开始创建程序来处理来自PostGIS服务器的地理数据,并使用GDAL。
根据您的经验,用最好的语言来编程吗?我可以使用Perl和Python进行编程,但想了解该语言,并提供更多可重复使用的代码,示例,库等。
Answers:
就个人而言,我真的很喜欢使用Python用GDAL进行编码。一旦安装好它,并弄清楚它是如何工作的,这很容易进行。同样,通过python,您可以利用一些真正有用的“内置电池”内置模块(os,数学,字符串,sys,random等),以及第三方模块,例如NumPy(可用于栅格操作)。
有关GIS Python库的完整列表,请参见此处:在GIS中至关重要的Python工具/模块/插件是什么?)。
可以在这里找到关于Python GDAL绑定的非常好的介绍:
http://www.gis.usu.edu/~chrisg/python/2009/
您可以在最短的时间内掌握一些知识和知识,例如,可以分两行抓取shapefile:
driver = ogr.GetDriverByName('ESRI Shapefile')
datasource = driver.Open('shapefile.shp')
阅读文档(http://www.gdal.org/annotated.html)并且知道您在做什么之后,对文件执行任何操作都是非常容易的。
请参阅此处,以了解一些简单且最少的代码可能实现的示例:
在我看来,这是一个非常主观的问题。从GDAL / OGR的角度来看,我将说该库的基本相同功能在Python和Perl中公开。因此,很多情况可能取决于您的语言偏好以及您可能需要的其他组件。
我本人是python专家,但我想代表perl发言,请注意,Ari Jolma维护的GeoInformatica环境包括GDAL / OGR和许多其他对perl脚本编写者有用的东西。我鼓励您检查一下:
对Python进行第三次投票。对我来说,除了上面的出色答案外,这是因为我很快就厌倦了不得不了解六种脚本语言来完成不同的工作,因此,一旦ESRI支持Python,我就将它们全部放弃了(几乎-Javascript仍然有用)以支持Python。很棒的事情是,我使用的其他非GIS软件包也支持Python,因此我可以从各种软件的API中调用GDAL / OGR。Python也是一种非常高级的语言,因此我只写了十分之一的代码,即使像C#这样的托管语言也需要。