python开发gis软件_当桌面GIS遇上Python

Python是一种简单易学,功能强大的编程语言。它简洁的语法、对动态输入的支持以及解释性语言的本质,使得它在大多数平台上成为一种理想的脚本语言,在云计算、大数据挖掘、人工智能等领域有着广泛的应用,特别适用于快速的应用程序开发。而我们所熟知的GIS软件功能,都是一个个封装好的算法库,所以Python与GIS有着非常好的契合度。SuperMap iDesktop Java桌面产品从9D(2019)版本开始,融合了Python技术,它具体有哪些技术点?下面,就让我们一起来学习。

· 内置Python运行环境

Java桌面内置了Python运行环境PyDev,集成了Python 3.5的运行库,无须额外安装Python包,即可通过Java桌面编写和执行Python脚本。

· 内嵌Python IDE

Java桌面基于开源的文本编辑器RSyntaxTextArea,自主研发了Python集成开发环境。Java桌面的Python IDE支持Python编码风格,支持接口方法、参数的智能提示和自动补全能力,支持内嵌API的接口说明,并自动提示辅助快速开发Python脚本。

Python IDE和Java桌面做到了数据的互访问,可以很方便地进行结果校验。在IDE中可以直接调用Java桌面打开数据,IDE的执行结果支持保存到Java桌面的数据源中,可以在地图、场景上进行可视化显示,执行结果一目了然。

图1 Java桌面中内嵌的Python IDE示意

· Python工具

Java桌面工具箱提供了多个Python工具,并支持查看和修改工具脚本。Java桌面支持通过内置的IDE编写Python脚本创建工具,支持通过加载Python文件(*.py)的方式创建工具。在执行Python工具的时候,输出区会有对应的Python代码输出,方便及时跟踪代码的执行情况。

除此之外,工具箱中的工具支持查看Python接口,提供详细的Python接口的语法、功能介绍以及各个参数的说明,为Python语言开发提供便利。

图2 导入Python脚本

· Python与可视化建模结合

Java桌面提供的Python工具不仅可以直接运行,同时还支持Python工具的可视化建模。可以直接把Python工具添加到模型画布中,并与其他工具连接,构建自动化的数据生产处理等工作流程。

图3 使用导入的Python脚本构建工作流程

Java桌面创建的模型,不仅可以在桌面中执行,也支持将模型输出为Python脚本文件(*.py)方便重用。例如,输出的Python脚本,在编辑器中修改参数后,再次导入到Java桌面中使用,或者复制粘贴Python代码至Python编辑区域,直接执行代码。当然Java桌面输出的Python脚本也支持脱离桌面环境的重用。

图4 模型导出为Python文件示意

Java桌面集成了数据处理、拓扑、插值、邻近分析等众多SuperMap iObjects Python功能。借助Python语言,用户可以快速定制开发,实现更多符合业务需求逻辑的功能。

图5 Java桌面中集成的Python功能汇总

你可能感兴趣的:(python开发gis软件)