Parsi Coders
مطلب و دلفی - نسخه قابل چاپ

+- Parsi Coders (http://parsicoders.com)
+-- انجمن: Software Development Programming (http://parsicoders.com/forumdisplay.php?fid=37)
+--- انجمن: Pascal/Delphi (http://parsicoders.com/forumdisplay.php?fid=45)
+---- انجمن: Delphi (http://parsicoders.com/forumdisplay.php?fid=69)
+---- موضوع: مطلب و دلفی (/showthread.php?tid=85)



مطلب و دلفی - mehrdadgh - 04-27-2011

سلام
امین جون مبارکه

من میخام یه جند خط برنامه ای که عمدتا مربوط به ماتریس هست رو تو دلفی استفاده کنم
این طور که بیام و یه جند تا آیکون ایجاد کنم و ورودی ها رو با دلفی بگیرم و بدم به متغیرهایی که تو متلب نوشتم و بعد نتیجه رو نمایش بدم

یه کدهایی هست که دلفی مطلب رو ساپورت میکنه ولی من زیاد سر در نمیارم
اونی که گفتم درسته؟


RE: مطلب و دلفی - Amin_Mansouri - 04-27-2011

سلام
خوش امدی به فروم مهرداد جان
قبلا مبین بابلی یه توضیحاتی در موردش داده بود اینم یه نمونه سورس کد :
کد:
uses
comobj;
var
v : variant;
mreal : olevariant;
mimage : olevariant;

begin begin
i,j : integer;

mreal := vararraycreate([0, 1, 0, 3], vardouble);
mimage := vararraycreate([0,0,0,0], vardouble);
v := createoleobject('matlab.application');
v.execute('a=[1 2 3 4; 5 6 7 8]');
v.getfullmatrix('a','base',vararrayref(mreal),vararrayref(mimage));
for i := 0 to 1 do
for j := 0 to 3 do
stringgrid1.cells[j,i] := mreal[i,j];
v.execute('peaks');
mreal := vararraycreate([0, 1, 0, 3], vardouble);
mimage := vararraycreate([0,0,0,0], vardouble);
for i := 0 to 1 do
for j := 0 to 3 do
mreal[i,j] := i+4;
v.putfullmatrix('b','base',vararrayref(mreal),vararrayref(mimage));
end;
یک مثال دیگر
کد:
کد:
unit TestMatlab1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComObj;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
Matlab : Variant;
zr, zi : OleVariant;
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
i, j : integer;
begin
Caption := 'Matlab Magic';
Matlab := CreateOleObject('Matlab.Application'); // Cria instância de objeto
zr := VarArrayCreate([1, 16, 1, 16], varDouble); // Cria array de Variants com double precision
zi := VarArrayCreate([0, 0], varDouble);
for i := 1 to 16 do
for j := 1 to 16 do
zr[i, j] := Random; // Define a matriz zr (16, 16)
Matlab.PutFullMatrix('a', 'base', VarArrayRef(zr), VarArrayRef(zi));
Matlab.Execute('contour(a)');
// Matlab := Unassigned; // Libera objeto
end;
end.



RE: مطلب و دلفی - mehrdadgh - 04-29-2011

امین جان مرسی
ولی من سر در نیاوردم

ببین مبین میگفت که برای اینکه دستورات مطلب رو تو دلفی به کار بگیری باید خود مطلب هم نصب باشه
راه دیگه ای نیست ؟ چون من میخام نرم افزار رو exe کنم بدم استاد


RE: مطلب و دلفی - Amin_Mansouri - 04-29-2011

مهرداد جان وقتی مطلب نصب باشه
یه سری توابع میده به برنامه نویس بدون خود مطلب نمیشه (از شدنی میشه ولی به دردسرش نیمرزه)
خود استاده مطلب رو سیستمش داره مطمئن باش