MapGis点文件多属性数据快速成图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第42卷第6期物探化探计算技木Vol.42No.6 2020年11月COMPUTING TECHNIQUES FOR GEOPHYSIC A L AND GEOCHEMIC A L EXPLORATION Nov.2020
文章编号:1001-1749(2020)06-0823-08
MapGis点文件多属性数据快速成图
杨艳林】,靖晶2,刘广宁】,王世昌1
(1.中国地质调查局武汉地质调查中心,武汉430205;
2.中国地质大学(武汉)环境学院,武汉430074)
摘要:针对水工环工作过程中,未利用管理数据库而使属性数据编图工作量大的问题,以及不
同GIS系统的数据向MapGis无缝转换难的特点,基于MapGis点文件的二进制解析,给出了点
文件的数据类型及数据结构,重点对点文件的属性块进行了详细剖析,尤其是属性数据的长度计
算、注释与子图的自动识别、常用数据类型自动识别、浮点数据类型的判定、属性数据的读写等几
个关键环节。
最后利用VC++语言实现了管理数据库中的属性数据生成了目标点文件,实现
了自动成图,大大提高了成图效率;同时也为其他GIS软件向MapGis无缝转换提供了借鉴。
关键词:MapGis;点文件;多属性;文件转换;水工环;VC++
中图分类号:TP319文献标志码:A DOI:10.3969力.issn.1001-1749.2020.06.17
0引言
MapGis软件是水工环地质调查中提交图件及数据库的专用软件,而图元属性是MapGis管理数据的强项,它不再是简单的纸质图形,而是图形与属性的融合,大大提升了图件的信息量与实用价值,如属性数据可为后期的空间分析、地下水水量与水质评价等方面提供数据支撑。
在水工环地质调查过程中,获得了大量野外调查点及点属性的卡片(如水文地质调查中的井点卡片),包括的属性数据有:井位、井结构、井开采、井水位水质等,其数据项多达50项[1],而这些属性数据最后都要包含在管理数据库和编制图件的空间数据库中,才能进行成果提交。
通常在进行野外水工环地质测绘时,每天都会将记录的卡片数据录入到数据库中进行管理。
当野外测绘完成后,在进行成果图件编制时,若采取一边投点,一边录入属性的方法,将会挤占技术人员大量宝贵的时间,而且也没有充分利用管理数据库中数据可导出再利用的特点,故非常有必要在数据库与编图之间架起一座桥梁,尤其是调查点与属性数据的关联。
在这方面,已有不少学者进行了相关研究,秦威2利用VC编程语言对MapGis进行二次开发,完成了属性数据的输入;汪新庆等[]在MapGis二次开发环境下,利用VC编程语言实现了属性数据的逻辑检查,提高了图件检查验收的工作效率,并保证了数据的准确性与可靠性;张厚泉4利用MapGis 软件中“投影变换”子系统内的“用户文件投影变换”命令实现了水井点图元批量编图;史文博[]利用MapGis软件讨论了5种属性连接的方法;张良红等[]利用MapGis提供的MFC类库,完成了航点生成MapGis点文件的方法。
综观目前的方法主要有三种:①利用MapGis的明码文件对野外调查点进行投点,但不能将属性数据一并进行导入;②利用MapGis平台进行二次开发,但不能解决同其他软
收稿日期:2019-08-28
基金项目:中国地质调查局项目(DD20190263)
第一作者:杨艳林(1984—),男,博士,主要从事水工环地质调查研究,E-mail:yangyanlinjida@ 。
824物探化探计算技术42卷
件数据的无缝转换;③利用MapGis软件提供的功能,需熟练地掌握MapGis软件,也无法完成同其他软件之间的数据共享。
目前,GIS软件产品众多,如ArcGis、MapInf。
、AutoCAD,MapGis,GeoStar,SuperMap,CityStar 等,不同软件平台之间的数据转换越来越频繁,特别是与MapGis数据之间的转换;而不同的GIS系统对各种地质现象的理解、描述方式、概念模型、数据结构、实现手段等互不相同,且缺少统一的数据接口,虽然可以通过一些中间文件实现互转,但极易丢失属性数据,造成GIS数据之间共享困难,形成了人力、财力上的浪费,资源得不到有效地利用[7]。
闫琰等[]在研究以直接和间接转换的方法实现Ar-Gs向MapGis软件的数据格式转换时,发现很难进行一次性批量转换,数据易失真,图形渲染易变样,无法实现GIS数据的无损转换;王星捷凹以Map-Gis点文件的数据格式进行分析研究,并编制程序实现了MapGis点文件的读取实验,但对属性数据的处理未进行深入的研究。
鉴于此,为了充分发挥计算机的强大计算性能,从根本上解决:快速输入野外采集的属性数据、快速读取前人调查点的属性数据.MapGis多属性数据快速成图、打破不同GIS平台之间的“信息孤岛”、且不受MapGis平台限制的接口程序等方面的问题,以及有效提高成果资料的信息化和服务能力,其关键是对MapGis点文件的分析,笔者将从MapGis 点文件(无TIC点)及其属性块的数据结构、存储算法和关键环节等方面进行了详细阐述,并且为了叙述的方面,对用到的数据结构、函数或算法,都以Visual C++语言的形式列出。
1MapGis点文件
MapGis点文件是以WT为后缀名的二进制文件,主要包括空间数据与属性数据。
空间数据为字符串、文本、子图、圆、弧段、图片等五种类型,参考MapGis安装目录中的baseDefine.h文件,其数据结构见表1〜表6。
属性数据的数据类型多达17种,常用的主要有字符串(string)、短整型(short)、长整型(long)、浮点型(float)、双精度型(double)、日期型和时间型等,属性的个数不受限制[10]。
表1MapGis点文件中字符串的数据结构
Tab1Datastructureofthestringin MapGispointfile 字段名变量名类型字节数
注释str_text string不定
高度height float4
宽度width float4
间隔space float4
角度angle float4
中文字体ifnt short2
西文字体chnt short2字形ifnx byte1排列方式hvpl byte1
表2MapGis点文件中文本的数据结构
Tab2Datastructureofthetextin MapGispointfile 字段名变量名类型字节数
文本str_word string不定
高度height float4
宽度width float4字符间隔space float4角度angle float4
中文字体ifnt short2
西文字体chnt short2字形ifnx byte1
行间距lspace short4
版面长dx short4
版面宽dy short4
水平/垂直排列hvpl byte1
表3MapGis点文件中子图数据结构Tab3Subgraphdatastructurein MapGispointfile
字段名变量名类型字节数
子图号subno long4
高度height float4
宽度width float4
角度angle float4
线宽penw float4
辅助色fclr long 4
6期杨艳林,等:Ma)Gis点文件多属性数据快速成图825
表4MapGis点文件中圆的数据结构
Tab4Datastructureofthecirclesin MapGispointfile 字段名变量名类型字节数
半径radiu double8
线颜色lcol long4
线宽penw float4是否填充f lag byte1部分组成;数据块4是每个点的范围数据(左下角坐标和右上角坐标)数据块5是点所在的图层和图元类型。
3)存放各数据块的数据,MapGis6.7版本中主要有5个。
表7数据块位置数据结构
Tab7Datastructureofthedatablocklocation
表5MapGis点文件中弧的数据结构Tab5Datastructureofthearcin MapGispointfile 字段名变量名类型字节数
半径radiu double8起始角度begang float4
终止角度endang float4线宽penw float4
表6MapGis中图片的数据结构
Tab6Datastructureofthepictureinthe MapGis
字段名变量名类型字节数
存放路径str_pic string不定宽度width double8
宽度height double8
角度angle float4
利用UltraEdit工具打开点文件,并结合Map-Gis软件对点文件的显示以及前人的研究[],可将点文件存储的数据分为三个数据段:
1)在前面的657个字节,主要用于记录点文件标识(574D415060443232)、地图参数(投影参数、单位及比例尺、图幅范围等)和点个数。
2)紧接着的160字节是用于记录16个数据块的位置、长度,其中位置和长度都由4字节进行存储,后2字节是结束标记,值为一1,其数据结构如表7所示。
在MapGis6.7版本中,16个数据块中目前主要使用的有5个:数据块1主要是字符串、文本、弧、圆、图片等绘制参数,每个点由93个字节组成,其数据结构见表8、表9、表10;数据块2存放的是字符串ch_struct结构中的str_text数据值,或文本text_struct结构中的str_word数据值等,其长度由表8结构中的len变量记录;数据块3是属性数据,属性数据由属性头(348个字节)、字段头(39个字节)、字段内容(为变长度,字段头中进行了定义)三
字段名变量名类型字节数
数据块位置position int[16]4
数据块长度len int[16]4
结束标记endf short[16]2
表8MapGis点文件中点数据结构Tab8Pointdatastructurein MapGispointfile
字段名变量名类型字节数开始标记mark byte1
字符串长len short2
偏移量o f set int4坐标xy D_DOT16保留字段unUse char[8]8
点类型kind byte1
透明输出transparency byte1图层layer short2颜色color int4
点数据wtData PNT_INFO_UNION不定
表9PNT_INFO_UNION数据结构Tab9DatastructureofthePNT_INFO_UNION
字段名变量名类型
字符串ch ch_struct*
文本text text_struct
字图sub sub_struct
圆circle circle_struct
弧arc arc_struct
图片image image_struct*
表10D_DOT数据结构
Tab.10Data structure of the D_DOT
字段名变量名类型字节数狓坐标狓double8
狔坐标狔double 8
826物探化探计算技术42卷
2MapGis点文件属性块数据结构
MapGis点文件的属性数据是各类地物特征信息的具体记录,主要用于描述实体要素的类别、特征和性质。
由于各领域的专业属性差异甚大,不能用一个已知属性集描述或概括所有应用的专业属性。
在水文地质调查中,记录了大量井、泉等水文地质点的属性数据,为了快速无缝地将这些属性数据加入到成果图件的空间数据库中,需准确掌握MapGis 点文件属性数据的存储与读取算法,而属性数据结构是关键。
基于MapGis点文件的二进制分析,属性数据由属性头、字段头和属性数据三部分构成,属性头的数据结构(表11)占348个字节,记录的信息有:属性长度(值为426+字段数X39)点个数、字段个数、记录长度等。
为了便于理解和处理,将字段头与属性数据进行组合,其数据结构如表12所示,包括了字段名,字段类型,字段字节长度,字段字符的长度、小数位数、编辑状态,及字段值等。
其中字段类型有字符串型、浮点型、长整型、短整形等10余种,字段的属性值则存放在fieldVal中。
表11属性头数据结构
Tab11A t ributeheaderdatastructure 字段名变量名类型字节数
标识符1mark1short2
保留1unUse1char[10]10
长度len int4
点个数num int4
系统库路径path char[300]300
标识符2mark2short2
字段数numfield short2
显示记录数num1int4
记录长度recordleng long4
保留2unUse2char[16]16
表12字段信息数据结构
Tab12Fieldinformationdatastructure 字段名变量名类型字节数
字段名称fieldname char[20]20
字段类型fieldtype byte1
字段偏移fieldo f set long4
字节长度fieldlength short2
字符长度msk_leng short2
小数位数point_leng byte1
编辑标志edit_enable short2
打印标志pt_flg byte1
字段序号ptc_pos short2
暂保留unUse char[4]4
字段值fieldVal char**变长
3MapGis的点文件属性块的读写算法
为了对多属性数据进行读/写操作,将属性头数据结构(记为INFO_HEAD)与字段信息数据结构(记为FIELD.HEAD)进行组合,形成了属性块数据结构(表13)。
按照数据结构中各数据类型进行读写,在进行读写之前,需对字段分配内存空间,如fldEntry= newFIELD_HEAD[hd.numbfield];然后对属性头数据结构中的字段数据,可按fread/fwnte (&numbfield,sizeof(numfield),1,pFile)(pFile 为文件指针)进行读写操作;字段数据结构中字段名,可按fread/fwrite(fieldname,20,1,pFile)进行读写操作(字段名的长度不能超过20);以及字段值可按fread/fwrite(fieldVal[iField],fieldlength, 1,pFile)(iField为第几个字段)进行读写操作。
表13属性块的数据结构
Tab13Datastructureofthea t ributeblocks
字段名变量名类型
属性头hd INFO_HEAD
字段fldEntry FIELD_HEAD *
6期
杨艳林,等:MapGis 点文件多属性数据快速成图
827
图1 野外泉点部分属性数据
Fig. 1 Paritial attribute data of the field springs
琏标
¥痂
弋
Q 泉水趣含水层时代泉?®
(m3/d)
11022.”5759...16872QXQ002
J2D 121021-5755...16874QXQ004下降泉e1-2n 10.8
1025-5762...16876QXQ008下澤泉T3H 2.3
41024...5763...16878QXQ009下降泉
K2hg 121051019..5759...168710QXQO55下降泉J2SH 11.0596
1020...5760...168712QXQ056下降泉K2hg 1.2101017-5761...168714QXQ057下降泉K2hg 28.08081016-5762...168716QXQ059稍泉
K2hg 0.1439
1015-5755 (1687)
18
QXQ061
下降泉
€l-2n
33.178
图2 MapGis 中属性结构设置
Fig. 2 Attribute structure settings in the MapGis
字段数据类型 内存中存储
属性结构参数设置MapGis 中显示
<
单精度(float)
27 31 76 41 若字段长12 ,小数位数■ 8
15.38700000
双精度(double) A01A2FDD 24 C6 2E40 若字段长 20 ,小数位数-10 15.3870000000
4关键过程的处理
将野外调查卡片数据录入管理数据库中后,各 种属性数据可直接导出为Excel 或TXT 文件格式。
编制图件时,参考建库指南⑴,筛选目标属性数据, 通过类似于图1所示的交互性对话框,将目标属性
数据复制到对话框上,后将其写出为所需的目标点
文件。
4.1属性数据块的长度计算
为了准确写出点文件,计算属性数据块的长度 十分重要,按照前面的分析,其长度可分为3个部 分,属性头、字段头和属性数据,其中属性头长为 348字节,字段头的长为39X 字段个数(即hd. numbfield ),而属性数据的长度为:数据个数# (标 识符+每个点数据中属性的长度)(其中标识的长
度通常为一个字节)其中每个点数据的属性长度可 按式1 进行计算。
len=0 for (int i= 0; i <hd . numbfield ; i + + ){len + = fldEntry [i]. fieldlength ;}
(1)
4.2子图号与注释自动识别
在MapGis 中子图号通常是用数字来进行标 识,而注释通常是文字,故可依据这一点进行子图号 与注释的判定。
4.3字符串长度
在将点数据写成MapGis 点文件时,若某个字
段为注释,则注释的长度是变长的,图1中的地层时 代,若在程序直接分配一个大大的内存来进行存储,
当然是可以,但这样浪费了太多的内存空间,故需要 自动识别字符串的长度。
通过遍历操作地层时代, 计算出该字段下的最大字符串长度,可按函数 strlenO ,或 CString 的 GetLength ()函数。
为了处
理中文的需要,常会用Unicode 字符集,这时在计算 字符串长度时,需利用WideCharToMultiByte 函数
图3 浮点数内存存储及MapGis 中显示对比
Fig 3 Floating —pointmemorystorageand
comparisoninthe MapGis
将宽字节转变为多字节来计算字符串长度。
4. 4易被误解的地方
在使用MapGis 软件编辑点文件属性结构时, 常会弹出图2所示的对话框,经常会误认为字段长 度就是浮点数的内存长度,其实这是一种误解。
目
前,在计算机内部,浮点数主要分为单精度(float 、和 双精度(double ),其计算内存大小分别是4位和8
位,有效小数位数分别是7和16。
而属性结构中的 字段长度是指将浮点数转为字符串时字符串的显示 长度, 小数位数就是字符串中显示小数的个数(图3)
4.5小数位数及字段长度自动识别
由前面分析知,当某字段的数据类型为浮点型
时,如图1中的泉流量,若直接赋为双精度类型,不
会有问题,但从节约内存的角度来看,这样就有点欠 妥,故需判定该字段是单精度还是双精度,并计算出
浮点数的长度和小数位数等数据。
这时需要遍历该
字段的所有数据,按字符串形式将数据读入,计算字
符串的长度,找到小数点并计算小数点位数,通过遍 历找到最长字符串(记为nMaxLen,则msk_leng 等
于nMaxLen )和最长小数点位数长度(记为nDigit, 则point_leng 等于nDigit )。
由于单精度浮点数的 有效位数为7位,若nDigit 小于7,则可赋为单精度
浮点型(即fieldtype 等于4, fieldlength 等于4),否 则为双精度浮点型(即fieldtype 等于5 , fieldlength
等于8)。
当然还需判定该数是否超过了单精度浮 点数的范围(一3. 4E38〜3. 4E38);在水工环调查 中,数据通常都在单精度浮点数范围内。
4. 6长、短整型自动识别
短整型与长整型的主要区别是取值范围和字节
大小不同。
短整形所能表示的整数域为一32 768
〜
828物探化探计算技术42卷
第i点的属性值fieldVal[i]-►按字段类型(fieldtype〉一►数据一►按数据的数据类型进行写出fieldVal[i][0]="5"
fieldVal[i][l]=".“
fieldVal[i][2]="3"
f5.3f9A99A940
图4属性值写出过程及实例
Fig4A t ributevaluewritingprocessandexample 32767,占2字节内存;而长整型表示的整数域为一2147483648〜2147483647,占4字节内存。
若某字段数据无小数点,则为整型数,后通过遍历判断字段内的数据是否在一32768〜32767范围内,若在范围内,则为短整型(即fieldtype等于2,fieldlength等于2),否则为长整型(即fieldtype等于3, fieldlength等于4)。
4.7属性值快速读/写
确定了字段长度(fieldlength)后,就可以为属性值(fieldVal/分配内存,其大小为hd.num1X fieldlength。
在进行属性值写出时,不能直接将属性值(fieldVal存储的)直接写出,需将属性值转换为该字段的数据类型,并按字段数据类型进行存储(图4)。
若在进行属性值读入时,则是图4的逆过程。
4.8时间、日期数据结构
通过多次MapGis软件对时间、日期数据的读入与写出,确定了时间和日期的数据结构类型分别为TIME_STR和DATE_STRU,所占内存大小分别为10字节和4字节(表14、表15)。
表14自定义时间数据结构
Tab14Datastructureofcustomtime 字段名变量名类型字节数时hour Char1
分min Char1
秒sec double8
表15自定义日期数据结构
Tab15Datastructureofcustom date 字段名变量名类型字节数年year short2
月mon char1
日day char1
5算法编制及实例应用
根据MapGis点文件二进制分析,尤其在点文件属性数据方面,采用面向对象可视化语言Visual C++,编制了MapGis点文件读取与写入程序,其读取过程见函数ReadMapGisWTData;并为其研发了人机交互界面(图2)。
当进行点文件生成时,通过设置点数和属性数,将点数据输入到网格中,也可以直接将Excel表格中的数据复制到表格,点击“导出”即可完成。
当进行点文件属性编辑时,点击“导入”即可读入已有的点文件,并将点数据显示在网格中,编辑修改后点击“导出”生成点文件。
并且也提供了点文件投影参数的设置。
最后,将生成的点文件加载到MapGis软件中,即可完成多属性点数据的快速成图。
通过对比分析基于交互式界面输入的点数据与MapGis中的点属性数据,结果一致,表明前面对点文件分析和程序编写的正确性(图5)。
在2018年江西省清溪村幅1:50000水文地质调查中,借助本程序,完成了井、泉、水文孔等水文地质点的属性数据从管理数据库到空间数据库的快速成图,大大提高了成图效率。
boolReadMapGisWTData(FILE*pFile)
ReadFileHead(pFile);//文件头—657个字节进行读入
ReadDataHead(pFile);//数据头一160个字节进行读入
SetSize(nLin_show);//分配数据内存空间
fseek(pFile,position[0],SEEK_SET);//子图数据
char*old_locale=_strdup(setlocale(LC_ CTYPE,NULL)/;
setlocale(LC_CTYPE,"chs");//读出中文
longpos=fte l(pFile);
for(inti=0;i<nLin_show;i++)
wtData[i]ReadData(pFile,position [1];//读取点数据
pos+=93;fseek(pFile,pos,SEEK_ SET);//文件指针
}
setlocale(LC_CTYPE,old_locale);free( old_locale);//还原区域设定
fseek(pFile,position[2],SEEK_SET)
;
6期杨艳林,等:MapGis点文件多属性数据快速成图829
wtAttData.ReadField(pFile,n.Lin_ show);//读取属性数据段
fseek(pFile,position[3],SEEK_SET);
for(inti=0;i<n.Lin_show;i++/{rect ReadData(pFile);}//点坐标数据段
fseek(pFile,position[4],SEEK_SET);//点图元数据段
for(inti=0;i<nLin_show;i++)
{
fread(&layer[i],2,1,pFile);fread (&kind[i],2,1,pFile);
}
return1;
图5点数据写入MapGis点文件中Fig.5Data written to the MapGis point file
6结论与建议
1)通过对MapGis点文件的剖析,将点文件存储的数据分为三个数据段,并给出点文件中空间数据的数据结构。
2)基于点文件属性数据的分析,属性数据由属性头、字段头和属性数据三部分构成,给出了对应的数据结构,并对属性数据中各字段的读写进行了介绍=
3)针对属性数据易误解、准确写出易出错、节省内存空间等关键部分,如属性数据的长度计算、注释与子图的自动识别、常用数据类型自动识别、浮点数据类型的判定、属性数据的读入与写出、以及时间与日期数据结构等方面进行了详述,确保属性数据的准确写出。
4)利用VC++语言,研发了界面友好,使用方便、快捷、操作性强的可视化界面,明显降低了劳动强度,有效地提高了工作效率,更重要的是确保了属性数据的准确性和可靠性。
为了实现其它GIS系统的点、线、区等属性数据向MapGis的无缝转换,笔者还未对MapGis点文件中包含TIC点,以及线、区文件进行研究,这将是后面继续研究的方向。
参考文献:
[1]中国地质调查局.重要经济区和城市群地质环境调查
评价数据库建设指南(Ver4.0)[S].2014,11.
China Geological Survey.Guidelines for the construction of geological Environment surfey and evaluation database for important economic zones and urban agglomerations(Ver4.0)[S].2014,11.(In Chinese) []秦威.浅谈VC如何实现Mapgis属性输入[J].江西煤炭科技,011,3)114—116.
QIN W.Discussion onVC how to realize MapGis a--
tribute inpul[J].Jiangxi Coal Science&Technology,
2011,(3):114—116.(InChinese)
[]汪新庆,冯磊.基于数据字典的MapGIS属性数据逻辑检查一一以全国矿产资源潜力评价基础成果数据检查
为例[J].地质学刊,013,3) =478—481.
WANG X Q,FENG L.On MapGis attribute data log
ic check based on data dictionary:a case study of fun-
damentalresultsofpotentialevaluationonnationalmin-eral resources]J].Journal of Geology,2013,(3):478
—481(InChinese)
[4]张厚泉.MAPGIS在水井普查成果编图中的应用[].
地下水,015,7(5)128—130.
ZHANG H Q.MAPGIS in mapping the results of we ll
830物探化探计算技术42卷
survey[J]Ground Water,2015,37(5):128—130
(InChinese)
[]史文博.浅谈MAPGIS属性连接的几种方法黑龙江科技信息,2016(2)2—3.
SHI W B.Talking about several methods of attribute connectionof MapGis[J]Scientificandtechnological innovationinformation,2016(2):2—3(InChinese) []张良红,杨豪,黄雯,等.二次开发在航点航迹图批量绘制中的应用物探化探计算技术,2018,40(4)551
—558
ZHANG L H,YANG H,HUNG W,et al.The appli-cationofsecondarydevelopmentin waypointstracking mapbatchdrawing[J]ComputingTechniquesforGe-ophysicaland GeochemicalExploration,2018,40(4):
551—558(InChinese)
[]杨艳林,邵长生.关于MapGIS数据文件转换中色库处理技术探讨测绘与空间地理信息,2017,40(03):
22—24+32.
YANG Y L,SHAO C S.Discuss the processing tech-nologyofthecolorlibraryinthe MapGis'sdatacon-
version[J].Geomatics&Spatial Information Technol-ogy,2017,40(03):22—24+32(InChinese)
[]闫琰,李燕,董秀兰,等.ArcGIS向MapGIS的数据格式转换测绘与空间地理信息,2011,34(06)164—
167+171
YAN Y,LIY,DONGXL,etal Dataformattrans-formation from ArcGIS to MapGis[J].Geomatics& SpatialInformationTechnology,2011,34(06):164—
167+171(InChinese)
[]王星捷.MapGIS点文件数据分析与读取实验测绘科学,2013(1)112—115.
WANG X J.Data analysi and reading text on MapGis pointfile[J]ScienceofSurveyingand Mapping,2013
(1):112—115(InChinese)
[10]吴信才.Map GIS地理信息系统[M]北京:北京电子
工业出版社,2002.
WU X C.MapGis geographic information system[M].
Beijing:Beijing Electronic Industry Press,2002(In Chinese)
Rapid mapping of the multi—attributes point files in MapGis
YANG Yanlin1,JING Jing2,LIU Guangning1,WANG Shichang1
(1WuhanCenter,ChinaGeologicalSurvey,Wuhan430205,China;
2SchoolofEnvironmentalStudies,China University of Geosciences,Wuhan430074,China)
Abstract:In view of the problem of large workload of attribute data mapping and the difficulty of seamless transformation of data from different GIS systems to MapGis,this paper presented the data type and data structure of the MapGis's point files, especia l ythea t ributesofthepointfilesbasedonthebinaryanalysis Multipledatablocksofthepointfileswereanalyzedin details,suchasthelengthcalculationofa t ributedata,automaticrecognitionofannotationsandsubgraphs,automaticidentifi-cationofcommonlyuseddatatypes,determinationoffloating—pointdatatypes,andreading/writingofa t ributedataaswe l Finally,the target point file was generated from the management databases attribute data by using VC++language.This re-alizesautomatic mapping and greatly improved the e f iciency of mapping It also provided theoretical support for seamless transformation from other GIS software to MapGis
Keywords:MapGis;point files;multi—attribue;file conversion;hydraulic environment;VC++。