经过几天的准备,已经基本实现了所要的功能。
先来介绍一下基本的架构。 在1 (http://blog.csdn.net/sdust_dx/article/details/9312019)中已经说了基本的类图结构, 实现的时候也基本按照这样的模式来做的。
Qt+VS2008 来实现的。
UI 部分如下,在主界面上创建浏览、扫描、切割3个子界面,由于功能较多,因此在浏览、扫描时使用了很多Tab页面,争取使用户一目了然。
为了支持SegY的浏览、扫描和读取,定义的数据结构包括:
卷头——3200字节字符型,400字节二进制标准型
道头字段标识枚举
道头——字节型、2字节型、4字节型、标准型
道头字段索引
道 ——字节型道头 + float* 道数据
数据访问错误信息
为了能够方便使用,作者将数据转换的方法抽取出来,定义了静态转换方法
熟悉matlab的童鞋可能对这种a2b( a to b) 的写法比较亲切。有这些做为基础,就可以组织核心几个对象了。
首先定义SegY访问的基类, 扩展出读写类和扫描类,如上图所示,就是核心的方法有兴趣的童鞋可以参考着自己做一下。