VC与MATLAB混合编程中MATCOM的应用

来源:互联网 发布:社会网络理论代表人物 编辑:程序博客网 时间:2024/05/16 09:55


本实例采用以C++6.0软件为主体,结合MTACOM和MATLAB7.80软件编程。


1、在VC++6.0中用MFC Wizard(exe)创建一个基于对话框名为series_visualization的工程。 在面板上添加六个ID分别为IDC_BUTTON1、IDC_BUTTON2、IDC_BUTTON3、IDC_BUTTON4、IDC_BUTTON5、IDC_BUTTON6的按扭,更改其标题为“载入数据lorenza.dat”、“载入数据lorenzb.dat”、“载入数据lorenzc.dat”、“更改颜色”、“更改线形”、“更改线宽”,添加两个组框分别为“数据操作”、“图像属性”。如下图所示:

 

 

图1

 

2、将三个数据文件命名为data1.txt、data2.txt、data3.txt,存放在C盘点根目录下面。启动MIDEVA ,File →New ,新建如下lorenza.m 文件:


m文件保存的默认位置为:Matcom  安装目录/Matcom45 ,生成的C++文件保存的默认位置为:Matcom  安装目录/Matcom45/Debug/,本例Matcom 安装目 录为C 盘,即C:/Matcom45/Debug/,在该目录下将会产生lorenza.h、lorenza.cpp、 lorenza.r 、lorenza.obj 文件。


3、将C:/Matcom45/Debug目录下的lorenza.cpp 文件的内容拷贝到void CExamleDlg::
OnButton1()下:


 


4、将C:/Matcom45/lib/下的matlib.h、v4501v.lib和C:/Matcom45/debug下的lorenza.h  文件拷贝到工程Example 目录下,然后在VC中将库文件和头文件加入到工程中:工程→添加工程 →Files ,选择刚刚拷贝到Example目录下的 matlib.h、v4501v.lib和lorenza.h文件。

 


图2

 

5、在series_visualizationDlg.cpp  中加入如下代码:



6、运行程序,点击“载入数据lorenza.dat”按扭,得出下图:

 


图3

 

这样便将IDC_BUTTON1处理好了,依照上述的方法逐次将各个BUTTON添加代码,所有BUTTON的代码见附录一。最终三份数据的曲线如下:

 

 

图4

 

 

更改颜色后的图像:

 


图5

 

更改线形后的图像如下:
 

 

图6

 

更改线宽后的图像如下:

 
图7

总结:

在本次的程序设计中,最大的收获是运用其他软件与VC结合,制作出精美的软件。VC作为一种底层语言,在底层运算有很大优势,但是在处理数据和画图上有很大的缺陷,而MATLAB运用矩阵运算,具有精美的画图能力,两者结合后,得到了满意的效果。