基于Kriging的三维地质体建模方法研究*Kriging...

3
Computer Era No. 1 2010 0 引言 地质信息传统上以二维方式表达,主要利用平面图与剖 面图,采用透视投影原理将地质环境中的对象进行透视制图, 或投影到两个以上平面上进行组合表达,以增强视觉效果。 随着“数字矿山”的出现,开始了对具有复杂地质现象的三维地 质体的研究。矿体真三维模型除了具备二维地质信息以外, 其三维数据模型还可用以进行空间分析,如复杂矿体、断层、 褶皱等不连续体的真三维建模、地质体任意剖面生成、三维可 视化等 [1] 矿体三维模型建立的基本思路是:获取地质勘探和生产 勘探的原始采样资料,整理转换为空间离散点数据,利用一定 的空间插值方法生成规则的结构化数据,从而形成三维空间 体数据 [2] 在目前的空间数据插值方法中,Kriging插值方法是最为常 用也是精确度最高的一种方法,大部分的三维矿体都采用这种 方法作为空间数据插值手段 [2] 。本文利用Kriging插值方法对 有限区域内的矿体进行插值,得到连续的矿体数据,从而实现 对矿体的三维建模。 1 Kriging 插值建模方法 1.1 Kriging 方法原理 Kriging法是在考虑了信息样品的形状、大小及其与待估块 段相互间的空间分布位置等几何特征及品位的空间结构之后, 为了达到线性、无偏和最小方差的估计,而对每一样品值分别 赋予一定的权系数,最后进行加权平均来估计块段品位的方 法。其插值示意图如图 1 所示。 图1 Kriging 插值示意图 1.2 空间数据插值方法比较 目前,空间插值方法有多种,其中常用的主要有:泰森多边 形法、距离反比法、Kriging 法 [2] 。表 1 给出了这三种插值方法的 比较。 基于 Kriging 的三维地质体建模方法研究* 朱燕玲 1 ,过仲阳 1 ,张 2 ,夏 1 ,栗小东 1 (1. 华东师范大学地理信息科学教育部重点实验室,上海 200062;2. 中国科学院地理科学与资源研究所) 要:对几种三维空间数据模型进行了比较,总结了克里格( Kriging )插值方法在三维地质体建模方面的种种优点。在 此基础上,借助于GSTL 开源地质统计学库和wxWidgets 界面库,在Dev-cpp 开发环境下开发了一个三维矿体数据的克里格 插值系统,为矿体的三维可视化提供了数据支持。该系统实现了Kriging 插值、变异函数拟合模型拟合程度的验证—交叉验 证以及特定格式的结果输出等功能。 关键词:三维地质体建模;克里格插值法;三维空间数据模型;GSTLDev-cpp Research of 3D Geological Body Modeling Methods Based on Kriging ZHU Yan-ling 1 GUO Zhong-yang 1 ZHANG Shuo 2 XIA Yan 1 LI Xiao-dong 1 1. Key Laboratory of Geographic Information Science of MOE, East China Normal University, Shanghai 200062, China2. Institute of Geographic Sciences and Natural Resources Research, CAS AbstractComparing several 3D spatial data models, various advantages of Kriging interpolation algorithm in 3D geological body modeling are summed up. On this basis, by means of open source geostatistics template library GSTL and interface library wxWidgets, a Kriging interpolation system of 3D orebody data is developed in Dev-cpp environment, which provides data support for orebody 3D visualization. This system has realized the functions such as Kriging interpolation, the fitting degree validation of variogram fitting modelcross validation, and the results output in specific format. Key words3D geological body modelingKriging interpolation algorithm3D spatial data modelGSTLDev-cpp * 基金项目:海洋公益性行业重点项目(200805080);华东师范大学研究生重点课程建设项目(2007kc04) · · 26

Transcript of 基于Kriging的三维地质体建模方法研究*Kriging...

Page 1: 基于Kriging的三维地质体建模方法研究*Kriging 法是在考虑了信息样品的形状、大小及其与待估块 段相互间的空间分布位置等几何特征及品位的空间结构之后,为了达到线性、无偏和最小方差的估计,而

Computer Era No 1 2010

0 引言

地质信息传统上以二维方式表达主要利用平面图与剖

面图采用透视投影原理将地质环境中的对象进行透视制图

