關於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);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM