当前位置:甜馍馍地理信息网 >> 地理信息系统GIS >> 组件式GIS >> 正文 >>  [阅读资讯:用VC读取DXF格式文件的原理及代码实例]

用VC读取DXF格式文件的原理及代码实例

[ 来源:互联网 | 时间:2007年11月09日 | 收藏本文 ] 【

在本文中,我们使用 Visual C++ 6.0 来写一个读取DXF文件的小程序。在实际应用中,模型中实体的数目以及实体中点和面的数目都是不定的,为了有效地利用内存,我们选择MFC类库中的聚合类CobArray类所创建的对象vertex, sequence来存储和管理实体的点坐标和点序。

在DXF文件中,我们最关心的是如何得到模型上各个点的坐标,并且用这些点连成许多个三用形,构成面,进而绘制出整个模型。在DXF文件的结构中,我们已经看到,DXF文件先叙述实体上各个点的坐标,然后叙述实体上有多少个面,每个面由哪些点构成。

这样,我们至少需要2个数组来存储一个实体的信息,一个用于存储点的坐标,一个用于存储点序,我们可以把这2个数组放到一个结构中,如果模型中实体的数目不止一个是,我们就用这个结构来定义一个数组。

OpenGL是美国SGI公司最新推出的一套开放式的三维图形软件接口,适用于广泛的计算机环境,从个人计算机到工作站,OpenGL都能实现高性能的三维图形功能。

OpenGL本身不仅提供对简单图元的操作和控制,还提供了许多函数用于复杂物体的建模。但是,我们通常喜欢使用AutoCAD和3DS及3Dmax等工具来建立模型,并且我们已经有了很多这样的模型,那么我们如何才能资源共享,避免重复劳动呢?利用CAD图形标准数据交换格式—DXF格式,我们就能很容易地实现资源共享,而不需要重复建模。

DXF文件的结构很清楚,具体如下:
1. 标题段(HEADER )
有关图形的一般信息都可以DXF 文件的这一节找到,每一个参数具有一个变量名和一个
相关值。
2. 表段
这一段包含的指定项的定义,它包括:
a、
线形表(LTYPE)
b、
层表(LYER)
c、
字体表(STYLE)
d、
视图表(VIEW)
e、
用户坐标系统表(UCS)
f、
视窗配置表(VPORT)
g、
标注字体表(DIMSTYLE)
h、
申请符号表(APPID)

下一页
本文共 6 页,第  [1]  [2]  [3]  [4]  [5]  [6]  页

【推荐本文】 【打印本页】 【返回顶部
最新文章
推荐文章