或投影到两个以上平面上进行组合表达以增强视觉效果

随着ldquo数字矿山rdquo的出现开始了对具有复杂地质现象的三维地

质体的研究矿体真三维模型除了具备二维地质信息以外

其三维数据模型还可用以进行空间分析如复杂矿体断层

褶皱等不连续体的真三维建模地质体任意剖面生成三维可

视化等[1]

矿体三维模型建立的基本思路是获取地质勘探和生产

勘探的原始采样资料整理转换为空间离散点数据利用一定

的空间插值方法生成规则的结构化数据从而形成三维空间

体数据[2]

在目前的空间数据插值方法中Kriging插值方法是最为常

用也是精确度最高的一种方法大部分的三维矿体都采用这种

方法作为空间数据插值手段[2]本文利用Kriging插值方法对

有限区域内的矿体进行插值得到连续的矿体数据从而实现

对矿体的三维建模

1 Kriging插值建模方法

11 Kriging方法原理

Kriging法是在考虑了信息样品的形状大小及其与待估块

段相互间的空间分布位置等几何特征及品位的空间结构之后

为了达到线性无偏和最小方差的估计而对每一样品值分别

赋予一定的权系数最后进行加权平均来估计块段品位的方

法其插值示意图如图1所示

图1 Kriging插值示意图

12 空间数据插值方法比较

目前空间插值方法有多种其中常用的主要有泰森多边

形法距离反比法Kriging法[2]表1给出了这三种插值方法的

比较

基于Kriging的三维地质体建模方法研究朱燕玲1过仲阳1张 朔2夏 艳1栗小东1

(1 华东师范大学地理信息科学教育部重点实验室上海 2000622 中国科学院地理科学与资源研究所)

摘 要对几种三维空间数据模型进行了比较总结了克里格(Kriging)插值方法在三维地质体建模方面的种种优点在

此基础上借助于GSTL开源地质统计学库和wxWidgets界面库在Dev-cpp开发环境下开发了一个三维矿体数据的克里格

插值系统为矿体的三维可视化提供了数据支持该系统实现了Kriging插值变异函数拟合模型拟合程度的验证mdash交叉验

证以及特定格式的结果输出等功能

关键词三维地质体建模克里格插值法三维空间数据模型GSTLDev-cpp

Research of 3D Geological Body Modeling Methods Based on Kriging

ZHU Yan-ling1GUO Zhong-yang1ZHANG Shuo2XIA Yan1LI Xiao-dong1

(1 Key Laboratory of Geographic Information Science of MOE East China Normal University Shanghai 200062 China2 Institute of Geographic Sciences and Natural Resources Research CAS)

AbstractComparing several 3D spatial data models various advantages of Kriging interpolation algorithm in 3D geological body

modeling are summed up On this basis by means of open source geostatistics template library GSTL and interface library

wxWidgets a Kriging interpolation system of 3D orebody data is developed in Dev-cpp environment which provides data support

for orebody 3D visualization This system has realized the functions such as Kriging interpolation the fitting degree validation of

variogram fitting modelmdashcross validation and the results output in specific format

Key words3D geological body modelingKriging interpolation algorithm3D spatial data modelGSTLDev-cpp

基金项目海洋公益性行业重点项目(200805080)华东师范大学研究生重点课程建设项目(2007kc04)

middotmiddot 26

计算机时代 2010 年 第 1 期

表1 三种常用空间插值方法比较

原理依据

特性说明

插值精度

应用维度

泰森多边形

将平面按照已知点为中心分

成若干个多边形多边形内

的每一点的属性都由已知点

来决定根据待求点所处的

已知点控制的多边形这一特

性计算出待求点

简单形象直观但是多边

形构造时因为采样点的布局

容易产生奇异多边形

由于奇异多边形的存在和计

算的粗略使得估值准确程度

二维平面

距离反比法

将待求点属性值定

义为各已知点属性

对待求点和各已知

点间距离反比的加

权平均值

易于理解便于计

算考虑了待求点与

已知点之问的距离

对插值结果的影响

缺少对各向异性的

考虑估算精度受

到极大限制

二维三维

kriging法

将待求点影响范围内的

若干个有效已知点的值

进行线性组合从而得

到待求点值

考虑了已知点的ldquo丛聚

效应rdquo和空间属性的各

向异性真正实现了线

性无偏和最小估计方

差的估计

插值精度较高

二维三维

矿体数据本身呈现出了空间性各向异性不连续性等特

性所以一般的插值方法难以适应三维地质矿体建模的要求

而以区域化变量变异函数等为理论基础的Kriging法却具有

这一方面的优势变异函数既可以反映变量空间的结构性又

可以反映变量空间分布的随机性以及各采样点属性之间的相

关性和变异性区域化变量理论能够较好地解决采样点之间各

向异性等问题适宜构造规则空间数据可以描述采样点在拓

扑空间和属性空间的变化

2 系统设计

本系统是借助于GSTL开源统计学库和wxWidgets界面

库在Dev-cpp开发环境下设计的Dev-cpp是一个支持标准

C++语言的一个开发平台系统总体设计流程如图2所示

数据文件 参数文件

存入结构体

存入三维网络

Kriging插值

保存结果 交叉验证

结果显示 得拟合度

数据输入

Kriging

插值计算

数据输出及

模型验证

图2 系统设计流程图

GSTL是由斯坦福大学开发的一个开放源代码的C++库

提供了一套复杂的地统计学工具和算法[3]它是基于泛型编程

思想设计的具有很强的扩展性并易于和已有的软件相结

合它是用标准C++写的模板库所以不必经过编译就可以直

接使用它可以在符合C++标准的任何编译器下工作

wxWidgets[4]是一个给程序员使用的开发包这个开发包用

来开发用于桌面电脑或者移动设备的GUI(图形用户界面)应用

程序它是跨平台的为程序员提供了一个编程框架程序员

可以通过重载其中的方法来实现程序定制

本系统在设计上主要包含Kriging插值功能模型检验及

特殊文件格式的输出功能系统分为三个模块Kriging插值模

块交叉验证模块及结果输出模块

3 系统实现

31 功能模块的实现

⑴ Kriging插值模块系统的主要模块该模块可以实现

两种Kriging插值方法即简单Kriging法和普通Kriging法图

3是Kriging插值程序的流程图其中数据预处理就是对矿化

段数据进行笛卡尔坐标转换转换成三维坐标网格数据

钻孔原始数据

数据预处理

矿化点数据

输入参数和矿化点数据插值

保存插值结果

输出结果显示

变异函数拟合得到插值参数

图3 是Kriging插值程序的流程图

在编程实现上首先要进行参数的定义克里格插值时用

到的主要函数是kriging_weights它有六个参数Vectoramp weights

doubleamp kriging_varianceconst Locationamp centerconst Neigh-

borhoodamp neighborsCovarianceamp covarKrigingConstraintsamp

Kconstraints它们分别为权重向量估计方差待插点位置待插

点的邻域范围协方差函数和插值的约束条件另外由于

Kriging插值过程所需时间较长故本系统中加入进度条以及时

告诉用户当前的插值进度这里用的进度条显示是wxWidgets

界面库提供的信息对话框中的一种即wxProgressDialog

⑵ 交叉验证模块有两种插值方法最后得出两个交叉验

证的文本文件本模块用插值得出的未知点的值来反插值得

出已知点的估计值将已知点的估计值和真实值做比较得出

变异函数拟合模型的拟合度

⑶ 输出模块将插值结果按VTK格式和VOXEL格式输

出分别在VTK和OpenGL显示工具下显示这里主要是通过

GSTL库中的get_property_value()函数得到点的值将其按照具

体的格式输出利用OpenGL虽然图像的显示速度较快但图

像会出现锯齿状VTK[5]显示虽然速度较慢但是图像清晰并

且可以对图形进行剖面显示剖面管理等操作

32 系统运行界面

本系统开发的目的是通过对矿化段数据的克里格插值得

到连续的矿体数据从而得出整个区域内矿体的分布状况其

主要功能是实现克里格插值系统操作界面如下图4所示

图4 系统操作界面

图5是采用简单Kriging等值面是90的插值结果由于所

(下转第30页)

middotmiddot 27

Computer Era No 1 2010

AfxMessageBox(errormessage) 显示错误信息

借助于SQL语句实现数据的存储

_variant_t RecordsAffected

CString strSQL

strSQLFormat(INSERT INTO numdata(centerwall)VALUES

(dd)iCenter iWall)

m_pConnect-gtExecute((_bstr_t)strSQLampRecordsAffected

adCmdText)

对数据库的遍历

CString str

m_pRecordset=m_pConnection-gtExecute(SELECTFROM

nummdata ampRecord adCmdText)

strFormat(select FROM numdata WHERE btimelt=s

and btimegt=s endtimesttime)

m_pRecordset=m_pConnection-gtExecute((_bstr_t)strampRecord

adCmdText)

图4 历史数据绘制

4 结束语

串口是常用的计算机与外部串行设备之间的数据传输通

道由于串行通信方便易行所以在实验室和工业中广泛应

用实践证明应用本文所设计的炉温实时数据采集系统可

以提高温度监控系统的自动化水平降低操作人员的劳动强

度应用效果良好

参考文献

[1] 明日科技Visual C++开发经验技巧宝典[C]人民邮电出版社2007

[2] 李现勇Visual C++串口通信技术与工程实践[M]人民邮电出版社

2004

[3] 龚建伟熊光明Visual C++Turbo C串口通信编程实践[M]北京电

子工业出版社2004

[4] 王顺晃舒迪前智能控制系统及其应用[M]机械工业出版社1995

[5] 李肇庆韩涛串行端口技术[M]国防工业出版社2004

[6] 茹东生陈学军多电路串行通信自动测试系统的研究和设计[M]中

国测试技术200531(5)111~112

[7] 侯俊杰深人浅出MFC(第二版)[M]华中科技大学出版社2001

[8] 张志强Windows编程技术[M]机械工业出版社2003

[9] 苏岳龙李贻斌宋锐基于VC++ 60的高速串口通信数据采集系统

[J]微计算机信息200521(5)147~148

[10] 金卫民VC下利用串口进行数据通讯的研究[J]计算机工程与设

计200324120~12234

[11] 陈争光由坤Visual C++入门与提高[M]科学出版社2008

[12] 王卫峰姚正治刘金刚基于定时器控制的串口通信软件研究[J]微

计算机信息200824254~255

[13] 王育肩Visual C++面向对象编程教程[M]清华大学出版社2003

[14] 孙鑫余安萍VC++深入详解[M]电子工业出版社2006

[15] 崔莹王华军VISUAL C++数据库应用编程100例[M]中国铁道出

版社2006

给区域的限制因此看似片状实则是三维的实体结构可以对

它做空间分析可视化显示等其中图(a)为光线投影算法效果

图(b)为等值面图(c)为最大密度效果图

(a) (b) (c)

图5 简单Kriging法插值效果图

4 结束语

本文提出的通过Kriging插值得到真三维矿体数据的三维

地质体建模方法不仅可以显示结果而且用户可以对结果进

行各种操作是一种真三维的建模方法但是对于具有复杂

性的三维地质空间问题并不能仅仅依靠单纯的数学方法解决

本文提出的解决方案与思路更多地侧重于数学逻辑在以后

的研究中可以从以下几个方面考虑加入地质软信息采用规

则体元和非规则体元相融合的三维地质体模型多种验证方法

相结合等

参考文献

[1] 文学东卢秀山李青元魏占营基于三棱柱的三维地质体建模及可

视化研究[J]测绘科学200530(5)82~83

[2] 劳婧华余东明矿体三维模拟技术中的空间数据插值方法[J]大众科

技20088100~101

[3] Nicolas RemyGsTLThe Geostatistical Template Library in C++

2001

[4] wWidgets 简 介httpblogchinabytecomBlogphenixarchive

20051023 45997html

[5] VTK 简介httpwwwhitrencomblogmoreaspname=sinampid=

2794

10509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939(上接第27页)

middotmiddot 30

Page 2: 基于Kriging的三维地质体建模方法研究*Kriging 法是在考虑了信息样品的形状、大小及其与待估块 段相互间的空间分布位置等几何特征及品位的空间结构之后,为了达到线性、无偏和最小方差的估计,而

计算机时代 2010 年 第 1 期

表1 三种常用空间插值方法比较

原理依据

特性说明

插值精度

应用维度

泰森多边形

将平面按照已知点为中心分

成若干个多边形多边形内

的每一点的属性都由已知点

来决定根据待求点所处的

已知点控制的多边形这一特

性计算出待求点

简单形象直观但是多边

形构造时因为采样点的布局

容易产生奇异多边形

由于奇异多边形的存在和计

算的粗略使得估值准确程度

二维平面

距离反比法

将待求点属性值定

义为各已知点属性

对待求点和各已知

点间距离反比的加

权平均值

易于理解便于计

算考虑了待求点与

已知点之问的距离

对插值结果的影响

缺少对各向异性的

考虑估算精度受

到极大限制

二维三维

kriging法

将待求点影响范围内的

若干个有效已知点的值

进行线性组合从而得

到待求点值

考虑了已知点的ldquo丛聚

效应rdquo和空间属性的各

向异性真正实现了线

性无偏和最小估计方

差的估计

插值精度较高

二维三维

矿体数据本身呈现出了空间性各向异性不连续性等特

性所以一般的插值方法难以适应三维地质矿体建模的要求

而以区域化变量变异函数等为理论基础的Kriging法却具有

这一方面的优势变异函数既可以反映变量空间的结构性又

可以反映变量空间分布的随机性以及各采样点属性之间的相

关性和变异性区域化变量理论能够较好地解决采样点之间各

向异性等问题适宜构造规则空间数据可以描述采样点在拓

扑空间和属性空间的变化

2 系统设计

本系统是借助于GSTL开源统计学库和wxWidgets界面

库在Dev-cpp开发环境下设计的Dev-cpp是一个支持标准

C++语言的一个开发平台系统总体设计流程如图2所示

数据文件 参数文件

存入结构体

存入三维网络

Kriging插值

保存结果 交叉验证

结果显示 得拟合度

数据输入

Kriging

插值计算

数据输出及

模型验证

图2 系统设计流程图

GSTL是由斯坦福大学开发的一个开放源代码的C++库

提供了一套复杂的地统计学工具和算法[3]它是基于泛型编程

思想设计的具有很强的扩展性并易于和已有的软件相结

合它是用标准C++写的模板库所以不必经过编译就可以直

接使用它可以在符合C++标准的任何编译器下工作

wxWidgets[4]是一个给程序员使用的开发包这个开发包用

来开发用于桌面电脑或者移动设备的GUI(图形用户界面)应用

程序它是跨平台的为程序员提供了一个编程框架程序员

可以通过重载其中的方法来实现程序定制

本系统在设计上主要包含Kriging插值功能模型检验及

特殊文件格式的输出功能系统分为三个模块Kriging插值模

块交叉验证模块及结果输出模块

3 系统实现

31 功能模块的实现

⑴ Kriging插值模块系统的主要模块该模块可以实现

两种Kriging插值方法即简单Kriging法和普通Kriging法图

3是Kriging插值程序的流程图其中数据预处理就是对矿化

段数据进行笛卡尔坐标转换转换成三维坐标网格数据

钻孔原始数据

数据预处理

矿化点数据

输入参数和矿化点数据插值

保存插值结果

输出结果显示

变异函数拟合得到插值参数

图3 是Kriging插值程序的流程图

在编程实现上首先要进行参数的定义克里格插值时用

到的主要函数是kriging_weights它有六个参数Vectoramp weights

doubleamp kriging_varianceconst Locationamp centerconst Neigh-

borhoodamp neighborsCovarianceamp covarKrigingConstraintsamp

Kconstraints它们分别为权重向量估计方差待插点位置待插

点的邻域范围协方差函数和插值的约束条件另外由于

Kriging插值过程所需时间较长故本系统中加入进度条以及时

告诉用户当前的插值进度这里用的进度条显示是wxWidgets

界面库提供的信息对话框中的一种即wxProgressDialog

⑵ 交叉验证模块有两种插值方法最后得出两个交叉验

证的文本文件本模块用插值得出的未知点的值来反插值得

出已知点的估计值将已知点的估计值和真实值做比较得出

变异函数拟合模型的拟合度

⑶ 输出模块将插值结果按VTK格式和VOXEL格式输

出分别在VTK和OpenGL显示工具下显示这里主要是通过

GSTL库中的get_property_value()函数得到点的值将其按照具

体的格式输出利用OpenGL虽然图像的显示速度较快但图

像会出现锯齿状VTK[5]显示虽然速度较慢但是图像清晰并

且可以对图形进行剖面显示剖面管理等操作

32 系统运行界面

本系统开发的目的是通过对矿化段数据的克里格插值得

到连续的矿体数据从而得出整个区域内矿体的分布状况其

主要功能是实现克里格插值系统操作界面如下图4所示

图4 系统操作界面

图5是采用简单Kriging等值面是90的插值结果由于所

(下转第30页)

middotmiddot 27

Computer Era No 1 2010

AfxMessageBox(errormessage) 显示错误信息

借助于SQL语句实现数据的存储

_variant_t RecordsAffected

CString strSQL

strSQLFormat(INSERT INTO numdata(centerwall)VALUES

(dd)iCenter iWall)

m_pConnect-gtExecute((_bstr_t)strSQLampRecordsAffected

adCmdText)

对数据库的遍历

CString str

m_pRecordset=m_pConnection-gtExecute(SELECTFROM

nummdata ampRecord adCmdText)

strFormat(select FROM numdata WHERE btimelt=s

and btimegt=s endtimesttime)

m_pRecordset=m_pConnection-gtExecute((_bstr_t)strampRecord

adCmdText)

图4 历史数据绘制

4 结束语

串口是常用的计算机与外部串行设备之间的数据传输通

道由于串行通信方便易行所以在实验室和工业中广泛应

用实践证明应用本文所设计的炉温实时数据采集系统可

以提高温度监控系统的自动化水平降低操作人员的劳动强

度应用效果良好

参考文献

[1] 明日科技Visual C++开发经验技巧宝典[C]人民邮电出版社2007

[2] 李现勇Visual C++串口通信技术与工程实践[M]人民邮电出版社

2004

[3] 龚建伟熊光明Visual C++Turbo C串口通信编程实践[M]北京电

子工业出版社2004

[4] 王顺晃舒迪前智能控制系统及其应用[M]机械工业出版社1995

[5] 李肇庆韩涛串行端口技术[M]国防工业出版社2004

[6] 茹东生陈学军多电路串行通信自动测试系统的研究和设计[M]中

国测试技术200531(5)111~112

[7] 侯俊杰深人浅出MFC(第二版)[M]华中科技大学出版社2001

[8] 张志强Windows编程技术[M]机械工业出版社2003

[9] 苏岳龙李贻斌宋锐基于VC++ 60的高速串口通信数据采集系统

[J]微计算机信息200521(5)147~148

[10] 金卫民VC下利用串口进行数据通讯的研究[J]计算机工程与设

计200324120~12234

[11] 陈争光由坤Visual C++入门与提高[M]科学出版社2008

[12] 王卫峰姚正治刘金刚基于定时器控制的串口通信软件研究[J]微

计算机信息200824254~255

[13] 王育肩Visual C++面向对象编程教程[M]清华大学出版社2003

[14] 孙鑫余安萍VC++深入详解[M]电子工业出版社2006

[15] 崔莹王华军VISUAL C++数据库应用编程100例[M]中国铁道出

版社2006

给区域的限制因此看似片状实则是三维的实体结构可以对

它做空间分析可视化显示等其中图(a)为光线投影算法效果

图(b)为等值面图(c)为最大密度效果图

(a) (b) (c)

图5 简单Kriging法插值效果图

4 结束语

本文提出的通过Kriging插值得到真三维矿体数据的三维

地质体建模方法不仅可以显示结果而且用户可以对结果进

行各种操作是一种真三维的建模方法但是对于具有复杂

性的三维地质空间问题并不能仅仅依靠单纯的数学方法解决

本文提出的解决方案与思路更多地侧重于数学逻辑在以后

的研究中可以从以下几个方面考虑加入地质软信息采用规

则体元和非规则体元相融合的三维地质体模型多种验证方法

相结合等

参考文献

[1] 文学东卢秀山李青元魏占营基于三棱柱的三维地质体建模及可

视化研究[J]测绘科学200530(5)82~83

[2] 劳婧华余东明矿体三维模拟技术中的空间数据插值方法[J]大众科

技20088100~101

[3] Nicolas RemyGsTLThe Geostatistical Template Library in C++

2001

[4] wWidgets 简 介httpblogchinabytecomBlogphenixarchive

20051023 45997html

[5] VTK 简介httpwwwhitrencomblogmoreaspname=sinampid=

2794

