在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1)通过菜单工程/选项,打开设置属性页,进入 Directories 页面,在目录下拉列表框中选择Include files,添加路径:"C:\matlab\extern\include"(假定 matlab 安装在C:\matlab 目录) 。 不过出现了.dll文件找不到的问题,慢慢解决! 解决方法:把D:\matlab2009\bin\win32加入环境变量,还必须重启,这时候才解决。 随便对一个button写个点击事件: 添加代码: void CMatlabVC1Dlg::OnButton1() { // TODO: Add your control notification handler code here Engine *ep; MessageBox("单击确定按钮,启动Matlab引擎!","start"); if(!(ep=engOpen("\0"))) { MessageBox("Matlab引擎启动失败!","falure"); } MessageBox("成功启动Matlab引擎,下面绘制方格图!","start"); engSetVisible(ep,0); //隐藏Matlab窗口 engEvalString(ep,"[x,y]=meshgrid([-2:.4:2]);"); engEvalString(ep,"Z=x.*exp(-x.^2-y.^2);"); engEvalString(ep,"fh=figure('Position',[300 400 400 300],'Color','w');"); engEvalString(ep,"ah=axes('Color',[.8,.8,.8],'XTick',[-2 -1 0 1 2],'YTick',[-2 -1 0 1 2]);"); engEvalString(ep,"sh=surface('XData',x,'YData',y,'ZData',Z,'FaceColor',get(ah,'Color')+0.15,'EdgeColor','k','Marker','o','MarkerFaceColor',[.5 1 .75]);"); MessageBox("成功绘制方格图!","绘图"); engClose(ep); } ctrl+F5: ok,出结果,不过相当的慢,因为必须启动mtalab,在matlab里运行结果,然后显示: 就显示个这个图,因为前期代码用C++写的,现在到后期用matlab明显更轻松,而且即便而二者分离也能完成功能实现,而现在只不过是想在MFC里统一实现调用,交互性更强吧。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论