日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

WPF(C#)与MATLAB混合编程

發(fā)布時間:2025/4/9 C# 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WPF(C#)与MATLAB混合编程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

WPF(C#)與MATLAB混合編程

? ? ? ?WPF可以為開發(fā)者提供便捷地構(gòu)建用戶交互界面的解決方法,而matlab則在科學(xué)計算方面有著無與倫比的優(yōu)勢,因此在一些需要將科學(xué)算法轉(zhuǎn)換為應(yīng)用軟件的項目中,需要應(yīng)用到WPF或者說C#和matlab的混合編程。相比于MFC和MATLAB的混合變成,C#與其的混編所需要做的準備工作更為簡單。

1、編輯需要被WPF程序調(diào)用的matlab函數(shù)文件,例如:test.m;

2、編譯test.m文件;

? ? (1)打開matlab的部署工具(我所用到的MATLAB版本為R2014a,系統(tǒng)為Windows7 32位)

? ? ? 將test.m文件所在的目錄設(shè)置為當(dāng)前工作目錄,在matlab命令行中輸入:“deploytool”,在出現(xiàn)的三個選項中選擇Library Compiler選項;

?

? ? (2)進行部署的設(shè)置

? ? ?如下圖所示,在編號1處選擇所輸出的庫類型,由于是針對C#進行部署,因此選擇.NET Assembly選項。在編號2處,點擊右側(cè)的加號按鈕添加需要被編譯的MATLAB函數(shù),例如本例中的test.m函數(shù),可以在其中添加多個MATLAB函數(shù)文件。編號3處是輸入所生成的庫的名稱。編號4處,可以設(shè)定所生成的類的名稱,可以將之前所添加的MATLAB函數(shù)添加進去,作為類中的一個函數(shù),這一步可以認為是新建一個類,在其中建立我們想要調(diào)用的MATLAB函數(shù)的C#實現(xiàn)。在前四步設(shè)定好之后就可以點擊編號5處的打包按鈕。打包所需的時間比較長,耐性等待程序打包完成。

3、將生成的DLL庫應(yīng)用到wpf項目中,并且在項目中進行相關(guān)設(shè)置

? ? ? 這一步這篇博客上面寫得很清楚,可以參考其中的內(nèi)容完成最后一步。

PS:筆者最近測試C#與Matlab混合編程的可移植性,分別測試了64位WIN7、win10X64、32位win7和64位win10,發(fā)現(xiàn)使用32位matlab內(nèi)的MWArray.dll,無法應(yīng)用到64位的系統(tǒng)上,因此需要針對不同的系統(tǒng)對項目進行編譯。

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/AlgrithmsRookie/p/7105396.html

總結(jié)

以上是生活随笔為你收集整理的WPF(C#)与MATLAB混合编程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。