资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
总结 基于opengl的三维井眼轨迹可视化,2011.03.30,1.将测井数据转换为opengl环境下的三维坐标数据。 1.1利用最小曲率法公式算出井眼在地层垂深、东坐标和北坐标方向的增量 打开测井数据文件,获得井深、井斜角和方位角,利用最小曲率法公式算出井眼在地层垂深、东坐标和北坐标方向的增量,从而得到井眼轨迹的三维坐标。,假设测斜数据共有N个点,第i个测点的井深为Li、井斜角为ai、方位角为i,i=1,N。井深单位为m,井斜角和方位角单位为弧度。 最小曲率法假设:在一个井段上,井眼轨迹为空间中的一段圆弧。用(X,Y,Z)表示井眼轨迹上任意一点的北坐标、东坐标和垂直深度,则在第i个测段上,坐标增量由式(1)一式(5)计算:,式中: 是段长,m; 北坐标增量,m; 是东坐标增量,; 是垂深增量,m; 是测段弯曲角,弧度; 是测段方位角增量。 井段的平均井眼曲率、井斜变化率和方位变化率计算:,式中: 是井段井斜角增量; 平均井眼曲率,弧度/m; 是井斜变化率,弧度/m; 方位变化率,弧度/m。,坐标增量的精确计算 直接按照式(1)一式(5)进行测斜计算不是高 效的和数值稳定的。下面给出两个改进方法。 (1)减小计算量的方法 如果直接按照式(1)一式(5)计算坐标增量,需 要计算13个正弦和余弦三角函数,全井N个点的总计算次数为N1=13(N1)。,如果令 , , 则可 将式(1)一式(3)和式(5)可以改写成下面的形式: 三角函数计算的总次数为4N。,(2)系数 的计算 从式(4)可以看出,在计算 时,需要除法计算但是当测段弯曲角 比较小时,这是两个数值很小的两个数相除,在计算机数值计算中容易产生很大的误差,甚至会出现“除法溢出”的异常,从而直接影响坐标增量的计算精度。,最小曲率法2: r=1/cos|cos a1 + cos a2 +sin a1 *sin a2*cos(2-1) | H= L/2*(cos a1+cos a2)*2r*lg(r/2) N= L/2*(sin a1*cos 1+ sin a2*cos 2)*2r*lg(r/2) E= L/2*(sin a1*sin1+ sin a2*sin 2)*2r*lg(r/2) 其中r为测段狗腿角,a, 为井斜角和方位角,标注1,2分别代表上下测点, L为两点之间的井深长度。 H,N,E分别为下测点对上测点在垂深,北坐标和东坐标方向的位移增量。,1.2坐标系转换 由于井眼坐标系与opengl画图坐标是不一致的,必须进行转换。 Xi=XEi Yi=-(YVi-YVmin) Zi=-ZNi,2.Opengl视景体的设置 (1)观察点位置的确定 gluLookAt(eye_x, eye_y,eye_z,0,0,0,0,1,0); (2)视景体的设置 利用透视投影函数void gluPerspective( GLdouble fovy, /角度 GLdouble aspect,/视景体的宽高比 GLdouble zNear,/沿z轴方向的两裁面之间的距离的近处 GLdouble zFar /沿z轴方向的两裁面之间的距离的远处 ),3.三维井眼轨迹的实现 画图: glBegin(GL_LINE_STRIP),glVertex3f(),glend() 添加光照,实现图像的平移,旋转和缩放。,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号