随笔分类 - 1. 油田信息可视化

使用OpenGL和OpenInventor进行三维可视化的开发,使用GeoToolkit.NET进行底图和剖面的开发,主要是油田相关的应用
摘要:利用Seismic.NET编写了一个SEG-Y文件的扫描程序,可以自动判断道头字中主测线号、横测线号、X坐标和Y坐标的位置,自动快速扫描地震数据体中的拐点坐标。10GB多的数据体几十秒全部扫描完成!读出SEGY的元数据信息:显示3200字节的文件头,程序自动判断是EBCDIC码还是ASCII码。40... 阅读全文
posted @ 2014-11-26 17:00 申龙斌的程序人生 阅读(1386) 评论(6) 推荐(0) 编辑
摘要:从9月26日接到制作报奖材料的任务开始,6个人(不包括审查领导和美工人员)忙活了半个多月终于交稿了,翻一下时间日志,10月1日前大概投入了13个小时,10月13日交稿又讨论修改了67个小时,总共算起来超过80个小时的投入!其中我还跑北京离开了2天,其他人比我投入的时间更长!几人为准备DOC还比我花了... 阅读全文
posted @ 2014-10-17 06:19 申龙斌的程序人生 阅读(1802) 评论(0) 推荐(0) 编辑
摘要:据老孙说前二届在克拉玛依的数字油田的会议规格很高,可惜一直没机会参加。2014年9月3日至4日举办第三届,无论如何抓住了这次机会,不过会议的内容有些让我失望,克拉玛依的心思已经放在数字城市上了,数字油田的主题被冲淡了。和老孙聊起来都感觉到:全国找不到第二个像克拉玛依这样的油地结合的城市,即使他们的数字城市成功了,能在全国范围内推广吗?可能会把数字油田的阵地也丢掉了,看来数字油田的主阵地还是在西安。 阅读全文
posted @ 2014-09-11 14:41 申龙斌的程序人生 阅读(945) 评论(0) 推荐(0) 编辑
摘要:昨天在“智能数字油田开放论坛”上忍不住说了一句“数据元、元数据不是解决数字油田的关键问题”就干活去了,后来发现被袁教授追问了一句“那什么才是数字油田的关键问题?”,经这么一追问,我还真一下子说不出哪些算是关键问题,这两天就根据自己从事的一些工作所掌握的情况来扯上几句。1、数字油田的关键技术?虽然以前... 阅读全文
posted @ 2014-08-08 10:13 申龙斌的程序人生 阅读(739) 评论(6) 推荐(0) 编辑
摘要:SeismicPro是一个地震剖面显示软件,可从标准SEGY地震数据体中抽取纵测线和横测线的二维剖面,并以波形、变面积和变密度等多种方式进行专业化显示,可进行一键式显示方式切换,并可进行定制开发叠加井轨迹与测井曲线等。 主要功能列表: 1)根据SEGY快速生成三维工区信息,可预览三维工区的概貌 2)快速选取纵测线或横测线 3)在工区内以指定间隔快速前滚、后滚剖面 4)可实现从纵剖面切横剖面或从横剖面切纵剖面。 5)定制剖面的滚动间隔,剖面上显示的道号、极性等标签文本。 6)显示跟随鼠标的十字线 7)可显示剖面上任一两点之间的空间距离。 8)剖面的缩放功能,拉框放大剖面内任意区域中的内容, 9)一键使剖面恢复到正常比例的显示状态。 10)剖面漫游功能,可任意平移地震剖面。 11)逆道序显示,可实现剖面按CDP正序或 阅读全文
posted @ 2014-04-03 22:37 申龙斌的程序人生 阅读(5937) 评论(3) 推荐(1) 编辑
摘要:最近想了想弄了几年的勘探决策支持系统EDSS的内部技术,虽然名字起得有点大,但主要是提供勘探数据集成查询和可视化的,程序开发人员更换得不算多,功能不断修修补补,现在静下心来梳理一下技术点,应该还是挺有内容的,为了不泄漏企业秘密,图片只用对外宣传材料上有的,技术点只写些名字。 阅读全文
posted @ 2013-10-31 21:32 申龙斌的程序人生 阅读(1711) 评论(8) 推荐(0) 编辑
摘要:2013年10月18日-19日,参加了西安第三届数字油田高端论坛暨第二届国际学术会议,本次会议主题是大数据和数字油田2.0,参加本次会议的目的是想看看大数据这个概念如何在油田领域中落地,但很可惜与大数据有关的报告或者与石油没有关系,或者只是标题中有个大数据,但内容还是关于数字油田建设进展。只有程国建的一篇介绍SPE数字能源大会的材料中讲到了一篇国外报告,可能介绍了大数据在油田可能的应用领域,回来再仔细读读这篇材料。不管如何,把几个感兴趣的材料的主要思路整理了一下。王璞(谷歌):大数据处理在google----全球数据分析的方法技术介绍了谷歌大数据处理架构中的几个主要概念:MapReduce,S 阅读全文
posted @ 2013-10-21 10:28 申龙斌的程序人生 阅读(1180) 评论(2) 推荐(0) 编辑
摘要:三维可视化模块历经种种麿难终于发布了,中间经历过C++/Qt框架的不断变化,用C#重写,先发布时间域的三维模块等曲折的过程,终于在9月12日发布了,虽然功能还很不完善,算是完成了2012年职责范围内的一项。这个模块的发布主要功劳还是Suwei,我在其中写的代码几乎可以忽略不记。 阅读全文
posted @ 2012-09-25 09:53 申龙斌的程序人生 阅读(4188) 评论(22) 推荐(1) 编辑
摘要:在OpenInventor里画一个多边形时,遇到了奇怪的填充问题,多边形的第一个顶点竟然与其中的某一个顶点相连,在wireframe模式下显示一切正常,在填充模式中就显示不正常。 阅读全文
posted @ 2012-05-21 16:41 申龙斌的程序人生 阅读(1371) 评论(0) 推荐(1) 编辑
摘要:在64位的机器上用VisualStudio2010写OpenInventor程序,经常会遇到这样的错误:未能加载文件或程序集“……”或它的某一个依赖项。试图加载格式不正确的程序。原来导入以前的项目都是在Win32下的工程文件,工程属性里设置的编译平台都是"Win32“,我用到的OIV.Invento... 阅读全文
posted @ 2012-03-16 09:23 申龙斌的程序人生 阅读(1865) 评论(0) 推荐(0) 编辑
摘要:转自:http://202.118.167.67/eol/data/res/jsjtxx/Chapter6/CG_Txt_6_012.htm由于用齐次坐标表示,三维几何变换的矩阵是一个4阶方阵,其形式如下: 1)平移变换 参照二维的平移变换,我们很容易得到三维平移变换矩阵: 2)缩放变换直接考虑相对于参考点(xf,yf,zf)的缩放变换,其步骤为:A. 将平移到坐标原点处;B. 进行缩放变换;C. 将参考点(xf,yf,zf)移回原来位置则变换矩阵为: 3)绕坐标轴的旋转变换三维空间的旋转相对要复杂些,考虑右手坐标系下相对坐标原点绕坐标轴旋转q 角的变换:A.绕x轴旋转 B.绕y轴旋转 C.. 阅读全文
posted @ 2012-02-28 10:17 申龙斌的程序人生 阅读(657) 评论(0) 推荐(1) 编辑
摘要:OpenGL和OpenInventor中坐标变换是一个基本概念,不搞清楚这些概念,变换矩阵会一塌糊涂,从下面网站搜到一些基础知识,补一补。http://202.118.167.67/eol/data/res/jsjtxx/Chapter6/CG_Txt_6_011.htm正如我们在附录中提到的那样,用齐次坐标表示点的变换将非常方便,因此在本节中所有的几何变换都将采用齐次坐标进行运算。二维齐次坐标变换的矩阵的形式是: 这个矩阵每一个元素都是有特殊含义的。 形进行平移变换;[g h]是对图形作投影变换;[i]则是对图形整体进行缩放变换。 1)平移变换 2)缩放变换 3)旋转变换 4)对称变... 阅读全文
posted @ 2012-02-28 10:09 申龙斌的程序人生 阅读(1721) 评论(0) 推荐(0) 编辑
摘要:大地坐标的数值范围都比较大,而在OpenGL和OpenInventor中都是用float来存储所有数值的,所以会产生误差,试验的结果如下:20633460, 20633460.0020633461, 20633460.0020633462, 20633460.0020633463, 20633460.0020633464, 20633460.0020633465, 20633460.0020633466, 20633470.0020633467, 20633470.0020633468, 20633470.0020633469, 20633470.0020633470, 20633470.00 阅读全文
posted @ 2012-02-27 08:52 申龙斌的程序人生 阅读(683) 评论(0) 推荐(0) 编辑
摘要:在MeshViz模块里有许多坐标轴的类,PoLinearAxis类应该最有用,关键的语句是下面的构造函数: PoLinearAxis ax = new PoLinearAxis(new SbVec3f(35.0f, 35.0f, 35.0f), 88.0f, PoCartesianAxis.Types.XY, 10.0f); 第一个参数是起点的空间位置,SbVec3f类型; 第二个参数是终点的位置,但只是一个浮点数,含义是由后面的PoCartesianAxis.Types.XY参数决定的; 第三个参数是决定坐标轴在哪个平面上和指向的方向,XY是指在XY平面上,平行X方向; 第四个参数是刻度数字的间隔,这个参数是可选的,但省略时,刻度间隔是自动设置的。 阅读全文
posted @ 2012-02-21 08:23 申龙斌的程序人生 阅读(2025) 评论(1) 推荐(0) 编辑
摘要:经过连续的奋战,终于搞明白eclipse数模软件输出的egrid、unrst等二进制输出文件的格式了。根据对格式的了解,用C#编写了EclipseParser库,可以验证、读取所有Eclipse二进制文件中的内容。 阅读全文
posted @ 2010-08-04 12:45 申龙斌的程序人生 阅读(7109) 评论(16) 推荐(2) 编辑
摘要:  近日参加了为期10天的OpenInventor三维可视化软件工具的培训,OpenInventor是Mercury公司开发的基于OpenGL的三维可视化开发工具包,该工具包支持C++、.NET和JAVA多种开发语言,并可以与Qt集成开发,提供了1000多个类,用于快速开发稳定、高效的3D程序,石油行业中许多商业化软件产品都是基于OpenInventor开发的。   本次培训的是OpenInventor的8.0版本,开发语言是C++,重点掌握如何使用OpenInventor中的节点、域、材质、光照、相机、传感器、引擎、事件、选择器、节点工具箱类、组件等类完成基本三维对象的显示、选择与交互等功能,同时了解Qt与OpenInventor集成开发的编程思路。 阅读全文
posted @ 2010-04-14 08:24 申龙斌的程序人生 阅读(5760) 评论(10) 推荐(1) 编辑
摘要:忙活了几天的OpendTect4.0.1的编译安装,终于编译通过,但Release可以运行,DEBUG却出现R6034错误。 把杂乱的过程记下来: 一、准备工作 (1) VisualStudio 2005是必须的,好像也可以用2008,但官方推荐用2005。 (2) 安装VisualStudio 2 阅读全文
posted @ 2010-03-16 10:54 申龙斌的程序人生 阅读(2475) 评论(7) 推荐(0) 编辑