VB与MATLAB混合编程在三维船体曲面显示中的应用
VC与Matlab的混合编程实现图像的三维显示

基于VC与Matlab的混合编程实现图像的三维显示陈翔李进文吴小雅(广州气象卫星地面站广州 510640)摘要本文介绍了VC++与Matlab混合编程的一般实现方法,并实现对二维影像图的三维效果显示。
关键词 VC++ MATLAB M文件三维显示引言通常我们看到的图像是二维状态下的,而在某些特殊领域需要根据三维影像才能做出更进一步的信息抽取,这就需要通过后处理的手段根据原始二维影像虚拟出其三维效果。
MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。
它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。
根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。
MATLA具有强大的矩阵运算、数据处理和图形显示功能,其输出结果可视化,编程效率极高,极少的代码即可实现复杂的运行.然而其边解释边执行,运算效率较低,实现相同功能的代码跟其他编程平台相比运行时间相对较长,且不适合作为通用的编程平台。
因此,为系统整体效率考虑,采取具有很高编程效率的通用编程平台VC++与Matlab混合编程的方式,将更有助于发挥Matlab和VC的各自优势。
1 VC++与Matlab几种常用的集成方法 Matlab与VC++混合编程的具体方式有多种,根据Matlab是否运行可大致分为两类:Matlab在后台运行和可以脱离Matlab环境运行。
Matlab 5.0以后版本均自带C/C++编译器,可将其程序文件(M文件)转换为C-MEX或C/C++程序。
第一种方式是Matlab引擎采用客户机/服务器的计算方式,通过Windows的ActivcX通道和Matlab接口。
在具体的应用中,VC的程序作为前端客户机,通过调用Matlab引擎在后台与Matlab服务器建立连接,实现动态通信。
这种方法实现较为简单,不要求连接整个Matlab,只需要嵌入必要的Matlab引擎库,可大大地节省系统资源,但这种Matlab在后台运行,运行效率低下。
VB与MATLAB编程接口应用

l 引入MatrixVB使得VB中可以调用 Matlab函数
MatrixVB是MathWorks针对vB提供的一个 Matlab库,它提供了600多个函数,包括基本的数学 运赏和功能强大的信号处理、线性代数、串运算及图形 图像处理功能等,为VB提供了强大的功能扩展。在 VB中引用Mat“xVB,调用Matlab函数,可以避免重 复性劳动.减少开发人员实现算法和界面设计的困难。
①引入MatrixVB直接调用Matlab函数相对把 M文件编译为DLL文件操作上简单,不需要额外调 用其它文件。
②把M文件编译为DLL文件可以在vB中调用 比MatrixVB更多的函数,因为除了可以把MatrixvB 中的函数对应的M文件编译为DLL调用以外,还可 以把Matlab本身的其它函数或者是自已单独编写的 函数也同样编译为DLL文件。因此可以在MatrixvB 的基础上更进一步扩展vB的功能。需要注意的是在 编译M文件时,如果M文件函数中使用了MlDEvA 函数库中没有的函数,如在SigGenerate函数中调用 wgn,编译时会提示找不到wgn函数,不能正常编译, 这时只需要把该函数的M文件一wgn.m从Matlab 的安装目录中拷贝至MIDEvA安装目录即可通过编 译。
为了使读者更好的理解,这里借助阵列信号处理
的算法仿真的实例对调用Matlab函数的过程进行详
细说明(其中代码经过简化)。
①首先在操作系统中注册MMatrix.dIl动态链接
库(其安装文件可以从Mathworks公司网站下载),
注册成功后.在vB工程中引用MMatrix。
VB调用Matlab的COM组件实现二者混合编程

