VScode在Ubuntu上安装和使用SuperMap Python

VScode在Ubuntu上能够安装和使用SuperMap Python的相关模块,将各类Python库(如GDAL、Proj以及各类科学计算python库等)结合起来使用。经过同时调用iClient Python和iObjects Python,与SuperMap iServer及在线服务进行互访,将本地应用与在线服务实现无缝的整合。html

一、GIS Python库

SuperMap的Python支持包括:java

  • 基础模块
    • iClient Python,用于访问iServer及在线服务的Python库。
    • iObjects Python,基于iObjects Java的原生GIS支持库的Python接口。
  • 使用环境
    • Python console,python的原生console。
    • iPython console,ipython的原生console。
    • Jupyter Notebook,支持Notebook格式。
    • JupyterHub,支持基于多用户的Notebook环境。
    • JupyterHub for K8s,支持运行于Kubernetes集群上的基于多用户的Notebook环境。
    • iDesktop Python Console,在桌面GIS环境中的python原生console。
    • iServer with Jupyter Notebook,集成到iServer的Notebook服务。
    • iDataInsight,集成到"数据洞察"WebApp的python支持。
    • iPortal,集成到"GIS门户"WebApp的python支持。
    • SuperMap Online,集成到"在线服务"WebApp的python支持。

二、安装组件和支持库

须要同时安装iObjects Java和iObjects Python库。python

2.1 下载iObjects Java组件

iObjects Python须要该组件来执行空间计算操做。linux

  • 默认安装路径:/opt/SuperMap

因为文件较大,使用wget -c实现断点续传。以下:ubuntu

wget -c http://download.supermap.com.cn/2019/SuperMap9D/9.1.1/iObjects_911_release_20190129/supermap-iobjectsjava-9.1.1-16827-70590-linux64-all-Bin.tar.gz
  • 解压后复制全部文件到JupyterHub安装的根目录下的目录resources/Bin,这是我这里的默认目录。
    • 这是使用共享存储的目录,若是想要放到其它目录,须要同时修改下面的脚本文件。
  • 同时须要相应的license文件(能够在线申请得到),如resources/supermap_any_2019.lic9d,
    • 若是在Docker中使用:
      • 在Build过程放入 ./SuperMap/supermap_any_2019.lic9d。
      • 而后再复制到Docker image的/opt/SuperMap目录下。

2.2 下载libpng支持库,用于Ubuntu 18.04

iObjects Java须要用到libpng12-0_1.2.54-1ubuntu1.1_amd64.deb,可是我这个Docker镜像用的Ubuntu 18.04里没有默认安装,须要先下载下来,在Docker Build过程当中安装进去。ide

2.3 安装iobjects-python

# 添加 iObjects-python 软件包。
RUN pip install iobjectspy==9.1.1

其它版本,相应指定安装便可。ui

2.4 安装iclient-python

# 添加 iclient-python 软件包。
RUN pip install iclientpy

其它版本,相应指定安装便可。spa

三、使用GIS库

打开VSCode,输入代码:.net

#导入iobjectspy的python库。
from iobjectspy import *

#得到工做空间对象。
ws=workspace()

#得到数据源集合对象。
ds=ws.datasources

#遍历数据源集合,输出相关信息。
for i in ds:
	print(i)

#遍历数据源集合,输出每一个数据集的别名。
>>> for i in ds:
>>>     print(i.alias)
>>>     
SuperMapCloud
ChinaRS

查看工做空间对象ws的帮助信息,输入:插件

help(ws)

具体语法请参考iObjectPy,在iDesktop里也是彻底同样的。

更多参考:

相关文章
相关标签/搜索