如何在栅格中定位一个点所在的行列号(将十进制经纬度转换成行列号)

如何在栅格中定位一个点所在的行列号

    • 摘要
    • 第一种方法:利用点要素类的属性表的字段计算器(推荐使用)
    • 第二种方法:利用空间分析的方法(太复杂,不建议使用)


原文链接:
http://support.esrichina-bj.cn/2010/0708/1556.html


摘要

使用arcgis,确定栅格中任意一点所在的行列。
将十进制经纬度转换成行列号。


内容:
有两种方法
第一种方式是利用点要素类的属性表中的字段计算器。(在excel中也能够实现 )
第二种方法是利用空间分析。(只能在arcgis中实现)


第一种方法:利用点要素类的属性表的字段计算器(推荐使用)

  1. 创建字段,在属性表中创建两个Long Integer类型的字段
  2. 字段计算器 ,在每个字段上鼠标右键,选择字段计算器
  3. 输入下列等式

字段1:Int(Abs((X - [X] ) / Z) + 1)
字段2:Int(Abs((Y - [Y] ) / Z) + 1)

X,Y是栅格的起始点坐标值,而[X],[Y]则是点的坐标值,Z是像素大小

如下例所示:

Int(Abs ((-80 - [X] ) / .00083333333) + 1)
Int(Abs ((35 - [Y] ) / .00083333333) + 1)

-80和35是栅格的起始点坐标,而[X],[Y]则是点的坐标值,00083333333是像素大小


第二种方法:利用空间分析的方法(太复杂,不建议使用)

(1)

  1. 打开Spatial Analyst tools > Map Algebra下的Single Output Map Algebra工具
  2. 在Map Algebra表达式窗口输入 $$rowmap + 1
  3. 设置环境变量中的范围和单元大小为栅格大小
  4. 更改输出名称为Rows
  5. 点击OK运行该工具。

(2)

  1. 打开Spatial Analyst tools > Map Algebra下的Single Output Map Algebra工具
  2. 在Map Algebra表达式窗口输入$$colmap + 1
  3. 设置环境变量中的范围和单元大小为栅格大小
  4. 更改输出名称为Columns
  5. 点击OK运行该工具。

(3)

  1. 打开Spatial Analyst Tools > Extraction中的Sample工具
  2. 选择生成的两个栅格文件(Rows and Columns)
  3. 选择点输入
  4. 点击OK,运行该工具运行该工具

你可能感兴趣的:(MATLAB,ArcGIS)