* 2007-12-27收到,2008-04-05改回** 基金项目:国家863课题(编号:2006AA 10Z 260)资助。
***孟力力,女,1982年生,硕士研究生,研究方向:温室环境建模与可视化模型。
文章编号:1003-5850(2008)06-0024-03VB 调用Matlab 的COM 组件实现二者混合编程Hybrid Pr ogr amming by Using COM of Matlab in VB Software孟力力 杨其长(中国农业科学院农业发展与可持续发展研究所 北京 100081)【摘 要】Matlab 具有强大的计算和图形处理能力,VB 具有良好的用户界面,将二者有机结合,可开发出功能强大的软件。
介绍了常见的五种方法。
为了使开发的VB 程序脱离Matlab 环境,详细介绍了一种基于组件对象模型(COM)的Matlab 与VB 混合编程方法,以COM Builder 为转换工具,将Matlab 函数文件转换为COM 组件,在VB 程序中调用这个组件。
并通过温室热环境模拟可视化模型的实现说明此方法。
【关键词】VB,Matlab,COM 技术,可视化模型中图分类号:TP 311.11文献标识码:AABSTRACT Matlab has power ful calculating and gr aphic pr ocessing ability ,VB has good user inter face .T he softwar e with powerful functions is developed based on combination of the above.Five methods are intr oduced in this paper.In or der to develop the VB pr ogr am wit hout Matlab environm ent ,the met hod based on COM is intr oduced in det ail.By mea n of Mat lab COM builder ,Matlab's function files can be converted into a COM component,which is applied in t he VB.The met hod is demonstr ated by implement ation of visual simulation model of gr eenhouse ther mal envir onment.KEYWORDS VB ,M atla b ,COM builder ,visual m odel Microsoft Visual Basic 是由微软公司开发的在Windows 操作平台上的主力编程语言之一,具有良好的可视化界面、程序集成化程度高、易学易用等特点,因而一经推出就风靡全球,是一种十分强大和有生命力的Windows 编程语言。
VB与MATLAB接口的实现

VB与MATLAB接口的实现今天,我们制作一个能够与Matlab进行交互的应用程序。
程序运行结果如图所示。
运行结果技术要点●引用Matlab库●执行Matlab命令●结束Matlab实现过程■新建项目打开Visual ,选择“新建项目”,在项目类型窗口中选择“Visual Basic项目”,在模板窗口中选择“Windows应用程序”,在名称域中输入“CnMatlab”,然后选择保存路径。
单击“确认”。
■添加控件向当前窗体添加五个Button按钮,两个Picture控件,一个Label控件,一个Hscroll控件和一个Vscroll控件。
单击菜单“项目|添加引用”,选中“Matlab Automation(V ersion5.3)Type Library”这一项。
注意:本程序只能在安装有Matlab的机器上运行。
■设置属性将Label控件和Command按钮的Text属性设置为与界面一致。
在此不再赘述。
■添加代码Dim str1 As String' 显示正弦图Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Command1.ClickDim matlab As Objectmatlab = CreateObject("matlab.application")matlab.MinimizeCommandWindow()str1 = "t=1:0.1:2*pi;y=sin(t);plot(t,y)"matlab.Execute(str1)matlab.Execute("print( gcf, '-djpeg', 'c:\foo')")matlab.Quit()matlab = NothingShowPic()End Sub' 显示三维扇形图Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Command2.ClickDim matlab As Objectmatlab = CreateObject("matlab.application")str1 = "sale=[100 150 400 250];pie3(sale,[0 0 1 0],{'春季','夏季','秋季','冬季'})"matlab.Execute(str1)matlab.Execute("print( gcf, '-djpeg', 'c:\foo')")matlab.Quit()matlab = NothingShowPic()End Sub' 显示三维螺旋线图Private Sub Command3_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Command3.ClickDim matlab As Objectmatlab = CreateObject("matlab.application")str1 = "t=0:0.1:8*pi;plot3(sin(t),cos(t),t)"matlab.Execute(str1)matlab.Execute("print( gcf, '-djpeg', 'c:\foo')")matlab.Quit()matlab = NothingShowPic()End Sub' 显示立体球图Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Command4.ClickDim matlab As Objectmatlab = CreateObject("matlab.application")str1 = "k = 5;n = 2^k-1;[x,y,z] = sphere(n);c = hadamard(2^k);surf(x,y,z,c);"str1 = str1 & "colormap ([1 1 0; 0 1 1]);axis equal"matlab.Execute(str1)matlab.Quit()matlab = NothingShowPic()End Sub' 显示立体波浪图Private Sub Command5_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Command5.ClickDim matlab As Objectmatlab = CreateObject("matlab.application")str1 = "[X,Y,Z] = peaks(30);surfc(X,Y,Z);colormap hsv;axis ([-3 3 -3 3 -10 5])"matlab.Execute(str1)matlab.Execute("print( gcf, '-djpeg', 'c:\foo')")matlab.Quit()matlab = NothingShowPic()End Sub■运行程序单击菜单“调试|启动”或单击图标运行程序。
Matlab与VB混合编程

