论文部分内容阅读
[摘要]MapGis是国土资源部考评认证、推荐使用的城镇地籍管理系统建库平台,在土地管理部门都得到了广泛应用,但承担建库项目的单位所使用的前端测绘软件不尽相同,应用这些软件获得的测绘成果各行其是,为建库工作增加了一定的难度。以MapInfo为例详细介绍了一种借助其他软件平台将测绘成果导入MapGis为地籍进行数据准备的技术方法。
[关键词]MapGis 地籍库 MapInfo 应用
中图分类号: TP1文献标识码:A 文章编号:1671-7597(2008)0710022-03
中地公司与国家土地规划院协作开发的土地利用数据库系统,与国家标准结合紧密,在国土资源部的推荐下,为众多地区所选用。MapGis建库的一般流程是,利用中地公司开发的另一款名为MapSUV的测绘软件产生的*.suv格式数据,导出包含地籍号、土地使用者、建筑结构及各种面积和比率等建库属性信息的*.wp文件,经勘丈表的录入及属性挂接,形成建库数据,最后在地籍管理系统中完成入库工作。
然而,许多情况下,建库工作的外业测绘和内业合成是由不同单位完成的,即使是同一单位,测绘作业部门对其先前使用的其他测绘软件已得心应手,不愿意“换笔”。因此,内业单位拿到的常常不是*.suv文件,这些五花八门的数据如何为MapGis平台所用,成为建库前数据准备中的一个重要课题。
MapInfo是美国MapInfo公司的桌面地理信息系统软件,它拥有强大的基于空间分析和字段匹配的属性更新和挂接扩充功能,其图形操作也有一些独到之处。而且,它能以*.mif格式与MapGis进行数据交换,根据这些特点,可以利用MapInfo辅助进行MapGis地籍库建设中的数据准备。
一、一般过程
利用MapInfo辅助MapGis进行城镇地籍数据库建设中的数据准备的一般过程如下:
(一)向MapGis导入数据及数据分层
利用前端测绘软件能够输出并且MapGis可以接受的数据交换格式,将测绘成果尽可能无损地导入MapGis系统中。选择数据格式的要求是:一要保证坐标数据的精度,二要保证数据成果的最大限度保留。*.dxf不仅可以满足上述要求而且几乎被所有的测绘软件所支持,如果无直接数据接口,应仅量选择该种格式。须注意的是,当MapGis系统出现数据接受困难时,应利用AutoCAD将其中的实体做“炸开”处理并转存为较低版本文件,再进行输入操作。
当*.dxf没有分层或分层不符合要求时,要对转入的MapGis文件按“街坊范围”、“宗地界”、“房屋”、“其他要素”进行重新分层,分层后按层保存为不同的MapGis线文件。
分别对“街坊范围”、“宗地界”、“房屋”等线文件进行拓扑处理,生成*.wp文件。生成*.wp(区)文件的目的,一是为后续工作作准备,二是可以对外业成果的可用性进行初步检验。显然,任意一个街坊、宗地或房屋都应能独立构面,当出现拓扑问题时,应分析原因,由外业人员作平差或连线处理,遇到内业无法处理的问题或问题过多,应退回外业部门。
(二)设置地图投影参数并向MapInfo传送数据
启动MapGis的投影变换子系统,装入预处理过的文件,其“当前投影”和“目的投影”均设置为实际应用的投影类型(两者完全一致),如下图:
点按“开始转换”,转换完成后保存,这样就为各文件赋予了一定的坐标系。
在MapGis的“文件转换”子系统中的“输出/输出MapInfo格式”菜单命令,将区文件输出为*.mif。启动MapInfo,利用“表/转入”菜单将文件导入为*.tab文件。导入前应保证MapInfo系统中包含与在MapGis中指定的坐标系相对应的投影定义。
(三)利用MapInfo进行数据处理
MapInfo中的数据处理分为图形处理和属性处理,前者包括对输入的图形进行冗点剔除和空间叠加分析,后者包括向表添加建库所需字段并对各字段进行更新赋值。
冗点剔除:MapGis创建的区文件导入MapInfo后,作为其边界的弧段被自动连接在了一起,原来相邻的两条弧段,前一条的末结点和后一条的首结点都被保留下来,这样,一条封闭边界上就出现了n/2-1个冗点(n为边界总结点数),必须将其删除。
空间叠加分析:一个街坊被分割为若干宗地,一个宗地又可能包含若干房屋,因此,宗地不可能置于街坊之外,房屋也不可能置于宗地之外,而且,一般情况下,三者之间也不会出现空间上的交错。利用MapInfo的空间分析能力,可以轻松完成检索(实际工作中,越界建筑是存在的,但数量较少,通过空间分析也可以将这些情况检索出来)。
添加字段:导入MapInfo的文件只有ID、面积和长度三个字段,必须依据建库需要添加字段,字段的名称、类型、长度和顺序以规范为准。
各字段赋值 地籍号根据外业图纸手工输入,宗地面积、房屋面积及建筑比率等利用MapInfo的字段更新功能添加,其他字段的内容根据外业勘丈表输入。
(四)向MapGis传回数据
借助*.mif格式将MapInfo整理的文件传回MapGis,完成数据准备。
二、几个关键环节的说明
(一)投影和坐标系定义
MapGis内置了二十多种投影和坐标定义,基本涵盖了常用的投影类型,完全可以满足使用需要,在此不作赘述。而MapInfo中并没有预置我国常用的坐标系,必须人工添加,下面简要介绍一下MapInfo中添加投影定义的方法并给出1954北京坐标系及1980西安坐标系3度和6度带的投影定义语句。
MapInfo的投影是由其安装目录下名为mapinfow.prj的文件定义的,这是一个可以用记录本打开的文件,它的格式如下:
"--- Longitude / Latitude ---", 0, 0, 0, 0., 0., 0., 0., 0., 0., 0., 0.
"Longitude / Latitude", 1, 0
"Longitude / Latitude (Adindan)\p4201", 1, 1
"Longitude / Latitude (Afgooye)\p4205", 1, 2
"Longitude / Latitude (AGD 66)\p4202", 1, 12
……
文件中以空行分隔为不同的定义块,每一块的第一行定义投影方式的一级菜单,第二行以后定义二级菜单。每行引号内的内容是坐标系名称,它们将分别出现在MapInfo软件投影对话框的两个下拉列表中;紧接的数值指定所使用的投影方式,如“3”代表投影方式是亚尔勃斯投影(即正轴等面积割圆锥投影),“8”代表投影方式为高斯-克吕格投影(即等角横轴切椭圆柱投影);投影方式后面是基准面代码(当需要自定义基准面时,此代码必须为“0”或“9999”);其余部分是有关该特定坐标系的参数值。从Mapinfo中国的网站上可找到北京54、西安80坐标系的基准面参数,各参数及其意义如下:
基准面参数之后指定坐标单位代码等参数。对高斯-克吕格投影而言,要指定的参数还包括:投影带中央经线、原点纬度、坐标系数、东纬偏移、北纬偏移。东纬偏移是指中央经线在横轴方向的偏移值,为保证各投影带横坐标值不出现负数,规定每个投影带的坐标原点西移500千米,即中央经线的东纬偏移值为500,000(米),一般地,此偏移值前还要另加带号,但在本文针对的情况下,以不加带号为佳,原因请读者自己体会。
据此,以下给出我国1954北京坐标系6度带及1980西安坐标系3度带的投影参数定义语句,用记录本将其保存至Mapinfow.prj文件中即可(其他坐标系的定义语句可仿照写出):
"--- Gauss-Kruger (Xian1980 3-degree) ---"
"Zone 25", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 75, 0, 1, 500000, 0
"Zone 26", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 78, 0, 1, 500000, 0
"Zone 27", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 81, 0, 1, 500000, 0
"Zone 28", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 84, 0, 1, 500000, 0
"Zone 29", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 87, 0, 1, 500000, 0
"Zone 30", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 90, 0, 1, 500000, 0
"Zone 31", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 93, 0, 1, 500000, 0
"Zone 32", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 96, 0, 1, 500000, 0
"Zone 33", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 99, 0, 1, 500000, 0
"Zone 34", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 102, 0, 1, 500000, 0
"Zone 35", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 105, 0, 1, 500000, 0
"Zone 36", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 108, 0, 1, 500000, 0
"Zone 37", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 111, 0, 1, 500000, 0
"Zone 38", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 114, 0, 1, 500000, 0
"Zone 39", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 117, 0, 1, 500000, 0
"Zone 40", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 120, 0, 1, 500000, 0
"Zone 41", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 123, 0, 1, 500000, 0
"Zone 42", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 126, 0, 1, 500000, 0
"Zone 43", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 129, 0, 1, 500000, 0
"Zone 44", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 132, 0, 1, 500000, 0
"Zone 45", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 135, 0, 1, 500000, 0
"--- Gauss-Kruger (Beijing1954 6-degree) ---"
"Zone 13", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 75, 0, 1, 500000, 0
"Zone 14", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 81, 0, 1, 500000, 0
"Zone 15", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 87, 0, 1, 500000, 0
"Zone 16", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 93, 0, 1, 500000, 0
"Zone 17", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 99, 0, 1, 500000, 0
"Zone 18", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 105, 0, 1, 500000, 0
"Zone 19", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 111, 0, 1, 500000, 0
"Zone 20", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 117, 0, 1, 500000, 0
"Zone 21", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 123, 0, 1, 500000, 0
"Zone 22", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 129, 0, 1, 500000, 0
"Zone 23", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 135, 0, 1, 500000, 0
投影方式、参考椭球、基准面、坐标单位等代码的详细定义请参阅《MapInfo参考手册》,限于篇幅不做过多描述。
(二)冗点剔除
由MapGis导出的*.mif文件也是文本文件,它由文件头、坐标系定义、字段定义及“Data”引领的一系列坐标对组成,如:
Data
Region 1
8
456637.741000 4355304.497000
456652.629000 4355301.800000
456652.629000 4355301.800000
456648.578000 4355279.682000
456648.578000 4355279.682000
456633.277000 4355282.714000
456633.277000 4355282.714000
456637.741000 4355304.497000
Pen (1,0,0)
Brush (2,11665277,11665277)
……
观察后不难发现,每一组坐标对数据第一行和最后一行相同,这是因为作为面对象,其边界必须封闭,因而是必要的。除此之外的其他坐标对,均相邻重复出现,重复出现的行即该边界上的冗点。用任何一种编程语言都可以很容易地将之剔除,只是要注意,坐标列表前面的点总数(如上面例子中的“8”)也要用“n/2+1”替换。
(三)勘丈表录入
MapGis、MapInfo、Excel、Access等都可以用于勘丈表的录入。应该说,这一工序不是难点但却最令作业人员头疼,不论选用何种录入软件,这项工作都很乏味,工作效率也难以提高,一般一名作业人员一天的录入量只有100宗左右。为此我们设计了一个录入工具,其界面如上页图。该界面中的项目基本与勘丈表布局相同,作业时只要将勘丈表中的内容填入相应位置即可,作业效率大大提高,一名作业员一天可以录入200个以上的宗地。该程序的最终成果为*.txt文件,可以被MapInfo直接打开,以地籍号为联接列,即可将其更新至表中。
三、问题讨论
我们知道,将地球表面上的点转绘到地图上要经过三次量化的复杂计算过程:第一次是对地球本身的描述,称为参考椭球体的定义;第二次是对这个椭球体进行空间定位,即坐标系的定义;第三次则是投影的选择。换句话说,当参考椭球体、坐标系、投影方式中任何一个发生变化时,都会使地球上同一点具有不同的地图坐标。我国1954北京坐标系采用的是克拉索夫斯基椭球体,坐标原点位于前苏联的普尔科沃,而1980西安坐标系采用的是IUUG1975推荐椭球,坐标原点在西安市泾阳县永乐镇。两者的区别是明显的,而比较Mapinfo中国网站提供的两组坐标系参数发现,九个数值中只有第一个即参考椭球不同(“3”代表克拉索夫斯基椭球体、“31”代表IUUG1975推荐椭球),显然,这两组参数中必然至少有一组是错误的(根据青岛海洋地质研究所戴勤奋同志的分析,这两组参数都是值得怀疑的)。为此,我们选择河北中部某县城数据为样本进行了精度检验。检验表明,同名点坐标在导入前与导入后虽然是有区别的,但两者相差值均在0.005米以下,而且,该差值可能只是MapInfo坐标值取值精度不够造成的,与投影和坐标系参数几乎没有关系。因此,这种作业方式是可行的。
四、结论
本文介绍的工作流程是以*.dxf为原始数据的城镇地籍建库任务,针对性较强,其适用性也有待实际工作的进一步检验和改进,希望能对同行有所启发。
对于一种相同的工作,作业单位经常要面对不同格式的原始数据,如何最大限度地利用原始数据并提高工作效率,是基层测绘技术人员的重要任务,研究实际问题、了解不同软件的特点和数据接口,多动脑勤实践是更出色地做好本职工作的必由之路。
参考文献:
[1]李敏、沈云中、刘春,《基于MapInfo的电子地图坐标系定义与转换》,测绘工程2004年04期.
[2]《MapInfo参考手册》.
作者简介:
王晓东,男,汉族,河北涞水人,工程师,主要从事地理信息系统开发;段建峰,男,汉族,河北高阳人,工程师,主要从事地理信息系统开发。
[关键词]MapGis 地籍库 MapInfo 应用
中图分类号: TP1文献标识码:A 文章编号:1671-7597(2008)0710022-03
中地公司与国家土地规划院协作开发的土地利用数据库系统,与国家标准结合紧密,在国土资源部的推荐下,为众多地区所选用。MapGis建库的一般流程是,利用中地公司开发的另一款名为MapSUV的测绘软件产生的*.suv格式数据,导出包含地籍号、土地使用者、建筑结构及各种面积和比率等建库属性信息的*.wp文件,经勘丈表的录入及属性挂接,形成建库数据,最后在地籍管理系统中完成入库工作。
然而,许多情况下,建库工作的外业测绘和内业合成是由不同单位完成的,即使是同一单位,测绘作业部门对其先前使用的其他测绘软件已得心应手,不愿意“换笔”。因此,内业单位拿到的常常不是*.suv文件,这些五花八门的数据如何为MapGis平台所用,成为建库前数据准备中的一个重要课题。
MapInfo是美国MapInfo公司的桌面地理信息系统软件,它拥有强大的基于空间分析和字段匹配的属性更新和挂接扩充功能,其图形操作也有一些独到之处。而且,它能以*.mif格式与MapGis进行数据交换,根据这些特点,可以利用MapInfo辅助进行MapGis地籍库建设中的数据准备。
一、一般过程
利用MapInfo辅助MapGis进行城镇地籍数据库建设中的数据准备的一般过程如下:
(一)向MapGis导入数据及数据分层
利用前端测绘软件能够输出并且MapGis可以接受的数据交换格式,将测绘成果尽可能无损地导入MapGis系统中。选择数据格式的要求是:一要保证坐标数据的精度,二要保证数据成果的最大限度保留。*.dxf不仅可以满足上述要求而且几乎被所有的测绘软件所支持,如果无直接数据接口,应仅量选择该种格式。须注意的是,当MapGis系统出现数据接受困难时,应利用AutoCAD将其中的实体做“炸开”处理并转存为较低版本文件,再进行输入操作。
当*.dxf没有分层或分层不符合要求时,要对转入的MapGis文件按“街坊范围”、“宗地界”、“房屋”、“其他要素”进行重新分层,分层后按层保存为不同的MapGis线文件。
分别对“街坊范围”、“宗地界”、“房屋”等线文件进行拓扑处理,生成*.wp文件。生成*.wp(区)文件的目的,一是为后续工作作准备,二是可以对外业成果的可用性进行初步检验。显然,任意一个街坊、宗地或房屋都应能独立构面,当出现拓扑问题时,应分析原因,由外业人员作平差或连线处理,遇到内业无法处理的问题或问题过多,应退回外业部门。
(二)设置地图投影参数并向MapInfo传送数据
启动MapGis的投影变换子系统,装入预处理过的文件,其“当前投影”和“目的投影”均设置为实际应用的投影类型(两者完全一致),如下图:
点按“开始转换”,转换完成后保存,这样就为各文件赋予了一定的坐标系。
在MapGis的“文件转换”子系统中的“输出/输出MapInfo格式”菜单命令,将区文件输出为*.mif。启动MapInfo,利用“表/转入”菜单将文件导入为*.tab文件。导入前应保证MapInfo系统中包含与在MapGis中指定的坐标系相对应的投影定义。
(三)利用MapInfo进行数据处理
MapInfo中的数据处理分为图形处理和属性处理,前者包括对输入的图形进行冗点剔除和空间叠加分析,后者包括向表添加建库所需字段并对各字段进行更新赋值。
冗点剔除:MapGis创建的区文件导入MapInfo后,作为其边界的弧段被自动连接在了一起,原来相邻的两条弧段,前一条的末结点和后一条的首结点都被保留下来,这样,一条封闭边界上就出现了n/2-1个冗点(n为边界总结点数),必须将其删除。
空间叠加分析:一个街坊被分割为若干宗地,一个宗地又可能包含若干房屋,因此,宗地不可能置于街坊之外,房屋也不可能置于宗地之外,而且,一般情况下,三者之间也不会出现空间上的交错。利用MapInfo的空间分析能力,可以轻松完成检索(实际工作中,越界建筑是存在的,但数量较少,通过空间分析也可以将这些情况检索出来)。
添加字段:导入MapInfo的文件只有ID、面积和长度三个字段,必须依据建库需要添加字段,字段的名称、类型、长度和顺序以规范为准。
各字段赋值 地籍号根据外业图纸手工输入,宗地面积、房屋面积及建筑比率等利用MapInfo的字段更新功能添加,其他字段的内容根据外业勘丈表输入。
(四)向MapGis传回数据
借助*.mif格式将MapInfo整理的文件传回MapGis,完成数据准备。
二、几个关键环节的说明
(一)投影和坐标系定义
MapGis内置了二十多种投影和坐标定义,基本涵盖了常用的投影类型,完全可以满足使用需要,在此不作赘述。而MapInfo中并没有预置我国常用的坐标系,必须人工添加,下面简要介绍一下MapInfo中添加投影定义的方法并给出1954北京坐标系及1980西安坐标系3度和6度带的投影定义语句。
MapInfo的投影是由其安装目录下名为mapinfow.prj的文件定义的,这是一个可以用记录本打开的文件,它的格式如下:
"--- Longitude / Latitude ---", 0, 0, 0, 0., 0., 0., 0., 0., 0., 0., 0.
"Longitude / Latitude", 1, 0
"Longitude / Latitude (Adindan)\p4201", 1, 1
"Longitude / Latitude (Afgooye)\p4205", 1, 2
"Longitude / Latitude (AGD 66)\p4202", 1, 12
……
文件中以空行分隔为不同的定义块,每一块的第一行定义投影方式的一级菜单,第二行以后定义二级菜单。每行引号内的内容是坐标系名称,它们将分别出现在MapInfo软件投影对话框的两个下拉列表中;紧接的数值指定所使用的投影方式,如“3”代表投影方式是亚尔勃斯投影(即正轴等面积割圆锥投影),“8”代表投影方式为高斯-克吕格投影(即等角横轴切椭圆柱投影);投影方式后面是基准面代码(当需要自定义基准面时,此代码必须为“0”或“9999”);其余部分是有关该特定坐标系的参数值。从Mapinfo中国的网站上可找到北京54、西安80坐标系的基准面参数,各参数及其意义如下:
基准面参数之后指定坐标单位代码等参数。对高斯-克吕格投影而言,要指定的参数还包括:投影带中央经线、原点纬度、坐标系数、东纬偏移、北纬偏移。东纬偏移是指中央经线在横轴方向的偏移值,为保证各投影带横坐标值不出现负数,规定每个投影带的坐标原点西移500千米,即中央经线的东纬偏移值为500,000(米),一般地,此偏移值前还要另加带号,但在本文针对的情况下,以不加带号为佳,原因请读者自己体会。
据此,以下给出我国1954北京坐标系6度带及1980西安坐标系3度带的投影参数定义语句,用记录本将其保存至Mapinfow.prj文件中即可(其他坐标系的定义语句可仿照写出):
"--- Gauss-Kruger (Xian1980 3-degree) ---"
"Zone 25", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 75, 0, 1, 500000, 0
"Zone 26", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 78, 0, 1, 500000, 0
"Zone 27", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 81, 0, 1, 500000, 0
"Zone 28", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 84, 0, 1, 500000, 0
"Zone 29", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 87, 0, 1, 500000, 0
"Zone 30", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 90, 0, 1, 500000, 0
"Zone 31", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 93, 0, 1, 500000, 0
"Zone 32", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 96, 0, 1, 500000, 0
"Zone 33", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 99, 0, 1, 500000, 0
"Zone 34", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 102, 0, 1, 500000, 0
"Zone 35", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 105, 0, 1, 500000, 0
"Zone 36", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 108, 0, 1, 500000, 0
"Zone 37", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 111, 0, 1, 500000, 0
"Zone 38", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 114, 0, 1, 500000, 0
"Zone 39", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 117, 0, 1, 500000, 0
"Zone 40", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 120, 0, 1, 500000, 0
"Zone 41", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 123, 0, 1, 500000, 0
"Zone 42", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 126, 0, 1, 500000, 0
"Zone 43", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 129, 0, 1, 500000, 0
"Zone 44", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 132, 0, 1, 500000, 0
"Zone 45", 8, 9999, 31, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 135, 0, 1, 500000, 0
"--- Gauss-Kruger (Beijing1954 6-degree) ---"
"Zone 13", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 75, 0, 1, 500000, 0
"Zone 14", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 81, 0, 1, 500000, 0
"Zone 15", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 87, 0, 1, 500000, 0
"Zone 16", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 93, 0, 1, 500000, 0
"Zone 17", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 99, 0, 1, 500000, 0
"Zone 18", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 105, 0, 1, 500000, 0
"Zone 19", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 111, 0, 1, 500000, 0
"Zone 20", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 117, 0, 1, 500000, 0
"Zone 21", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 123, 0, 1, 500000, 0
"Zone 22", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 129, 0, 1, 500000, 0
"Zone 23", 8, 9999, 3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0, 7, 135, 0, 1, 500000, 0
投影方式、参考椭球、基准面、坐标单位等代码的详细定义请参阅《MapInfo参考手册》,限于篇幅不做过多描述。
(二)冗点剔除
由MapGis导出的*.mif文件也是文本文件,它由文件头、坐标系定义、字段定义及“Data”引领的一系列坐标对组成,如:
Data
Region 1
8
456637.741000 4355304.497000
456652.629000 4355301.800000
456652.629000 4355301.800000
456648.578000 4355279.682000
456648.578000 4355279.682000
456633.277000 4355282.714000
456633.277000 4355282.714000
456637.741000 4355304.497000
Pen (1,0,0)
Brush (2,11665277,11665277)
……
观察后不难发现,每一组坐标对数据第一行和最后一行相同,这是因为作为面对象,其边界必须封闭,因而是必要的。除此之外的其他坐标对,均相邻重复出现,重复出现的行即该边界上的冗点。用任何一种编程语言都可以很容易地将之剔除,只是要注意,坐标列表前面的点总数(如上面例子中的“8”)也要用“n/2+1”替换。
(三)勘丈表录入
MapGis、MapInfo、Excel、Access等都可以用于勘丈表的录入。应该说,这一工序不是难点但却最令作业人员头疼,不论选用何种录入软件,这项工作都很乏味,工作效率也难以提高,一般一名作业人员一天的录入量只有100宗左右。为此我们设计了一个录入工具,其界面如上页图。该界面中的项目基本与勘丈表布局相同,作业时只要将勘丈表中的内容填入相应位置即可,作业效率大大提高,一名作业员一天可以录入200个以上的宗地。该程序的最终成果为*.txt文件,可以被MapInfo直接打开,以地籍号为联接列,即可将其更新至表中。
三、问题讨论
我们知道,将地球表面上的点转绘到地图上要经过三次量化的复杂计算过程:第一次是对地球本身的描述,称为参考椭球体的定义;第二次是对这个椭球体进行空间定位,即坐标系的定义;第三次则是投影的选择。换句话说,当参考椭球体、坐标系、投影方式中任何一个发生变化时,都会使地球上同一点具有不同的地图坐标。我国1954北京坐标系采用的是克拉索夫斯基椭球体,坐标原点位于前苏联的普尔科沃,而1980西安坐标系采用的是IUUG1975推荐椭球,坐标原点在西安市泾阳县永乐镇。两者的区别是明显的,而比较Mapinfo中国网站提供的两组坐标系参数发现,九个数值中只有第一个即参考椭球不同(“3”代表克拉索夫斯基椭球体、“31”代表IUUG1975推荐椭球),显然,这两组参数中必然至少有一组是错误的(根据青岛海洋地质研究所戴勤奋同志的分析,这两组参数都是值得怀疑的)。为此,我们选择河北中部某县城数据为样本进行了精度检验。检验表明,同名点坐标在导入前与导入后虽然是有区别的,但两者相差值均在0.005米以下,而且,该差值可能只是MapInfo坐标值取值精度不够造成的,与投影和坐标系参数几乎没有关系。因此,这种作业方式是可行的。
四、结论
本文介绍的工作流程是以*.dxf为原始数据的城镇地籍建库任务,针对性较强,其适用性也有待实际工作的进一步检验和改进,希望能对同行有所启发。
对于一种相同的工作,作业单位经常要面对不同格式的原始数据,如何最大限度地利用原始数据并提高工作效率,是基层测绘技术人员的重要任务,研究实际问题、了解不同软件的特点和数据接口,多动脑勤实践是更出色地做好本职工作的必由之路。
参考文献:
[1]李敏、沈云中、刘春,《基于MapInfo的电子地图坐标系定义与转换》,测绘工程2004年04期.
[2]《MapInfo参考手册》.
作者简介:
王晓东,男,汉族,河北涞水人,工程师,主要从事地理信息系统开发;段建峰,男,汉族,河北高阳人,工程师,主要从事地理信息系统开发。