首 页   论文发表 期刊大全 论文下载 常见问题 发表流程 免责声明 合作加盟 关于我们 诚信通道 联系我们   设为首页 加入收藏
[摘 要]:本文详细分析了dxf和shape文件结构,并介绍了一种从shape文件到dxf文件转换的简单方法,解决了gis系统软件与autocad制图软件之间的数据共享的问题。并经过作者实践证明,该方法简单有效。[关键词]:dxf文件,shape文件,mapobjecta way of format translati..
教育期刊 | 经济期刊 | 科技期刊 | 文学期刊 | 医学期刊 | 学报期刊 | 建筑期刊 | 社科期刊 | 计算机期刊 | 图书管期刊 | 农业期刊 | CSSCI期刊 | 核心期刊 | 其他期刊
教育论文 | 经济论文 | 医药论文 | 文学论文 | 艺术论文 | 英语论文 | 法学论文 | 哲学论文 | 计算机论文理学论文  | 工学论文 |  管理论文 | 政治论文 | 社会论文
资源搜索: 搜索 高级搜索
2000论文网-诚信快速的论文发表网站! 论文发表投稿信箱:qwqk2000@126.com 论文发表在线咨询QQ: 85597153 论文发表咨询电话:0371-69135500  

TOP

基于ComGIS的从Shape文件到Dxf文件格式转换的方法
2011-12-01 17:00:17 来源: 作者: 【 】 浏览:110次 评论:0
 

[摘  要]:本文详细分析了dxf和shape文件结构,并介绍了一种从shape文件到dxf文件转换的简单方法,解决了gis系统软件与autocad制图软件之间的数据共享的问题。并经过作者实践证明,该方法简单有效。

[关键词]:dxf文件,shape文件,mapobject

a way of format translation

from shape file to dxf file on base of comgis

abstract:this article analyzes the form of dxf file and shape file in detail, and introduces a simple method of translating shape file into dxf file to solve the problem of the data sharing between autocad system and gis system. through the author’s practice, it has been confirmed that the means is efficient.

key words:dxf file   shape file   mapobject

 

随着软件组件式开发技术的逐渐成熟,gis组件(如esri 的mapobject和mapinfo的mapx)在专业型地理信息系统开发中扮演了重要的角色[3],然而gis二次开发组件都具有其天生的局限性,即不同系统之间的数据转换功能非常弱,特别是基本不具备从gis数据到autocad制图系统的数据格式转换功能,影响gis的数据共享。因此为了实现数据的共享,必须进行数据格式的转换,目前,通用的数据格式转换方式有以下几种:

一、数据格式转换方法

1、常规的gis数据格式转化方法

就是采用某种编程语言首先读取源数据文件,提取源文件中的图形信息和属性信息,然后再写入目标文件中去。这种方法需要同时非常熟悉两种数据文件的格式,因此给数据转换带来了不小的难度。

2、利用数据格式转换工具

这种方法简单方便,但是通用数据格式转换器难以避免的会丢失一些图形信息,转换出来的图形一般还需要一些特别的处理,如图形颜色设置,符号设置,区域填充设置。

3、利用第三方数据文件访问工具进行数据格式转换

这种方法灵活简单,也具有很强的灵活性,开发难度小,代价就是需要第三方的数据访问组件。随着gis组件式开发技术的逐渐成熟,各种gis组件都具有访问其本身的gis数据的功能,如mapobject可以访问esri shape files、arcinfo coverage 和vpf等矢量数据格式。利用gis组件的这种特点可以灵活的自己编写与其他数据格式转换的程序,或者在gis系统的二次开发中集成数据格式转换的功能,实现 gis数据共享。本文研究的内容就是利用gis组件(mapobject)进行由shape到dxf的格式转换。

二、基于comgis的从shape文件到dxf文件格式转换的方法

1、 shape文件结构

esri的shape文件是二进制文件,能够同时存储空间图形数据和属性数据。一个shape文件包括三个文件:一个主文件(*.shp),一个索引文件(*.shx),和一个dbase(*.dbf)表。主文件是一个直接存取变量记录长度文件,其中每个记录描述一个有它自己的vertices列表的shape。在索引文件中,每个记录包含对应主文件记录离主文件头开始的偏移,dbase表包含了实体的属性数据。图形数据和属性数据通过索引号建立一一对应的关系。

shape文件是按照地物类型来组织的。地物类型可以分为简单的分为点(point)、线(line)、面(polygon)三种类型,一个shape文件中只能包括一种类型的地物,即只能包括点、线或者面状地物中的一种。点状地物存储的是一组坐标(x,y),线包括简单线和多段线,存储的是一系列的坐标串(x1,y1,x2,y2…),面状地物存储的是一系列封闭的坐标串(x1,y1,x2,y2, …, x1,y1)。

2、dxf文件结构   

