Matlab混合程式設計之引擎方式(C 篇)

2021-06-26 05:01:08 字數 3117 閱讀 8752

跟上篇文章一樣,也是用引擎的方式,但配置方法還是很不一樣的。

配置環境:

vs2013(64

位)+matlab2013a(64

位)+win8.1(64

位)以matlab

安裝路徑:

c:\program files\matlab\r2013a

為例1.

新增引用:

乙個是新增

mwarray.dll

的引用,路徑為:c:\program files\matlab\r2013a\toolbox\dotnetbuilder\bin\win64\v2.0,

另乙個是新增

matlab

型別庫的引用。在「引用」上右擊「新增引用」,如下圖

加入命名空間:

using

mathworks;

using

mathworks.matlab;

using

mathworks.matlab.net.arrays;

using

mathworks.matlab.net.utility;

using

3.

示例**:

一共嘗試了四種方式,其中兩種成功,兩種失敗,具體**如下(加入到

button

事件裡):

引擎方式1,失敗

);引擎方式2,失敗

);引擎方式3,成功

matlab =

null

;type

type

.gettypefromprogid(

); matlab = system.

activatoras;

string

command;

command =

"t=2:0.2:4*pi;y=sin(t);h = plot(t,y)"

;string

path =

directory

.getcurrentdirectory();

//獲取當前路徑

);引擎方式4,成功

o_matlab =

new();

o_matlab.visible = 0;

string

command1, command2;

command1 =

"t=0:0.01:2*pi;y=sin(t);h=plot(t,y)"

;//matlab

指令碼命令列

string

path =

directory

.getcurrentdirectory();

//獲取當前路徑

command2 =

@"print(gcf,

'-djpeg',

'"+ path +

"\\test1');close all"

; o_matlab.execute(command1);

o_matlab.execute(command2);

//執行matlab命令

讀取影象

得到結果如下圖:

VC 與Matlab混合程式設計之引擎操作詳解(1)

visual c 是當前主流的應用程式開發環境之一,開發環境強大,開發的程式執行速度快。但在科學計算方面函式庫顯得不夠豐富 讀取 顯示資料圖形不方便。matlab是一款將數值分析 矩陣計算 訊號處理和圖形顯示結合在一起,包含大量高度整合的函式可供呼叫,適合科學研究 工程設計等眾多學科領域使用的一種簡...

VC 與Matlab混合程式設計之引擎操作詳解

visual c 是當前主流的應用程式開發環境之一,開發環境強大,開發的程式執行速度快。但在科學計算方面函式庫顯得不夠豐富 讀取 顯示資料圖形不方便。matlab是一款將數值分析 矩陣計算 訊號處理和圖形顯示結合在一起,包含大量高度整合的函式可供呼叫,適合科學研究 工程設計等眾多學科領域使用的一種簡...

matlab混合程式設計之mex檔案

1 mex檔案結構 a 子程式 b 入口程式 void mexfunction int nlhs,mxarray plhs,int nrhs,const mxarray prhs 2 語法 include mex.h void timestwo alt double y,double x void ...