zoukankan      html  css  js  c++  java
  • Saga-Python笔记

      要使用saga的python接口,先要安装配置。

    1、下载saga、安装python,注意一定要保持都是32位或64位,否则调用不了

    2、将saga_api文件考到system32目录下,将saga安装目录添加到环境变量path中去,新建一个环境变量,变量名和变量值分别为:SAGA_32和saga安装目录,将saga_2.2.1_win32_python27目录下的site-packages目录下的文件都拷到python对应的文件夹下去。

      调用模块

    saga模块的调用有两种方法:(1)        saga_api.SG_Get_Module_Library_Manager().Add_Library(os.environ['SAGA_32' ] + '/modules/grid_calculus.dll')'''
     (2)  os.environ['PATH'] = os.environ['PATH'] + ';' + os.environ['SAGA_32'] + '/dll'
            saga_api.SG_Get_Module_Library_Manager().Add_Directory(os.environ['SAGA_32' ] + '/modules', False)

    后面一种会将所有的模块均导入,而第一种仅导入对应的模块,个人猜想可能是由于我们要导入的某个模块依赖于其他模块,所以才需要用第二种将所有的模块均导入,仅作为猜想,没有证实过。经过上面其中一种后

        m    = saga_api.SG_Get_Module_Library_Manager().Get_Module(saga_api.CSG_String('grid_calculus'), 6)

      参数调用

    一般情况下通过p    = m.Get_Parameters(),然后依次给参数赋值,注意参数的ID一定要写正确,我们可以再Saga软件中看到相应模块的参数ID,也可以自己调用函数查看,

    有些特殊的情况可能会用到p    = m.Get_Parameters(1)之类的得到p后,再继续给参数赋值

      实例代码

    saga2.2.1中的第一个python例子也就是grid_create_dummy.py应该是有问题:

    从p    = m.Get_Parameters(saga_api.CSG_String('TARGET'))这句开始,该模块根本没有TARGET这一ID,而且后面三句参数赋值的ID也是错误的,应该要在前面加上TARGET_

    程序os.environ['PATH']一句表示将saga的安装目录增加到环境变量中去。

  • 相关阅读:
    Using Spark's "Hadoop Free" Build
    关于Consul
    关于Eureka
    关于Gateway
    关于Ribbon
    关于Hystrix
    关于Feign
    关于SpringBoot
    关于架构
    关于敏捷开发Scrum(一)
  • 原文地址:https://www.cnblogs.com/whaohe/p/4835410.html
Copyright © 2011-2022 走看看