资源简介
利用c#调用matlab画图,特别是对于三维图等对图形要求较高的场合。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace MatlabDirectort
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender EventArgs e)
{
}
private void button1_Click(object sender EventArgs e)
{
//原理是,c#调用matlab运行command语句,所以里面可以直接嵌matlab代码
MLApp.MLApp matlab = null;
Type matlabAppType = System.Type.GetTypeFromProgID(“Matlab.Application“);
matlab = System.Activator.CreateInstance(matlabAppType) as MLApp.MLApp;//这是一种保护写法,详细可查看c# as语句
string command;
////////////这一段改过了,command用了string.format对语句进行更改,使用方法可以查看string.format这个函数
command = string.Format(“clear all;xa = -{0}:0.1:{0};ya = xa;[xy] = meshgrid(xaya);z = x.^2 + y.^2;figure(‘Visible‘‘Off‘);;mesh(xyz);set(gcf ‘PaperPositionMode‘ ‘manual‘);set(gcf ‘PaperUnits‘ ‘centimeters‘);set(gcf ‘PaperPosition‘ [0 0 8 5]);“ textBox1.Text);
String path = Directory.GetCurrentDirectory();//获取当前路径
//
if (File.Exists(path + @“\Test1.tif“))
{
if (pictureBox1.Image != null)//
{
pictureBox1.Image.Dispose();//先释放掉picturebox,否则无法操作
}
File.Delete(path + @“\Test1.tif“); //直接删除其中的文件
}
/////////
matlab.Visible = 0;//不显示matlab主窗口
matlab.Execute(command);//执行上面的command
command = @“print(gcf ‘-dtiff‘‘-r700‘‘“ + path + “\\Test1‘);close all“;//保存图片,输出dif是因为这是一种矢量图格式,放大不会失真
matlab.Execute(command);//执行输出语句
pictureBox1.Image = Image.FromFile(path + @“\Test1.tif“);//加载图片
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 45568 2017-08-31 10:19 MatlabDirectort\.vs\MatlabDirectort\v14\.suo
文件 10752 2017-08-31 10:18 MatlabDirectort\MatlabDirectort\bin\Debug\MatlabDirectort.exe
文件 22016 2017-08-31 10:18 MatlabDirectort\MatlabDirectort\bin\Debug\MatlabDirectort.pdb
文件 11600 2017-08-31 10:21 MatlabDirectort\MatlabDirectort\bin\Debug\MatlabDirectort.vshost.exe
文件 490 2017-03-19 05:00 MatlabDirectort\MatlabDirectort\bin\Debug\MatlabDirectort.vshost.exe.manifest
文件 767818 2017-08-31 10:19 MatlabDirectort\MatlabDirectort\bin\Debug\Test1.tif
文件 2339 2017-08-31 10:27 MatlabDirectort\MatlabDirectort\Form1.cs
文件 3604 2017-05-23 17:30 MatlabDirectort\MatlabDirectort\Form1.Designer.cs
文件 5817 2017-05-23 17:30 MatlabDirectort\MatlabDirectort\Form1.resx
文件 4060 2017-05-14 17:05 MatlabDirectort\MatlabDirectort\MatlabDirectort.csproj
文件 2867 2017-08-31 10:27 MatlabDirectort\MatlabDirectort\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6606 2017-08-31 10:21 MatlabDirectort\MatlabDirectort\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 8704 2017-08-31 10:21 MatlabDirectort\MatlabDirectort\obj\x86\Debug\Interop.MLApp.dll
文件 4378 2017-08-31 10:21 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.csproj.FileListAbsolute.txt
文件 939 2017-08-31 10:17 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.csproj.GenerateResource.Cache
文件 711 2017-08-31 10:21 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.csproj.ResolveComReference.cache
文件 9177 2017-08-31 10:17 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.csprojResolveAssemblyReference.cache
文件 10752 2017-08-31 10:18 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.exe
文件 180 2017-08-31 10:17 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.Form1.resources
文件 22016 2017-08-31 10:18 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.pdb
文件 180 2017-08-31 10:17 MatlabDirectort\MatlabDirectort\obj\x86\Debug\MatlabDirectort.Properties.Resources.resources
文件 507 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Program.cs
文件 1442 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Properties\AssemblyInfo.cs
文件 2860 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Properties\Resources.Designer.cs
文件 5612 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Properties\Resources.resx
文件 1102 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Properties\Settings.Designer.cs
文件 249 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\Properties\Settings.settings
文件 887 2017-05-14 17:03 MatlabDirectort\MatlabDirectort.sln
..A..H. 20992 2017-08-31 10:27 MatlabDirectort\MatlabDirectort.suo
目录 0 2017-05-14 17:03 MatlabDirectort\MatlabDirectort\obj\x86\Debug\TempPE
............此处省略14个文件信息
评论
共有 条评论