c#调用Matlab的参数传递
c#调用matlab函数时,需要将C#数据类型转换成Matlab数据类型。
此时,需要引用MWArray.dll文件。该程序集包含了与Matlab数据交换的类。其中,MWArray类及每个派生类提供创建和访问 MATLAB 数据类型的方法。
所有类都派生自抽象的 MWArray 类和每个派生类,映射到 MATLAB 数据类型。但同样是抽象的 MWIndexArray 除外。
C#类 | 对应Matlab类型 | |
---|---|---|
MWNumericArray | 数值数组 | 使用此类将c# 数值数组(如int[] )转Matlab数值数组 |
MWLogicalArray | bool数组 | |
MWCharArray | 字符数组 | c#字符串对应Matlab的一个字符数组 |
MWStructArray | 结构数组 | c#对象 |
MWCellArray | 元组数组 | c#泛型集合 |
Matlab函数如下:
function [code,msg] = Test(inta,strp)% box=[minx,maxx,miny,maxy,minz,maxz ] %inta = [1,2,3 ]; %数组%strp = {'Mercury','Gemini','Apollo','Skylab','Skylab B','ISS'}; %元组%strp2 = { {'Mercury',30},{'Gemini',40},{'Apollo',0}}; %元组size(strp); % 1行6列fid=fopen('out.txt','wt');fprintf(fid,'%s\n',strp{1,2});code = size(inta);fprintf(fid,'%g\n',inta(1,2));msg = 'yesy';fclose(fid);return
end
其中
c#代码如下
public int Test(List<double> box, List<string> pathName){MatlabV4.Class1 clazz = new MatlabV4.Class1();MWNumericArray mw_sigma = new MWNumericArray(box.ToArray());// MWCellArray cellArray = new MWCellArray(1,pathName.Count);// MWNumericArray numericArray = new MWNumericArray();for (int i = 1; i < pathName.Count + 1; i++){cellArray[1,i] = ((MWCharArray)pathName[i - 1]);cellArray[1, i] = ((MWCharArray)pathName[i - 1]);}var ret= clazz.Test(mw_sigma,cellArray); //返回一个MWArray类型的变量MWNumericArray arr = (MWNumericArray)ret;return Convert.ToInt32(arr[1,1].ToScalarInteger());}
c#调用Matlab的参数传递相关推荐
- opencv通过dll调用matlab函数,图片作为参数
[blog 项目实战派]opencv通过dll调用matlab函数,图片作为参数 前文介绍了如何"csharp通过dll调用opencv函数,图片作为参数 ...
- Qt调用MATLAB
Qt调用MATLAB 生成的dll经验分享 由于项目需要将生成的数据转成C3D运动捕捉格式,目前无C++转换算法,有MATLAB算法,考虑到C++重新码算法的时间,选择了将MATLAB算法直接转成C+ ...
- c 使用matlab引擎,[转载]C与MATLAB混合编程之调用MATLAB引擎
Visual Studio调用MATLAB需要的配置已经在<Visual Studio调用MATLAB的配置>一文中给出了详细的步骤,本文将介绍混合编程的示例. 在C中调用MATLAB,据 ...
- VS下调用Matlab引擎
VS2008是当前主流的应用程序开发环境之一,开发环境强大,开发的程序执行速度快.但在科学计算方面函数库显得不够丰富.读取.显示数据图形不方便.Matlab是一款将数值分析.矩阵计算.信号处理和图形显 ...
- java调用matlab 数组_JAVA调用matlab程序 输入输出数据转换
JAVA调用matlab程序 输入输出数据转换 JAVA 程序调用 matlab函数(matlab导出jar包里的函数).JAVA解析matlab返回数据时,机器需要先安装matlab运行时环境 并 ...
- Java调用Matlab
1 Java调用Matlab方法举例 ◆ 将 Matlab 编写的 m 文件转化为 COM(Component Object Model) 组件,在 Java 程序中利用第三方工具包调用 com ...
- linux下java调用matlab程序,linux_java调用windows_matlab程序
0 说明 本文为研究java和matlab的混合编程,进行了详细的测试和探索,以解决linux环境下java程序调用matlab程序的一个应用. linux端的环境 :(运行java程序并调用wind ...
- VS调用matlab
可参照: VS2010调用Matlab的m文件所生产的dll实现二次规划算法.docx 全文-毕业论文-文档在线 http://max.book118.com/html/2013/1231/54228 ...
- Java调用Matlab程序
Java调用Matlab程序_Macrocell-CSDN博客_java调用matlab
最新文章
- 可能是东半球最好的 Curl 学习指南,强烈建议收藏!
- Android“应用克隆”漏洞分析
- python怎么读取图像的txt标注_使用包含文件名的.txt文件读取图像数据
- RobotFramework中查询数据库相关
- 《TCP/IP详解》读书笔记
- 简单的MySql游标创建
- R语言重抽样与自助法
- C/C++[codeup 1923]排序
- java规则引擎Drools实战
- 别让PPT把你绑架了
- win8 完全禁用uac的方法
- 用python刷微信投票_微信投票知道 微信刷票能否python抓取微信投票_大师网络投票刷票网...
- Android-服务Service(2)-bind绑定Service及两种生命周期
- mac创建文件服务器,mac命令行终端怎么创建文件 mac命令行终端创建文
- 四步教你用网站源码建站
- 硬件开发——语音模块开发 (包含语音识别模块代码等资料包 )
- 有谁在阜阳计算机学校教英语,阜阳计算机学校怎么样、好不好
- 前端自学day04——css基础
- 首汽约车携手AWS,发布出行行业首个定制智能语音解决方案
- 在线教育行业未来的发展趋势
热门文章
- ssh、sftp、scp免密码登录
- 数据结构之排序算法(C语言)
- 圣杯布局简单结构代码!
- |Vijos|树状数组|P1512 SuperBrother打鼹鼠
- ios app提交之前需要哪几个证书
- 理解 __doPostBack(转)
- Android通过JNI调用驱动程序(完全解析实例)
- python接口测试面试题及答案_100道接口测试面试题收好了!【建议收藏】
- 浅析软件研发成本估算过程之估算软件项目工作量
- 大型网站系统与Java中间件实践 01 认识分布式