D0I:10.13374/j.issn1001-053x.1994.s3.040 第16卷增刊 北京科技大学学报 Vol.16 1994年10月 Journal of University of Science and Technology Beijing 0ct.1994 矿山图形处理软件若干计算方法 祖建华 胡乃联 (北京科技大学) 摘要本文介绍了矿山图形处理软件中常用的计算方法,包括矿体边界描述,闭合范围面积 计算,样品搜索和任意范围矿体面积计算等,对计算方法的精度进行了讨论。 关键词矿山,图形处理,软件,计算方法 Some Algorithm of Mining Graphics Software Zu Jianhua Hu Nailian ABSTRACT This paper introduced the commonly used algorithm of mining graphics soft- ware,including ore body boundary description,closed range area calculation,sample searching and calculation of ore body area inside given range.The precision of the algorithm was dis- cussed. KEY WORDS mine,graphics processing,softeare,algorithm 开发矿山专用计算机图形处理系统,一种方法是选择通用软件包如AUTO CAD,对其 进行二次开发,另一种方法就是利用程序设计语言实现所需要的功能。显然后者难度要大 得多,但由于针对特定问题编制软件,应用起来可能会方便些,更适合于处理特定问题。动 态构件式采矿方法设计系统)就是利用程序设计语言MSC实现的,本文介绍该系统的若干 计算方法。 1矿体边界描述一离散点序列的函数表示 矿体边界描述、图形显示、输出,计算储量等都需要求离散点序列的函数表达形式,不 仅要求函数能够真实地描述各种地质边界,而且要求函数运算速度快,所需数据量小。在 动态构件式采矿方法设计系统中使用的是双斜抛物线,现给出插值公式。 ·1994-07-11收稿第一作者男,30岁,助理研究员
第 卷增刊 年 月 北 京 科 技 大 学 学 报 矿 山图形处理软件若干计算方法 祖建华 胡乃 联 北京科技大学 摘 要 本文介绍 了矿 山图形处理软件 中常用的计算方法 , 包括矿体边界描述 , 闭合范围面积 计算 , 样 品搜索和 任意范围矿体面积 计算等 , 对计算方法的精度进行 了讨论 。 关键词 矿 山 , 图形处理 , 软件 , 计算方法 汉故 , 记 , , , , , 开发矿 山专用计算机 图形处理系统 , 一种 方法是选择通 用软件包如 , 对其 进行二次开发 , 另 一种方法就是利用程序设计语言实现所需要 的功能 。 显然后者难度要大 得多 , 但 由于针对特定 问题编制软件 , 应用起来可 能会方便些 , 更适合于处理特定 问题 。 动 态构件式采矿方法设计系统 就是利用程序设计语言 实现 的 , 本文介绍该系统的若干 计算方法 。 矿体边界描述—离散点序列的函数表示 矿体边界描述 、 图形显示 、 输出 , 计算储量等都需要求离散点序列 的函数表达形式 , 不 仅要求函数能够真实地描述各种地质边界 , 而 且要求函数运算速度快 , 一 所需数据量小 。 在 动态构件式采矿方法设计系统 中使用 的是双斜抛物线 , 现给 出插值公式 。 一 收稿 第一作者 男 , 岁 , 助理研究员 DOI :10.13374/j .issn1001—053x.1994.s3.040
·22· 北京科技大学学报 1.1三点情况:(x1,y1)、(x2,y2)、(x3,y3) 利用以(x2,y2)为顶点的斜抛物线表示: x=A T2+B:T+C T∈[0,1] y=A2T2+B2T+C2 令:T=0.0时x=x1y=y1 T=0.5时×=x2y=y2 T=1.0时x=x3y=y3 则:A1=2(x3-2x2+x1)A2=2(y3-2y2+y1) B1=4x2-X3-3x1 B2=4y2-y3-3y1 C1=X1 C2=y1 1.2n点情况: 对于由·点组成的点序列,分段利用两段斜抛物线加权迭加 S=λ1S,+λ2S+1,入1+入2=1 取S的T∈[0.5,1]段,S+1的T+1∈[0,0.5]段 令:λ=1-2T λ2=2T |x=(1-2T)(A1T?+BT1+C)+2T(A,T2+BT+C3) y=(1-2T)(A2T+B2T1+C2)+2T(AT2+B,T+C) 式中: T∈[0.5,1] T=T+1 T1=T=T+1+0.5 A1=2(X+2-2X+1+X,) A2=2(Y+2-2Y+1+V) A3=2(X+3-2X+2+X+1) A4=2(Y+3-2Y+2+Y+1) B1=4X+1-X+2-3X B2=4Y+1-Yi+2-3Y, B,=4X+2-X+3-3X1+1 B,=4Y+2-Y+3-3Yi+1 C=X) C2=Y1 C3=X+1 C=Yi+1 该函数能够满足描述矿岩界线的要求,并且当参数T等步长变化时,曲线步长随着曲 率自动变化,即曲率大步距小,曲率小步距大,使得曲线光滑。经证明该函数为二次可导。 T的变化步长根据显示设备分辨率确定
北 京 科 技 大 学 学 报 三点情况 , 、 , 、 , 利用 以 , 为顶点的斜抛物线表示 任 , 令 。 时 一 一 时 时 则 , 一 一 一 一 一 一 点情况 对于 由 点组成的点序列 , 分段利用两段斜抛物线加权迭加 入 入 , 入, 入 三 取 的 任 , 〕 段 , 」 的 什 任 , 〕 段 令 人 一 一 入 一 爹 , 一 圣 , ‘ 十 式 中 任 , 〕 一 」 · 一 」 」 一 」 , 一 什 什 一 」 一 』 一 。 一 一 一 」 一 一 一 什 」 」 该 函数能够满足描述矿岩界线的要求 , 并且 当参数 等步长变化时 , 曲线步长随着 曲 率 自动变化 , 即 曲率大步距小 , 曲率小步距大 , 使得 曲线光滑 。 经证明该 函数为二次可导 。 的变化步长根据显示设备分辨率确定
相建华等:矿山图形处理软件若干计算方法 ·23· 2矿体面积计算 矿体边界曲线围成的面积分为两部分:多边形面积(S)和曲线与多边形围成弓形的 面积(Sarc),S=ABS(Sa)+Sr。 多边形面积计算如下: s=(+…+ X y +…+ Ix.yo) y2 X+1y1+1 x1 y1 弓形面积用下列计算: 式中:Xn=x1,yn=y1 (x'i,y')由(x,y)以(x,y,)为轴旋转到直线(x,y)一(x+i,y+)方 向得到,(x'+1,y+)由(x+1,y+)以(x,y,)为轴旋转到直线(x,y)一 (x+1,y+1)方向得到,f(x)为旋转后的分段函数表示。 3 空间直线与平面关系和样品搜索 垂直剖面S(x,yo,a)=(面上一点平面坐标x,y方位角)。 与S平行的空间直线L(x1,y1,z1,a,),B为倾角。 3.1L向S投影 ①过(x1,y)作S与水平面交线L(xo,yo,a)的垂线,并利用直线关系求出垂足 (x,y),则L的起点投影点为(x,y,z): ②L上距起点(x1,y1,z)距离为d的点投影坐标为: x=x十d'cos(β)'cos(a) y=y.+d'cos (B)'sin (a) z=z+d'sin (B) 3.2将钻孔投影到剖面上后,计算可以简化为二维运算 ①将投影钻孔延长为“长直线”; ②将“长直线”与搜索到的矿体曲线作相交测试,求出交点集,并按到“长直线”起 点距离排序; ③利用“奇进偶出”判断样品是否在闭合区域内。 4任意范围矿体面积一—闭合图形的交集 利用图形交集任意范围矿体的面积。 矿岩界线集:body=(a1,a2,ag,…) a=(x[,y[门,what)=(点序列x,y,特征)
祖建华等 矿 山图形处理软件若干计算方法 矿体面积计算 矿体边界 曲线 围成 的面积分为两部分 多边形面积 州 和 曲线与多边形 围成 弓形 的 面积 。 , 、 。 二 。 多边形 面积计算如下 , 。 。 。 浏 一 万 … 十 弓形面积用下列计算 一 客 ’ ’ ’ ’ 式 中 , 。 , , , , 由 , 以 , 为轴旋转到直线 , 一 , 方 向得到 , , , , 由 , 以 , 为轴旋转到直线 , 一 , , 方 向得到 , , 为旋转后 的分段 函数表示 。 空间直线与平面关 系和样品搜索 垂直剖面 。 , 。 , 一 面上一点平面坐标 , 方位角 。 与 平行 的空 间直线 , , , , , 旦 , 日为倾角 。 向 投影 ① 过 , 作 与水平面交线 。 , 。 , 的垂线 , 并利用直线关系求 出垂足 。 , 。 , 则 的起点投影点为 。 , , · ② 上距起点 , , 距离 为 的点投影 坐标 为 ’ ‘ ‘ ’ “ 将钻孔投影到剖面上后 , 计算可以简化为二维运算 ①将投影钻孔延长为 “ 长直线 ” ②将 “ 长直线 ” 与搜索到的矿体曲线作相交测试 , 求出交点集 , 并按到 “ 长直线 ” 起 点距离排序 ③利用 “ 奇进偶 出 ” 判断样 品是否在 闭合区域 内 。 任意范围矿体面积 闭合图形的交集 利用 图形交集任意范围矿体的面积 。 矿岩界线集 记 一 , , , … 〔」 , 〕 , 点序列 , , 特征
·24· 北京科技大学学报 给定窗口:window=(W,W2,W,…,W,…) W=(x,y) 交点集:cross=(c1,c2,C,,C,…) c=(x,y,1,12,13) 1:与body中的1,项相交 12:与body中的11项相交于12点 l3:与window中的13点相交 交集:ore=(r1,r2,r3,…,r,…) r=(x []y []what) 为讨论方便,假设W,在body外。 ①利用直线与曲线关系求出交集cross,并按照W,的c(1s)排序; ②设1为交集指针,1=1。从cross内某点Ck开始搜索; ③i=Cx(11),m=Ck(12),n=Ck(13)。 R (what)=a;(what) 若K为奇数转④,否则转⑤。 ④在cross中搜索Cp,满足C。(1,)=i; q=Cp(13)且使q-n最小, 将W。…W)归入R, 若q=K,转⑥, 令K=q转③。 ⑤在cross中搜素Cp,满足C,(11)-i: q=C。(12)且使q-m最小, 将(Ck,a)中第m到n点Ca,归人R, 若q=K,转⑥, 令K=q转③。 ⑥使1指向ore下-一项, 如果cross中点没有遍历,转③ ⑦将全部落入窗口内的界线归人ore 如果ore为空集,检查窗口是否落人界线内,如果是将窗口归人ore ⑧计算面积和品位。 5 计算方法误差分析 开发一个应用软件系统,除了必须具备良好的用户界面,使用灵活、操作方便,能够 提高工作效率外,最重要的是软件系统必须具备一定的精度,只有精度满足要求,软件系 统才可以投人实际运行。对于采矿方法设计系统来说,用户之所以“敢”使用,一是软件 精度高,满足采矿图件处理和指标计算精度要求,二是软件“好用”。 5.1系统误差来源分析
, · 北 京 科 技 大 学 学 报 给定窗 口 , , , … , , … 一 , 交点集 , , , … , , … , , , , 与 砧 中的 , 项相交 与 中的 项相 交于 点 与 中的 点相交 交集 , , , … , 、 , … 〔 , 〕 , 为讨论方便 , 假设 , 在 闭 外 。 ①利用直线与 曲线关系求 出交集 , 并按照 , 的 。 排序 ②设 为交集指针 , 一 。 从 内某点 开始搜索 ③ , , , 。 若 为奇数转④ , 否则转⑤ 。 ④在 中搜索 , 满足 。 且使 一 最小 , 将 … 归人 , 若 一 , 转⑥ , 令 一 转③ 。 ⑤在 中搜索 , 满足 , , 且使 一 最小 , 将 , 中第 到 。 点 , 归人 , 若 , 转⑥ , 令 一 转③ 。 ⑥使 指 向 下 一项 , 如果 中点没有遍历 , 转③ ⑦将全部落人窗 口 内的界线归人 如果 为空集 , 检查 窗 口 是否 落人界线 内 , 如果是将窗 口 归入 ⑧计算面积和 品位 。 计算方法误差分析 开发一个应用 软件系统 , 除 了必须具备 良好的用户界 面 , 使用灵活 、 操作方便 , 能够 提高工作效率外 , 最重要 的是软件系统必须具备一定的精度 , 只有精度满足要求 , 软件系 统才可 以投人实际运行 。 对于采矿方法设计系统来说 , 用户之所 以 “ 敢 ” 使用 , 一是软件 精度高 , 满足采矿 图件处理和指标计算精度要求 , 二是软件 “ 好用 ” 。 系统误差来源分析
祖建华等:矿山图形处理软件若干计算方法 ·25· 采矿方法设计系统的误差来源主要分为三个部分:一是地质资料的准确程度,二是系 统所采用计算方法的可靠程度,三是系统的数值计算准确度。 (1)地质资料的准确程度 采矿设计是在地质资料上进行的,地质资料的准确程度直接影响设计的质量,因此,地 质资料必须经过严格审查方能提交设计使用。 (2)计算方法误差 系统采用的计算方法的可靠程度决定了各种计算的准确程度,采矿方法设计系统采用 采矿方法手册中推荐的传统计算方法。 (3)数值计算误差 在选择了计算方法后,计算精度取决于系统所采用数值计算实现方法的精度。在系统 中,除了“曲线计算”采用“近似计算方法”外,其余都采用“准确计算方法”,如:工程 量计算、坐标计算、矿量计算、品位计算和损失贫化计算等,其中,矿量计算的精度取决 于曲线计算精度,曲线计算精度讨论见文献)。 5.2系统计算结果与人工计算结果比较 尽管从理论上讨论了系统的误差及其产生原因,但是由于种种原因,如程序编制考虑 欠周到、计算公式写错等程序错误,会造成计算结果的错误,从而造成软件系统不可靠,因 此,必须对软件系统考核,以证明其正确性和可靠程度。 下面是若干矿块储量和品位计算机计算结果和人工计算结果比较情况。 计算机计算结果和人工计算结果比较表 采场名称 1111采场 1112采场 1113采场 1114采场 矿量品位矿量品位矿量品位矿量品位 指标名称 (t)(%)(t)(%)(t)(%)(t)(%) 人工 第一次35616 40.5620431 37.6520599 37.3526472 38.70 计算值 第二次34916 19906 20679 26695 平均值3526640.562016937.6520619 37.3526584 38.70 计算机计算 3532440.322014637.362079437.5226795 38.91 与均值 第一次0.99 1.30 0.29 0.42 偏差第二次 0.99 1.30 0.29 0.42 计算机0.16·0.590.110.770.850.370.800.54 通过上表可以看出,计算机计算结果与平均值的偏差和人工计算与平均值的偏差都在 可以接受范围,证明计算机计算结果是可靠的。 参考文献 1鉴定材料.动态构件式采矿方法设计系统,1993.5,北京科技大学
祖建华等 矿 山 图形处理软件若干计算方法 采矿方法设计系统的误差来源 主要分为三个部分 一是地质资料 的准确程度 , 二是系 统所采用计算方法 的可靠程度 , 三是 系统的数值计算准确度 。 地质资料的准确程度 采矿设计是在地质资料上进行 的 , 地质资料 的准确程度直接影 响设计 的质量 , 因此 , 地 质资料必须经过严格 审查方能提 交设计使用 。 计算方法误差 系统采用 的计算方法 的可靠程度决定 了各种计算的准确程度 , 采矿方法设计系统采用 采矿方法手册 中推荐的传统计算方法 。 数值计算误差 在选择 了计算方法后 , 计算精度取决于 系统所采用数值计算实现方法 的精度 。 在系统 中 , 除了 “ 曲线计算 ” 采用 “ 近似计算方法 ” 外 , 其余都采用 “ 准确计算方法 ” , 如 工程 量计算 、 坐标计算 、 矿量计算 、 品位计算和损失贫化计算等 , 其 中 , 矿量计算的精度取决 于 曲线计算精度 , 曲线计算精度讨论见文献川 。 系统计算结果与人工计算结果 比较 尽管从理论上讨论了系统的误差及其产生原 因 , 但是 由于种种原 因 , 如程序编制考虑 欠周到 、 计算公式写错等程序错误 , 会造成计算结果 的错误 , 从而造成软件系统不可靠 , 因 此 , 必须对软件系统考核 , 以证明其正确性和 可靠程度 。 下 面是若干矿块储量和 品位计算机计算结果和人工计算结果 比较情况 。 计算机计算结果和人工计算结果 比较表 采 场 名 称 采场 采场 采场 采场 矿 量 品 位 矿 量 品 位 矿 量 品 位 矿 量 品 位 人工 第一次 计算值 第二次 平均值 计算机计算 与均值 第一次 偏 差 第二次 计算机 令 通过上表可 以看出 , 计算机计算结果与平均值的偏差和人工计算与平均值的偏差都在 可 以接受范围 , 证明计算机计算结果是可靠的 。 参考文献 鉴定材料 动态构件式采矿方法设计系统 , , 北京科技大学