Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как совместить MatLab & Delphi [D6, WinXP]


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

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


reonid   (2005-11-03 17:36:00) [1]

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

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


reonid   (2005-11-03 14:47:00) [2]

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


reonid   (2005-11-03 14:33:00) [3]

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

 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');


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

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

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


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

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

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


reonid   (2005-11-01 23:52:00) [6]

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

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


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

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


reonid   (2005-11-01 21:46:00) [8]

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

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


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

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

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

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


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

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


umbra   (2005-10-31 16:10:00) [11]

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


reonid   (2005-10-31 16:09:00) [12]

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


Anatoly Podgoretsky   (2005-10-31 15:34:00) [13]

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


Erik1   (2005-10-31 15:18:00) [14]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо