zoukankan      html  css  js  c++  java
  • 关于ArcGIS10.0中的栅格计算中的函数

    版本升级确实很重要,在ArcGIS10.1中计算成功的,在10.0中出了问题。

    问题

    在进行栅格计算时,计算公式很简单,包括两个Ln函数:

    "-22.73 + 11.1 * Ln(5) + 0.34 * Ln("人口.tif")"

    可计算结果报错:000539 : Python 错误消息。Error running expression: rcexec() <type 'exceptions.RuntimeError'>: No CellSize and Extent set。

    分析

    帮助文档中的说明是计算字段或计算值工具使用的计算无效。提供的此错误消息将列出特定的 Python 错误。其解决方案还是让我一头雾水

    在GEONET中找到了一个类似的情况:

    https://geonet.esri.com/thread/23934

    它的意思是按错误提示去设置环境变量中的CellSize and Extent即可解决,原因是这是arcgis10.0的bug,必须手动设置,因为输出的不是一个值而是栅格。

    解决

    软件操作

    在ArcMap中环境中设置处理范围为"与输入栅格相同"、像元大小(栅格分析下)为与"与输入栅格相同";如果输入有多个栅格,可能会提示警告。

    代码操作

    参考python脚本语法,在AO代码中操作如下:

    GP.SetEnvironmentValue("extent",inRaster);
    GP.SetEnvironmentValue("cellSize", inRaster);
    

  • 相关阅读:
    孤儿进程与僵尸进程
    python with as的用法
    工作目录与os.getcwd()
    内置模块
    迭代器,生成器
    表达式,语句
    字符流
    字节流
    File
    触发器的操作
  • 原文地址:https://www.cnblogs.com/liweis/p/5336659.html
Copyright © 2011-2022 走看看