dxf文件有两种格式:asc码文本格式和二进制格式。前者可以用记事本打开,简单易读,后者存储效率高[2]。dxf文件最小组成单位是组(group),一个dxf文件由多个组组成。每个组在dxf文件中占两行。第一行是组码(group code),它是一个整数;第二行是组值(group value),它的数据类型取决于组码的数值。例如x坐标的组码为10,y坐标的组码为20,z坐标的组码为30。一个dxf文件分为多个节(section),每个节均由多个组(group)组成。每个节均由一个组值为字符串“section”的0组开始,后跟组值为表示段名的字符串的2组,其后为组成该节的各个组,最后以组值为字符串“endsec”的0组表示该节结束。所有节都结束后,在dxf文件的最后是组值为字符串eof(end of file)的0组作为文件的结束标志。一个完整的dxf文件由以下七个节(section)组成:

a.        标题(header)节:包括与图形相关联的变量的设置,例如图形节最大、最小x坐标和最大、最小y坐标($limmin,$limmax),点显示模式($pdmode),点尺寸($pdsize)等。其中的每一个变量都通过组码 9 给出变量名,并由其后的组码提供变量值。

b.        类(classes)节:类节保存由应用程序定义的类,而该类的实例则出现在块节(blocks)、实体节(entities)和对象节(objects)中。

c.        表(table)节:包含命名项的定义,存放一系列表。包括线型(ltype)表、层(layer)表、文本字样(style)表、视(view)表、用户坐标系统(usc)表、视窗配制(vport)表、尺寸标注式样(dimstyle)表、应用标识(appid)表。

d.       块(block)节:存放块定义的实体。对图形中每个块引用,在块节中都必需有一个条目与之对应。

e.        实体(entities)节:存放图形实体,其中包括块插入实体。dxf图形文件中的所有图元(包括点、线、面、插入块,注记文字等实体)都将在entities节定义。

f.        实体(objects)节:存储非图形对象。

g.       预览图像(thumbnailimage)节:只有当预览图像被保存在dxf文件中时该节才存在。

编写一个构造完备的dxf文件的程序是比较困难且烦琐的,因为必须保持图形的一致性,以使autocad能够接受它,同时还必须保持信息的完整性。值得庆幸是一个dxf文件可以只包含以上七个节中的若干个节,而不是全部节。以上七个节中,最重要的是实体(entities)节,实体节存储了dxf文件所有的图形对象。一个最简单的dxf文件可以只包含实体(entities)节,而不需要包含其他任何节。这样就大大降低了dxf文件编写的难度。

3、 shape文件到dxf文件转化的实现

由于shape文件是二进制文件,且文件格式复杂,直接使用编程语言读取shape文件具有一定的困难,由此作者使用第三方开发组件mapobject提供的对shape文件的数据访问接口来读取shape文件内容,大大降低了shape文件到dxf文件格式转化的编程工作量。

mapobject是目前最优秀的gis二次开发组件之一,他提供了一系列的gis制图功能和访问esri shape files的数据访问接口[1]。利用mapobject对shape文件的数据访问功能来提取shape的图形信息,具有不丢失图形信息、数据访问简单等优点。下面是shape文件类型与dxf图元类型对照表:

地物类型

shape文件地物类型

dxf图元类型

moshapetypepoint

point,block

线

moshapetypeline

line

moshapetypepolygon

polygon

文字

注记(不属于shape文件类型)

text

  图1.  shape文件地物类型与dxf文件图元类型对照表

作者以某市地下管线shape文件为例,实现了将管线shape文件转化为auto cad系统dxf文件,并将数据转化功能集成到某市地下管线管理信息系统中,很好的解决了地下管线管理系统与auto cad制图系统之间的数据格式共享问题。转化过程中没有丢失图形信息。下面以地下管点shape文件为例,简单介绍如何将点图元写入dxf文件。

共2页: 1 [2]下一页

Tags: 责任编辑:论文发表
中国论文网-论文发表发表论文(www.lw2000.com),是一个专门从事期刊推广论文发表论文创作指导的机构。本站提供整体论文发表解决方案:省级论文/国家级论文/核心论文/CN论文多种期刊供你选择。
发表论文投稿信箱:qwqk2000@126.com
发表论文在线咨询:85597153
发表论文咨询电话:17351597825

】【打印繁体】 【收藏】 【关闭】 【返回顶部
上一篇企业网Intranet的构建方案 下一篇PC控制系统设计的要点

联系我们 论文发表 论文投稿

论文发表在线咨询:站点合作85597153
论文发表咨询电话:17351597825
论文发表投稿信箱:qwqk2000@126.com

相关栏目

最新文章

图片主题

热门文章

推荐文章

相关文章

期刊导航 | 论文下载 | 常见问题 | 发表流程 | 免责声明 | 合作加盟 | 关于我们 | 诚信通道 | 联系我们  
论文发表在线咨询:85597153 咨询电话:17351597825投稿信箱:qwqk2000@126.com
Copyright © 2008-2012http://www.lw2000.com all rights reserved 苏ICP备11037565号
论文发表、发表论文 论文发表、发表论文
电话17351597825 河南省郑州市丰产路412号
2000论文网 版权所有.