3、生成COM组件
(1)设置系统路径
我的电脑属性 高级 环境变量 系统变量 Path选项,增加以下路径:
头文件:C:/MATLAB7/extern/include;
库:C:/MATLAB7/extern/lib/win32/microsoft/msvc60; DLL:C:/MATLAB7/bin/win32
,在算法上采用C++语句,所以运行速度较快,可应用于实时运算
。通过这种方法可以发布成脱离MATLAB和VB的安装软件, 在其他没有安装MATLAB和VB软件的计算机上都能运行。
8 /23
实现步骤(一) Matlab7.1 版
1、开发环境: Visual Studio 6.0 Matlab7.1安装路径不能有空格或中文 2、编写m文件 (注:m文件必须为m函数,不能是脚本文件) function plotcur x=0:0.01:2*pi; y=sin(x); set(gcf,'visible','off'); plot(y) print -dmeta; close(gcf);
1 /23
主要内容
一、 ActiveX技术 二、 动态链接库(DLL)
实现步骤(一) Matlab7.1 版
开发环境 编写m文件 生成COM组件 VB中调用动态链接库
应用程序发布
应用程序安装
实现步骤(二) Matlab2013a 版
2 /23
一、 ActiveX技术
ActiveX自动化协议是一种允许一个应用程序 或组件去控制另一个应用程序或组件的协议,VB和 MATLAB都支持ActiveX自动化协议。通过自动化 协议,可以在VB应用程序中执行MATLAB命令, 并从的MATLAB工作空间中获取数据以及向 MATLAB输送数据从而实现数据的交互。要实现这 种功能,用户首先必须获得Matlab ActiveX对象在 系统注册表中定义的名字─Matlab.Application。
基于VB与Matlab的混合编程方法_隗燕琳

2.1 采 用 动 态 链 接 库 DLL(Dynamic Link Libraries)方 法 编程
DDL 方 法 是 用 Matlab 提 供 的 COM 生 成 器 (COM Builder)[3],将 Matlab开发的算法做 成 组 件 ,这 些 组 件 作 为 独立的 COM 对 象,
步骤4打包和分 发 组 件:一 旦 组 件 生 成 成 功 就 可 以 打 包分 发 给 使 用 用 户,在 Component 菜 单 中 选 择 Package Component选项就可创 建 一 个 自 解 压 可 执 行 程 序;如 果 该
* 收稿日期:2013年2月27日,修回日期:2013年3月30日 作 者 简 介 :隗 燕 琳 ,博 士 ,工 程 师 ,研 究 方 向 :舰 船 磁 性 防 护 。
Vol.41 No.8 1388
计算机与数字工程 Computer & Digital Engineering
总 第 286 期 2013 年 第 8 期
基于 VB 与 Matlab的混合编程方法*
隗燕琳 陈进明 (92957 部 队 舟 山 316000)
摘 要 根据 Matlab强大的数据处理能力和 Visual Basic界面开发能力的编程优点,研究探讨 了 两 者 相 结 合 混 合 编 程 的 方 法 ,并 分 析 了各种混合方法中数据格式、数据交互机制及具体应用实例。采用两者混合编程对工程计 算 软 件 的 开 发 ,提 高 开 发 质 量 和 效 率 具 有 重 要 的 意义。
2013 年 第 8 期
计算机与数字工程
1389
项目要在 其 它 用 户 计 算 机 上 所 使 用,运 行 自 解 压 程 序 将 DLL 文件注册于其它计算机即可。
Matlab与VB混合编程
*打开生成的安装包中的
setup.Lst文件,[Bootstrap Files]字段里面只保留 VB6STKIT.DLL和 msvbvm60.dll几个文件, 其余的都删掉,否则在不同 版本的系统上使用可能会 报错。
16 /23
6、应用程序安装 (1)安装VB应用程序。在要安装的计算机上,新建一 个文件夹作为应用程序的安装目录。将打包好的VB程序 中的压缩包(.CAB)解压到安装目录中再进行安装。 ( 2 )安装 Matlab 控件。运行 COM 组件包中的 distrib 文 件夹下的类名.exe文件,运行过程中全部按“y”覆盖原 文件。将安装目录指向VB应用程序安装所在的目录(即 VB应用程序与Matlab控件安装在同一个目录下),否则 dll文件是没有办法注册的,选择后,全部点击Next,至 Matlab Component Runtime安装完成,DOS安装界面也 会随后自动关闭。
,在算法上采用C++语句,所以运行速度较快,可应用于实时运算
。通过这种方法可以发布成脱离MATLAB和VB的安装软件, 在其他没有安装MATLAB和VB软件的计算机上都能运行。
8 /23
实现步骤(一) Matlab7.1 版
1、开发环境: Visual Studio 6.0 Matlab7.1安装路径不能有空格或中文 2、编写m文件 (注:m文件必须为m函数,不能是脚本文件) function plotcur x=0:0.01:2*pi; y=sin(x); set(gcf,'visible','off'); plot(y) print -dmeta; close(gcf);
编译
编译过程
21 /23
4、生成自解压安装包 在本地使用的话,MATLAB会自动注册 COM 组件,无需发布;但如果要在没有安装 MATLAB的计算机上使用,安装包就需添加 MATLAB运行库MCR。点击PackageAdd MCR
MATLAB在三维曲面绘制中的应用
〇教育教学研究M A T L A B在三维曲面绘制中的应用丁嘉程(浙江师范大学数学系,浙江金华321004)摘要:本文总结了 M A TLA B在三维曲面的绘制中的一些实例。
在规则三维曲面的绘制上,给出了莫比乌斯带的绘制。
在不规则曲面绘制上,给出了离散点绘制光滑曲面的实例,通过设计飞机座椅靠背曲线的问题给出了在现实生活中三维图像绘制的应用。
关键词:M A TLA B语言;三维曲面;图像处理M A T L A B中规则曲面绘制可使用s u f和mesh命令,如莫比乌斯带绘制代码4=50;1!=0:卩丨八:2*卩丨^=一1: 0.2 :1;n1=length(u);n2 =length(v);for i=1:n1for j=1:n2 z(i,j)=v() * sin(u(i)/2)/2 ;y(i,j)=(1 +v(j) * cos(u (i)/2)/2) * sin(u(i)) ;x(i,j)=(1 +v(j) * cos(u(i)/2)/2) * cos(u(i)) ;end;end;surf(x,y,z);不规则曲面绘制本质上是依据一组离散的数据点来构造光滑的曲面。
现给出15个离散点,要求利用散乱点插值函数griddata拟合得一光滑曲面。
代码如下:x=[6 11.3 23 一3 12 11.5 19 16.3 21 1 5.4 12 —4 3 18];y=[1 1.1 0.9 2.8 5—3 —4 5 6 —6.3 5.9 7 5.2 6 9.9];z=[一0.4 0.5 2 2.6 0 0.3 0.4 0.6 1 1.16 0.79 0 0.5 0 0.18];[X,Y]=meshgrid(—4:0.5:22, 一11:0.5:10) ;Z=griddata(x,y,z,X,Y);mesh(X,Y,Z);hold on;plot3(x,y,z/ * ');不规则曲面绘制优化如下:scatter3(x,y,z);x=x';y=y';z=z';hold on;Z=[ones(length (x),1),x,y,x:2,x. * y,y,2,x,3,x,2. * y,x. * y,2,y,3];A=Z\z;X=min(x)—1:0.2 :max(x)+1;Y=min(y)一1: (max(y)一min(y)+2)/ (length(X)+1) :max(y)+1;[x,y]=meshgrid(X,Y);z=A (1)+A(2) * x+A(3) * y+A(4) * x.2 +A(5) * x. * y+A (6) * y.2 +A(7) * x.3 +A(8) * x.2. * y+A(9) * x. * y.2 +A(10) * y.3 ;mesh(x,y,z);还可以利用M ATLAB将较为庞杂的点集转化为图形。
MATLAB与VB混合编程方式简易教程
3.1 MATLAB与Visual Basic语言的混合编程方式MATLAB提供了与C/C++、Fortran语言的接口,但没有与Vsiual Basic语言的接口,要想实现MATLAB与Visual Basic的混合编程可以通过以下途径来实现。
1.通过ActiveX方式一是用Visual Basic开发服务器ActiveX组件,MATLAB作为客户端程序使用,事实上无论是用VB还是VC或者其他语言环境开发的ActiveX组件,对于MATLAB来说集成与调用方式是一样的,一般情况下很容易地将不同环境下开发的用途各异的ActiveX对象集成到一个MATLAB应用中来。
其使用方法见第5章关于MATLAB作为ActiveX的客户端使用方法。
二是在VB环境下可以通过ActiveX自动化接口将MATLAB作为Visual Basic语言的一个ActiveX 部件调用。
MATLAB ActiveX自动化服务的功能主要包括在MA TLAB工作空间执行MA TLAB 命令,以及直接从工作空间存取矩阵等,我们在第5章中关于MA TLAB作为服务器组件的部分的例子就是以Visual Basic应用程序,以MATLAB作为服务器客户端的。
2.通过动态链接库方式该种方式是一种间接调用MATLAB命令的方式,借助于C++与MA TLAB的接口,将MATLAB 的程序文件(.M文件)编译为动态链接库(.DLL),VB在代码中与调用其他语言编写的DLL文件一样调用MATLAB中.M 文件生成的动态链接库。
这种方法可以脱离具体的MA TLAB环境,运行效率较高。
3.通过嵌入VB的矩阵函数库MatrixVB的方法MatrixVB是由第三方(mathtools公司)提供的COM组件,包含了大量与MATLAB相似的函数与调用语法,可以加强VB内建数学运算与图形展示功能,在VB程序代码中可以像使用VB自己的函数一样使用MatrixVB的函数,而且可以不依赖于MATLAB的环境在Visual Basic中完成矩阵运算与图形绘制显示等功能,这种方法使用起来简单,编程效率较高。
基于VB与MATLAB接口实现三维图输出技术
在VB 环境下通过编程实现3D 图形的输出,需要大量的专业化的科学计算,这就给不是从事专业图形处理的科学技术人员带来很大麻烦。
为了解决这一问题,采用编程效率很高的通用编程平台VB 实现系统的控制与数据采集,调用具有强大矩阵运算、数据处理和图形输出功能的MATLAB 语言实现三维图形的绘制。
经常可见VC 调用MATLAB 实现三维图的绘制,但本方法运用界面友好易于编程的VB 语言调用MATLAB COM 接口编程,成功实现了系统的三维图输出,使得VB 语言的用途得到新的创新。
1MATLAB 的COM 自动化技术MATLAB 支持组件自动化(COM Automation ),即一个COM 协议,该协议允许一个程序或组件去控制另一个程序或组件。
MATLAB 支持的组件技术有以下三方面的内容:①在MATLAB 下运行其它软件的组件。
②在其它程序下运行MAT-LAB 的组件(包括MATLAB 自身)。
③将所需的MATLAB 功能,利用MATLAB 自带的COM Builder 工具自动转换生成组件,供其它程序使用。
在其它程序下运行MATLAB 的组件时,交换发起方的应用程序称为客户端,交换的响应方MATLAB 称为服务器端,自动化服务器的核心是包含一个或多个供其它应用程序创建和连接的基于Idispatch 的接口,MATLAB 作为自动化服务器时,可以被Windows 平台上任何可作为自动化控制器的应用程序使用。
通过使用MATLAB 自动化服务器功能,用户可以在自己的应用程序中执行MATLAB 的命令,并从MATLAB 的工作空间中获取数据以及向MATLAB 输出数据。
将MATLAB 作为一个自动化服务器使用时,必须知道MATLAB Axtive 对象在系统注册表中定义的名字ProgID ,一般使用MATLAB.application ,当应用程序使用MATLAB.application 作为ProgID 启动MATLAB 自动化服务器时,表示将MATLAB 自动化服务器作为一个共享服务器,当其它应用程序以同样的ProgID 开启MATLAB 服务器时,系统不再另外初始化一个服务器,而是使用同一个服务器来完成所有的请求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51
计算技术
与信息发展
1 引言
对船体曲面进行B 样条曲面表达时,往往需要进行大量的插值计算以及对曲面进行实时、直观的三维图形化显示。
通常采用的方式有两种:一种方法是用VC++或VB 等软件直接进行绘图,这种方法需要编写大量的绘图程序模块,想要达到较好的图形显示效果较难。
另一种是用VC++与OpenGL 结合的方式对图形进行直观显示,这种方法需要研究者较高的编程能力,占用较多的科研时间和精力。
而基于COM 控件的VB 与Matlab 的混合编程能集成VB 和Matlab 各自的优点,把计算过程和数据图形显示功能留给Matlab 完成,并对计算结果进行分析和可视化处理,将极大地提高程序的开发效率,从而很好的解决了这一问题。
2 COM 组件的创建
COM 组件技术是利用Matlab 的COM Build 工具将M 函数文件转换成COM 组件,COM 组件可用于任何支持组件技术的高级语言中,并可以生成不依赖于Matlab 环境的独立应用程序,可获得最快的运行速度。
(1)设置Matlab 环境,并编写函数形式的M 文件。
创建COM 组件之前需要Matlab 所列出的编译器中进行选择,从而对Matlab Compiler 进行配置。
Matlab 文件中只有函数文件能够编译成COM 组件,函数文件的文件名必须和函数名一致。
(2)创建COM 组件
Matlab 工作环境中执行comtool ,打开COM 生成器。
选择File/New Project ,在出现的COM 组件设置窗口中输入组件名和类型名。
若在其中调用了Matlab 绘图指令,在编译器选项中必须选中使用句柄图形库。
(3)在VB 编程环境中载人COM 组件,并调用接口函数即可实现功能。
3 在三维船体曲面显示上的应用
船舶是一种极为复杂的大型水上建筑物,各种船体的外表面大都是由复杂的不可展空间曲面构成,在进行工程计算
时需要在计算机里进行复杂曲面的数学表达。
本文利用非均匀B 样条原理对离散数据进行复杂船体外板曲面进行拟合。
在设置好编辑器后,在Matlab COM Builder 界面,把其创建成COM 控件,组件名和类型名为aa 和aadate ,由于调用了Matlab 绘图指令,则需要Matlab 提供的C/C++图形库,这时在编译器选项中必须选中使用句柄图形库。
在VB 程序的设计阶段,需打开VB 中的Project/Reference 对话框,选中已经生成的aa 1.0 Type Library ,如图1所示。
当单击显示按钮后将出现如图2所示的结果,三维图形可以进行旋转、放大等功能。
图1. 引用com 控件 图2. 显示结果4 结语
本文利用Visual Basic 开发了船体B 样条曲面表达的计算模块,在图形化显示部分则利用Matlab 的绘图函数来完成,在脱离Matlab 环境的情况下进行船体板曲面的图形化显示,三维图形显示效果逼真。
基于COM 控件的混合编程充分发挥VB 和MATLAB 各自的优点,降低了开发难度,便于程序的移植,缩短了开发周期,在科研过程中有着较高的实际的意义。
参考文献:
[1] 赵学强,孙伟伟.基于COM 的MATLAB 混合编程在图像
处理中的应用 [J]. 电脑知识与技术,2007(19):229-230.[2] 岳玉芳,尤忠生,张玉双.基于COM 的VB 与MATLAB 混
合编程 [J].计算机工程与设计,2005(1):61-65.
[3] 刘玉君,朱秀莉. 复杂船体外板曲面拟合研究 [J].大连理
工大学学报, 2005(3):226-229.
VB与MATLAB混合编程在三维船体曲面显示中的应用
□ 周 伟 纪卓尚 张雪彪
(大连理工大学船舶工程学院 辽宁·大连 116024)
摘 要:Matlab 具有强大的计算绘图能力但其可移植性和通用性比较差,VB 语言绘图能力差,但具有图形用户界面方面的开发优势。
而COM 组件将两者很好的集合在一起,集成后不仅能够充分发挥两种语言各自的优点,还可以完全脱离MA TLAB 的运行环境。
通过一个三维船舶曲面拟合显示的例子说明此方法简单,方便,可操作性强。
关键词:VB ;Matlab ;COM 组件;船体曲面显示
中图分类号:TP39 文献标识码:A 文章编号:1007-3973(2009)10-051-01。