用Seismic.NET开发地震剖面显示程序可以节省大量的时间,下面的代码展开了如何用最少的代码显示一个SEGY文件。
// 用一行语句把 reader, pipeline, view 和 plot 都创建出来 cgSeismicPlot plot = new cgSeismicPlot( new cgSeismicView( new cgSeismicPipeline( new cgSegyReader("test.segy"))), cgTraceAxisPosition.Both, // 上下都显示道号轴 cgSampleAxisPosition.Both); // 左右都显示时间轴 // 创建一个PlotPanel用来容纳plot,这个plot本身是无窗口的 cgScrollablePlotPanel plotControl = new cgScotPanel(plot); plotControl.Dock = DockStyle.Fill; // 把Seismic.NET的控件放在Windows的控件中 this.Controls.Add(plotControl);
程序运行效果:
当然,专业的剖面显示程序还需要许多交互性的功能,比如缩放、拖动、跟随鼠标显示关键信息、道反序、设置显示方式、显示十字光标等。
最近写出了十五个例子程序,可以一步一步地搭建起基本剖面显示程序。
例子一:迷你剖面显示程序.
例子二:响应右键点击事件.
例子三:缩放操作.
例子四:剖面的坐标变换.
例子五:十字光标.
例子六:封装十字光标.
例子七:漫游拖动剖面.
例子八:道反序显示.
例子九:输出CGM
例子十:重构zoom和panning
例子十一:状态栏显示测线号和CDP号.
例子十二:变密度与彩色显示.
例子十三:改变颜色棒.
例子十四:打开任意SEGY文件.
例子十五:读取SEGY的详细信息.
----==== Email: slofslb (GTD) qq.com 请将(GTD)换成@ ====----
版权声明:自由转载-非商用-非衍生-保持署名( 创意共享3.0许可证)
作者: 申龙斌的程序人生
---- 魔方、 桥牌、 象棋、游戏人生...
---- BASIC、C++、JAVA、 C#、 Haskell、 Objective-C、 Open Inventor、程序人生...
---- GTD伴我实现人生目标
---- SeismicPro地震剖面显示程序
---- Eclipse油藏数值模拟二进制文件格式解析和格式转换软件
本文转自申龙斌的程序人生博客园博文,原文链接:http://www.cnblogs.com/speeding/p/3528762.html,如需转载请自行联系原作者
http://www.cnblogs.com/speeding/