Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.08;
Скачать: CL | DM;

Вниз

Как совместить MatLab & Delphi   Найти похожие ветки 

 
Галинка ©   (2005-10-31 15:16) [0]

Есть программа на дельфи, результатом которой является таблица значений сил. Надо бы ее как то передать в МатЛаб, с помощью которой надо построить полярные диаграммы.


 
Erik1 ©   (2005-10-31 15:18) [1]

Изучай Ole, MatLab является com сервером со своими методами у меня колега написал курсовую на эту тему.


 
Anatoly Podgoretsky ©   (2005-10-31 15:34) [2]

Не про СОМ ли речь?


 
reonid ©   (2005-10-31 16:09) [3]

посмотри
http://www.kladovka.net.ru/index.cgi?pid=list&rid=224


 
umbra ©   (2005-10-31 16:10) [4]

Надо почитать доки по объектной модели MatLab (должны быть в справке по MatLab), затем с помощью CreateOleObject создать нужный объект и делать с ним, что там необходимо.


 
Галинка ©   (2005-10-31 23:43) [5]

спасибо. "Будем искать" (с)


 
Галтнка   (2005-11-01 21:11) [6]

reonid, спасибо... сейчас "играю" вашим примером.

Анатолий, Вам отдельный большой привет из холодной Германии...:-*

Речь скорее всего про ком, точнее про Com. А где монжно накопать свойства этого сервера? В доках к Матлабу? Или?


 
reonid ©   (2005-11-01 21:46) [7]

Посмотри тут:

http://matlab.tutornet.ru/library/books/math/matlab/help/techdoc/apiref/com38.html


 
Галинка ©   (2005-11-01 22:38) [8]

А где можно поискать объектную модель МатЛаб? И что оно из себя представляет?


 
reonid ©   (2005-11-01 23:52) [9]

Как СОМ-сервер матлаб не имеет никакой
объектной модели (это не эксель с вордом).
По сути, весь СОМ-сервер матлаба укладывается
в три основные функции:
 Execute
 GetFullMatrix
 PutFullMatrix

И этих функций вполне хватает для большинства задач.


 
Галинка ©   (2005-11-03 12:24) [10]

реонид, мне бы графику матлабовскую таскать. узнать бы как они ее экспортируют в джипег, а оптом в имадж в своей проге вставлять. у меня вся прога графическая, очень много графиков строиться, две трети в полярных координатах. поэтому матлаб и нужен.

Execute насколько я поняла просто запускает дерективы самого матлаба, типа исполнения м-файлов. Это хорошо, но надо и обратно из матлаба графику в дельфи пеертаскивать.


 
Галинка ©   (2005-11-03 13:01) [11]

А вот это не оно?

http://matlab.tutornet.ru/library/books/math/matlab/help/techdoc/ref/figure.html


 
reonid ©   (2005-11-03 14:33) [12]

если через растровый файл, то можно написать что-нибудь
типа этого:

 MatlabServer.Execute("x = [0 1 2 3 4 5 6 7 8 9];");
 MatlabServer.Execute("y = x.*x");
 MatlabServer.Execute("plot(x, y);");
 MatlabServer.Execute("set(gcf, ""Visible"", ""off"");"); // чтоб не отсвечивала
 MatlabServer.Execute("print -dbmp -r72 c:\test");
   // -r72  - разрешение в дюймах
   // -dbmp ( -djpeg) - формат файла

 Image1.Picture.LoadFromFile("c:\test.bmp");


 
reonid ©   (2005-11-03 14:47) [13]

примечание
 print -dbmp -r72 c:\test
экспортирует в файл текущую фигуру.
Если нужно другую, надо явно указать
-f<хэндл фигуры>


 
reonid ©   (2005-11-03 17:36) [14]

Кстати, лучше в метафайл экспортировать - он масштабируется хорошо.

MatlabServer.Execute("print -dmeta -r72 c:\test");
Image1.Picture.LoadFromFile("c:\test.emf");
Image1.Stretch := True;



Страницы: 1 вся ветка

Текущий архив: 2007.04.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.055 c
15-1173127854
Petr V. Abramov
2007-03-05 23:50
2007.04.08
"Марш несогласных"


15-1173122947
DeadMeat
2007-03-05 22:29
2007.04.08
64 битная *.dll


15-1173765400
SerJaNT
2007-03-13 08:56
2007.04.08
phpMySQLAdmin


4-1163939380
SerMax
2006-11-19 15:29
2007.04.08
Key_Hook и зажатие клавиши


2-1174196769
Roman_S
2007-03-18 08:46
2007.04.08
сравнить текущее время с заданным DateTimePicker





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский