matlab与C#交互方式
- .NET组件
- 说明
利用m文件生成dll再由C#调用。优点是可移植型较好,目标机不需要安装Matlab,只需要安装MCRinstaller.exe及dll的注册,缺点是配置较为复杂,受各种版本的影响。此方法编译时候选择的.NET版本必须与VS中建立的工程的.NET版本一致,并且64位matlab编译的dll文件必须在VS中选择64位编译器.
- 步骤
File->New->Deployment Project Type一定要选择.Net Assembly
新建一个工程名为robotSimulation
选择对应.Net版本,并添加m文件
将类名改为CalculateTheta,编译
拷贝distrib目录下生成的类库文件,
在C#中引用上面的robotSimulation.dll文件。找到matlab安装目录下的MWArray.dll文件
在C#项目中引用上面的dll文件,并在代码中使用如下名字空间:
using MathWorks.MATLAB.NET.Arrays;
using MathWorks.MATLAB.NET.Utility;
using robotSimulation;
在程序中可以直接新建CalculateTheta类型的对象,并调用CalculateThetaByCoordinate及CalculateThetaByCoordinate_Palm方法,如下:
CalculateTheta ct =