10509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939(上接第27页)

middotmiddot 30

Page 3: 基于Kriging的三维地质体建模方法研究*Kriging 法是在考虑了信息样品的形状、大小及其与待估块 段相互间的空间分布位置等几何特征及品位的空间结构之后,为了达到线性、无偏和最小方差的估计,而

Computer Era No 1 2010

AfxMessageBox(errormessage) 显示错误信息

借助于SQL语句实现数据的存储

_variant_t RecordsAffected

CString strSQL

strSQLFormat(INSERT INTO numdata(centerwall)VALUES

(dd)iCenter iWall)

m_pConnect-gtExecute((_bstr_t)strSQLampRecordsAffected

adCmdText)

对数据库的遍历

CString str

m_pRecordset=m_pConnection-gtExecute(SELECTFROM

nummdata ampRecord adCmdText)

strFormat(select FROM numdata WHERE btimelt=s

and btimegt=s endtimesttime)

m_pRecordset=m_pConnection-gtExecute((_bstr_t)strampRecord

adCmdText)

图4 历史数据绘制

4 结束语

串口是常用的计算机与外部串行设备之间的数据传输通

道由于串行通信方便易行所以在实验室和工业中广泛应

用实践证明应用本文所设计的炉温实时数据采集系统可

以提高温度监控系统的自动化水平降低操作人员的劳动强

度应用效果良好

参考文献

[1] 明日科技Visual C++开发经验技巧宝典[C]人民邮电出版社2007

[2] 李现勇Visual C++串口通信技术与工程实践[M]人民邮电出版社

2004

[3] 龚建伟熊光明Visual C++Turbo C串口通信编程实践[M]北京电

子工业出版社2004

[4] 王顺晃舒迪前智能控制系统及其应用[M]机械工业出版社1995

[5] 李肇庆韩涛串行端口技术[M]国防工业出版社2004

[6] 茹东生陈学军多电路串行通信自动测试系统的研究和设计[M]中

国测试技术200531(5)111~112

[7] 侯俊杰深人浅出MFC(第二版)[M]华中科技大学出版社2001

[8] 张志强Windows编程技术[M]机械工业出版社2003

[9] 苏岳龙李贻斌宋锐基于VC++ 60的高速串口通信数据采集系统

[J]微计算机信息200521(5)147~148

[10] 金卫民VC下利用串口进行数据通讯的研究[J]计算机工程与设

计200324120~12234

[11] 陈争光由坤Visual C++入门与提高[M]科学出版社2008

[12] 王卫峰姚正治刘金刚基于定时器控制的串口通信软件研究[J]微

计算机信息200824254~255

[13] 王育肩Visual C++面向对象编程教程[M]清华大学出版社2003

[14] 孙鑫余安萍VC++深入详解[M]电子工业出版社2006

[15] 崔莹王华军VISUAL C++数据库应用编程100例[M]中国铁道出

版社2006

给区域的限制因此看似片状实则是三维的实体结构可以对

它做空间分析可视化显示等其中图(a)为光线投影算法效果

图(b)为等值面图(c)为最大密度效果图

(a) (b) (c)

图5 简单Kriging法插值效果图

4 结束语

本文提出的通过Kriging插值得到真三维矿体数据的三维

地质体建模方法不仅可以显示结果而且用户可以对结果进

行各种操作是一种真三维的建模方法但是对于具有复杂

性的三维地质空间问题并不能仅仅依靠单纯的数学方法解决

本文提出的解决方案与思路更多地侧重于数学逻辑在以后

的研究中可以从以下几个方面考虑加入地质软信息采用规

则体元和非规则体元相融合的三维地质体模型多种验证方法

相结合等

参考文献

[1] 文学东卢秀山李青元魏占营基于三棱柱的三维地质体建模及可

视化研究[J]测绘科学200530(5)82~83

[2] 劳婧华余东明矿体三维模拟技术中的空间数据插值方法[J]大众科

技20088100~101

[3] Nicolas RemyGsTLThe Geostatistical Template Library in C++

2001

[4] wWidgets 简 介httpblogchinabytecomBlogphenixarchive

20051023 45997html

[5] VTK 简介httpwwwhitrencomblogmoreaspname=sinampid=

2794

10509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939105093910509391050939(上接第27页)

middotmiddot 30