深圳网站建设V芯ee8888e,深圳专业网站建设免费送域名空间,招聘网页制作课程设计,杭州企业画册设计公司1地形图的分幅与编号原理
我国1:1000000地形图的分幅采用国际1:1000000地图分幅标准#xff0c;而其他比例尺地形图分幅以1:1000000比例尺地形图为基准进行分幅。每幅1:1000000地形图范围是经差6、纬差4#xff1b;纬度60~ 76之间经差12、纬差4#xff1b;纬度76~ 88之间经…1地形图的分幅与编号原理
我国1:1000000地形图的分幅采用国际1:1000000地图分幅标准而其他比例尺地形图分幅以1:1000000比例尺地形图为基准进行分幅。每幅1:1000000地形图范围是经差6°、纬差4°纬度60°~ 76°之间经差12°、纬差4°纬度76°~ 88°之间经差24°、纬差4°。我国经纬度范围为经度73.33°~135.05°, 纬度3.51°~53.33°纬度60°以上没有需要合幅的图幅。
我国1:1000000地形图分幅如下 1:1000000地形图编号从赤道起算每纬差4°为一行至南、北纬88°各分为22行依次用大写字母(字符码)ABC……V表示其行号:从180°经线起算自西向东每经差6°为一列全球分为60列依次用阿拉伯数字(数字码)123……60表示列号。国际编号中第一位表示南、北半球用“N”、“S”分别表示北半球、南半球。我国范围全部位于赤道以北省略字母代码N。
我国图幅范围在经度72°~138°, 纬度0°~ 56°包括行号A~ N共14行列号43~53共11列。1:1000000地形图编号见图1。
1:500000~1:5000地形图的分幅均以1:1000000地形图为基础按照规定的经差和纬差进行划分图幅地形图的图幅范围、行列数和图幅数量关系如下图所示。 1:500000~ 1:5000地形图的编号均以1:1000000地形图编号为基础采用行列编号方法。1:500000~ 1:5000地形图的图号由其所在1:1000000地形图的图号、比例尺代码和各图幅的行列号共十位码组成。1:500000~1:5000地形图编号的组成如图3所示。 1:1000~1:500地形图编号的组成如图6所示图幅的行列号由3位变成了4位。 1:500000~1:5000各比例尺地形图比例尺代码如下表所示。
1:500000~1:5000各比例尺地形图行列号是将1:1000000地形图按所含各比例尺地形图的经差和纬差划分若干行和列横行从上到下、纵行从左到右按顺序用数字表示不足3位的前面补零。
例如如下图所示1:1000000比例尺某图幅编号为M43包含了4幅1:500000地形图右下角图幅的编号为M43B002002。 以上主要介绍的是经纬度分幅和编号方法其他如正方形、矩形分幅和编号方法此处不再赘述感兴趣的可查阅国家标准GB/T13989-2012《国家基本比例尺地形图分幅和编号》。
2ArcGIS实现地形图分幅和编号
我们以陕西省行政区范围为例基于ArcGIS实现1:250000地形图分幅和编号并生成图幅结合表数据。
地形图分幅步骤
1.首先在ArcMap中加载陕西省行政区划shp数据并查看经纬度范围。 查看可知陕西省经纬度范围为经度105.49°~ 111.24°、纬度31.71°~39.58°。 2.按照数据经纬度范围计算1:1000000地形图图幅号。
西南角
a[φ/4°]1[31.71/4]1718,
b[λ/6°]31[105.49/6]31173148,
东北角
a[φ/4°]1[39.58/4]19110
b [λ/6°]31[111.24/6]31183149,
经过计算可知1:1000000比例尺西南角图号为H48、东北角图号为J491:1000000比例尺陕西省共涉及3行2列共6幅图,图号分别为H48、H49、I48、I49、J48、J49图幅对应经度范围为102°~ 114°纬度范围为28°~40°。
3.按照经纬度范围比例尺创建渔网。
在ArcGIS中点击工具箱依次点击【数据管理工具】-【要素类】-【创建渔网】。
按照规定,每幅1:1000000地形图划分为4行4列共16幅1:250000地形图陕西省共涉及3行2列共6幅1:1000000地形图因此1:250000地形图共划分为3x412行、2x48列共96幅图。
在创建渔网工具参数中依次设置输出路径、经纬度范围、行列数并设置几何类型为面类型顺便勾选创建标注点。 生成的渔网和标准点shp数据没有定义坐标系使用【定义投影】工具定义和陕西省矢量范围一样的地理坐标系结果如下图所示
地形图编号步骤
1.给标准点分别添加XY坐标字段并计算坐标值。
使用【数据管理】-【字段】-【添加字段】工具添加X坐标、Y坐标字段设置字段类型为DOUBLE类型,然后使用计算几何求出十进制格式坐标值。 2.计算图幅号
网上好多教程都是将属性表导出xls表格文件然后使用表格里面的函数分布计算出图幅号十分麻烦而且不方便显得就很不高级。推荐大家多多使用字段计算器功能通过编写简单python函数的方式进行属性值计算。不仅方便而且可以保存成函数文件重复使用。
首先添加图幅号字段然后使用字段计算器加载提前编写好的图幅号计算函数批量计算各标准点所在图幅的图幅号。 计算后图幅号如下 按照不同比例尺图幅编号规则使用Python语言编写图幅号计算函数输入比例尺、经度、纬度即可计算出该点所在对应比例尺图幅的图幅号。
函数完整代码如下
def getMapID(scale, x, y):#计算100W图幅号x_map_size 6y_map_size 4a int(y / y_map_size) 1b int(x / x_map_size) 31tag chr(a 64)map_id_100W tag {:02d}.format(b)if scale 500000:x_map_size 3y_map_size 2if scale 250000:x_map_size 1 30/60y_map_size 1if scale 100000:x_map_size 30/60y_map_size 20/60if scale 50000:x_map_size 15/60y_map_size 10/60if scale 25000:x_map_size 7/6030/3600y_map_size 5/60if scale 10000:x_map_size 3/6045/3600y_map_size 2/6030/3600if scale 5000:x_map_size 1/6052.5/3600y_map_size 1/6015/3600if scale 2000:x_map_size 37.5/3600y_map_size 25/3600if scale 1000:x_map_size 18.75 / 3600y_map_size 12.5 / 3600if scale 500:x_map_size 9.375 / 3600y_map_size 6.25 / 3600#计算50W在100W图幅中的行列号c int(4 / y_map_size) - int(divmod(y, 4)[1] / y_map_size)d int(divmod(x, 6)[1] / x_map_size) 1if scale 1000000:map_id map_id_100Wif scale 500000:map_id map_id_100W B{:03d}{:03d}.format(c,d)if scale 250000:map_id map_id_100W C{:03d}{:03d}.format(c,d)if scale 100000:map_id map_id_100W D{:03d}{:03d}.format(c,d)if scale 50000:map_id map_id_100W E{:03d}{:03d}.format(c,d)if scale 25000:map_id map_id_100W F{:03d}{:03d}.format(c,d)if scale 10000:map_id map_id_100W G{:03d}{:03d}.format(c,d)if scale 5000:map_id map_id_100W H{:03d}{:03d}.format(c,d)if scale 2000:map_id map_id_100W I{:03d}{:03d}.format(c,d)if scale 1000:map_id map_id_100W J{:04d}{:04d}.format(c,d)if scale 500:map_id map_id_100W K{:04d}{:04d}.format(c,d)return map_id
3.分幅数据挂接图幅号
首先给生成的分幅数据添加图幅号字段然后在目录中分幅数据上右击使用【连接和关联】工具基于FID字段连接标注点图层。 使用字段计算器将标注点图层的图幅号计算到分幅图层然后取消连接。 4.陕西省图幅结合表生成
加载陕西省行政区数据按位置进行筛选去除不涉及图幅然后将选中的图幅导出即可生成陕西省1:250000比例尺标准分幅图幅结合表数据。 图幅结合表结果如下