这个例子展示了如何使用MATLAB创建一个。net应用程序®函数,接受可变数量的参数而不是一个。
在本例中,执行如下操作:
使用MATLAB编译器SDK™乘积的MATLAB转换函数drawgraph
.NET类的方法(绘图机
),并将类包装在。net程序集中(VarArgComp
).的drawgraph
函数显示输入参数的绘图,并作为方法调用绘图机
类。
在c#应用程序中访问组件(VarArgApp.cs
)或Visual Basic®应用程序(VarArgApp.vb
)来实例化绘图机
类和使用MWArray
来表示数据。
构建并运行VarArgDemoApp
应用程序使用Visual Studio®net开发环境。
MATLAB函数 | drawgraph.m extractcoords.m |
MATLAB函数的位置 |
|
c#代码的位置 |
|
Visual Basic代码位置 |
|
复制以下文件夹,随MATLAB产品发货到您的工作文件夹:
matlabroot\工具箱\ dotnetbuilder \ \和例子版本\ \ VarArgExample净
在MATLAB命令提示符处,导航到新的VarArgExample \ VarArgComp
子文件夹。
检查drawgraph
和extractcoords
功能。
函数[xyCoords] = drawtext (colorSpec, varargin) numVarArgIn= length(varargin);xyCoords = 0 (numVarArgIn, 2);为x = 1:numVarArgIn xCoord = varargin{idx}(1);yCoord =变长度输入宗量{idx} (2);x (idx) = xCoord;y (idx) = yCoord;xyCoords (idx, 1) = xCoord;xyCoords (idx, 2) = yCoord;结束Xmin = min(0, min(x));Ymin = min(0, min(y));轴([xmin修复(max (x)) + 3 ymin修复(max (y)) + 3])情节(x, y,“颜色”, colorSpec);
函数[varargout] = ExtractCoords(坐标)为Idx = 1:nargout varargout{Idx}= coords(Idx,:);结束
控件来构建。net组件库的编译器应用程序或compiler.build.dotNETAssembly
使用以下信息:
场 | 价值 |
---|---|
库名称 | VarArgComp |
类名 | 绘图机 |
文件编制 | extractcoords.m drawgraph.m |
例如,如果你正在使用compiler.build.dotNETAssembly
类型:
buildResults = compiler.build.dotNETAssembly ([“extractcoords.m”,“drawgraph.m”],...“AssemblyName”,“VarArgComp”,...“名称”,“绘图机”);
有关详细信息,请参阅生成。net程序集和构建。net应用程序.
决定你是使用c#还是Visual Basic来访问组件。
c#
如果您正在使用c#,请为访问该组件的c#应用程序编写源代码。
此示例的示例应用程序位于VarArgExample \ VarArgCSApp \ VarArgApp.cs
.
下面的语句是调用的可选方法drawgraph
方法:
data = (MWNumericArray)绘图机。drawgraph(colorSpec, coords[0], coords[1], coords[2],coords[3], coords[4]); ... data= (MWNumericArray)plotter.drawgraph((MWArray)colorSpec, coords);
Visual Basic
如果您正在使用Visual Basic,请为访问组件的Visual Basic应用程序编写源代码。
此示例的示例应用程序位于VarArgExample \ VarArgVBApp \ VarArgApp.vb
.
下面的语句是调用的可选方法drawgraph
方法:
data = CType(绘图仪。drawgraph(colorSpec, coords(0), coords(1), coords(2), coords(3), coords(4)), MWNumericArray) ... data = CType(plotter.drawgraph(colorSpec, coords), MWNumericArray)
在这两种情况下VarArgApp
程序做以下工作:
初始化三个数组(colorSpec
,数据
,坐标
)使用MWArray
类库
创建一个绘图机
对象
调用extracoords
和drawgraph
方法
使用MWNumericArray
表示方法所需的数据
使用一个try - catch
块来捕获和处理任何异常
使用Visual Studio打开与应用程序语言对应的。net项目文件。
c#
如果您正在使用c#,则VarArgCSApp
文件夹中包含本例的Visual Studio . net项目文件。在Visual Studio .NET中双击打开项目VarArgCSApp.csproj
在窗户®资源管理器.你也可以从桌面上右键打开它VarArgCSApp.csproj并选择外开放的MATLAB.
Visual Basic
如果您正在使用Visual Basic,则VarArgVBApp
文件夹中包含本例的Visual Studio . net项目文件。在Visual Studio .NET中双击打开项目VarArgVBApp.vbproj
在Windows资源管理器.你也可以从桌面上右键打开它VarArgVBApp.vbproj并选择外开放的MATLAB.
创建对程序集文件的引用VarArgComp.dll
位于生成或安装程序集的文件夹中。
的引用MWArray
API。
如果您的系统上安装了MATLAB |
|
如果MATLAB运行时安装在您的系统上 |
|
构建并运行VarArgApp
Visual Studio . net中的应用程序。
程序显示如下输出:
结果= 1 2 2 4 3 6 4 8 5 10
libraryCompiler
|compiler.build.dotNETAssembly
|deploytool