您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > vb和surfer和fortran混合编程
长安大学毕业论文Vb6.0调用Fortran程序并用surfer7.0实现数据可视化姓名:韩埃洋专业:地球物理学年级:学士二零一一年六月摘要摘要Fortran是世界上出现最早的高级程序设计语言,最适用于数值计算,所以在数值计算领域大量的程序都是用Fortran所写。但是大部分的Fortran程序都是在dos下运行的,使用很不方便,如果把早期的Fortran程序转换成其他语言,则工作量是巨大的。Visualbasic是一门简单易学的面向对象的高级程序设计语言,在界面设计方面功能强大,深受非计算机专业人士的喜爱。利用vb编写界面调用Fortran程序可以很好的利用Fortran和vb的优点,克服各自的不足。本文将通过实例详细说明:Fortran语言如何编译成动态链接库(DLL)文件,怎么用VisualBasic语言调用Fortran写的Dll文件,VisualBasic语言调用Fortran写的动态链接库文件时参数传递时须注意的问题。Surfer是美国GoldenSoftware公司研制开发的、基于Windows系列操作系统的地质地理数据绘图软件,具有强大的二维绘图和数据处理能力,并有一定的三维显示功能,是专门针对绘图的软件。从Surfer7开始,软件增加了Automation技术,支持VB编程语言的二次开发。目前,最新的版本是2002年2月发布的Surfer8.0。在地学领域中,有大量的数据需要使用Surfer进行绘制成图,但如果全部工作都由手工来完成,工作量就会大大地增加。本文采用面向对象技术,与Surfer接口,快速实现图形、图像绘制。本文详细地介绍了如何在VB6.0应用程序中,利用Surfer嵌入式编程实现数据的快速可视化,并给出应用实例。关键词动态链接库VisualBasicFortransurfer7.0混合编程目录目录摘要................................................................................................................................1关键词............................................................................................................................1第一章绪论..............................................................................................................11.1问题的提出及研究的意义............................................................................11.2国内外研究现状..........................................................................................11.2.1调用Fortran编译的可执行文件......................................................21.2.2调Fortran动态链接库.....................................................................21.2.3俩种方法的比较.................................................................................21.3本课题研究的内容........................................................................................31.3.1Fortran动态链接库的建立..................................................................31.3.2VB6.0调用Fortran创建的Dll..........................................................41.3.3Fortran与vb之间参数传递.............................................................41.3.4surfer7.0锲入vb6.0实现数据可视化.............................................5第二章实例软件的介绍..............................................................................................62.1实例软件主要功能........................................................................................62.2较难实现地方(撤销重复的实现)............................................................8目录2.2.1公共变量声明.....................................................................................82.2.2初始化变量..........................................................................................82.2.3打开文件修改时的代码......................................................................82.2.4用户点击撤销按钮时的代码.............................................................92.2.5用户点击恢复按钮时的代码...........................................................10第三章软件功能一(曲线圆滑)............................................................................113.1设计思路......................................................................................................113.2打开菜单......................................................................................................113.2.1数据的格式.......................................................................................123.3参数选择窗口..............................................................................................133.4圆滑菜单......................................................................................................133.5较难实现的地方一(vb调用*.exe文件)...............................................153.6较难实现的地方二(surfer7.0锲入vb6.0实现数据可视化)................153.6.1vb6.0中对surfer的声明................................................................153.6.2ContourMap的绘制........................................................................163.6.3实例软件中调用surfer绘图的完整代码......................................16参考文献......................................................................................................................19致谢..............................................................................................................................20目录长安大学学士学位论文1/25第一章绪论1.1问题的提出及研究的意义Fortran是世界上出现最早的高级程序设计语言,Fortran语言以其清楚的结构层次、强大的数值分析能力,而广泛应用于数学与工程计算。但是Fortran进行可视化编程的难度较大。VisualBasic语言(简称VB)以其迅速有效的编制交互界面设计性能,被越来越多的应用于Windows的环境下的可是化界面设计。VB具有简单易学的特点,它所提供的对象链接和嵌入(OLE,ObjectLinkingandEmbeding)工具,为利用其它软件进行数据的可视化处理提供了方便。VB的缺点是运算速度慢,不合适进行大型数值计算。用VB与Fortran混合编程可以充分的利用俩种语言的优点,克服他们的不足。本论文将通过实例说明VB与Fortran的混合编程的方法:用VB设计运行界面及控制程序,将Fortran程序编译成动态链接库(DLL文件)并由VB程序调用之。整个过程Fortran程序都在后台运行,计算结束后结果显示在VB界面上。surfer7.0软件是美国Golden软件公司编制的专业绘图软件,它是一款十分流行的功能强大的实用软件,可以方便地绘出各种等值线图。在瞬变电磁曲线圆滑系统中,可以利用VB6.0打开测量的值,然后再打开surfer7.0程序绘制等值线图,也可以用VB6.0语言自主开发程序绘制等值线图。但工作量又比较大。所以,考虑采用在VB6.0中调用surfer7.0软件来实现绘制等值线图,使绘图工作在VB6.0后台用Surfer8.0进行,然后再把绘图结果在VB6.0界面中显示。这样可以大大减少编程工作量,提高工作效率和作图精度。1.2国内外研究现状目前实现VB与Fortran的混合编程主要方法有两种,即VB直接调用可执行文件(利用shell函数直接调用Fortran编译出来的可执行文件)和利用动态链接库Dll(DynamicLinkLibrary)与Fortran混合编程。长安大学学士学位论文2/251.2.1调用Fortran编译的可执行文件采用VB直接调用RSTDT:H可执行文件的方法,就是利用Vb编写程序的界面部分,然后将Fortran的应用程序编译成可执行的应用程序,在需要计算时,由Vb应用程序启动这个应用程序,并在计算结束后,将所需的结果显示在Vb的界面上。Fort
本文标题:vb和surfer和fortran混合编程
链接地址:https://www.777doc.com/doc-3369808 .html