地圖代數中的條件運算:
CON的語法:
Usage:? (out_grid) CON (<condition>, <true_expression>, {<condition>, <true_expression>}, ...
??????????????? {<condition>, <true_expression>}, {false_expression})
實例如下,將河流中NoData值變為0
con(isnull(D:\DB\河流.img),0,D:\DB\河流.img)
自動生成一個以輸入柵格圖像的外接邊框為范圍的柵格圖像。如果需要賦值為0的NoData區域大于這個外接長方形,可在Single?Output Map Algebra對話框Environment->General setting->Extent。
注:setnull的用法,作用是把柵格值設為NoData
Usage:? (out_grid) SETNULL (<condition>, {grid | scalar | number})
??????????? setnull([raster] == 0 , [raster])
????????????其中[raster]為要處理的柵格,后面的[raster]表示若前面條件不滿足則用這個值來代替.
con函數可以嵌套,如下所示:
con ( [1991rockyIndex.img] < 1.1 , 1.0 , con ( [1991rockyIndex.img] > 1.1 & [1991rockyIndex.img] < 1.45 , 2.0 , con ( [1991rockyIndex.img] > 1.45 & [1991rockyIndex.img] < 1.75 , 3.0 , con ([1991rockyIndex.img] > 1.75 , 4.0 , [1991rockyIndex.img]))))
?
另一例:
outraster = con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 0 , 1.07, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 1 , 5.13, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 2 , 5.13, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 3 , 5.13, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 4 , 5.13, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 5 , 4.14, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 6 , 6.17, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 7 , 5.43, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 8 , 5.43, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 9 , 1.08, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 10 , 1.08, con( [Extract_LUCC_GX_MCD12Q1.A2001001.Albers.500m.tif] == 11 , 1.08, 1.08))))))))))))
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
