2012-03-20 2 views
0

У меня есть определение вектора как typedef std :: vector IpVec; Ipvec ips; // это объект i Use.Передача векторного объекта в Matlab trough Mex рутин

Ipoint класс, который имеет следующие переменные:

float x, y; 
float scale; 
float orientation; 
int laplacian; 
float descriptor[64]; 
float dx, dy; 
int clusterIndex; 

Как вернуть IPTS обратно в Matlab?

+0

Вы уже освоили гораздо более простую операцию возврата 1D-вектора, скажем, плавающих из C/C++ в Matlab? Если нет, я предлагаю вам сделать это, прежде чем решать эту проблему напрямую. –

+0

Я сделал для возвращения 1D-вектора float в matlab. Но я застрял здесь. – user1280704

+1

Посмотрите на документацию для возврата структур из файлов mex. Сначала попробуйте вернуть данные элемента одного класса lpoint в структуру, а затем обработать до возврата вектора. – learnvst

ответ

0

Там пример в комплекте с Matlab, который можно открыть с помощью этой команды:

edit([matlabroot '/extern/examples/mx/mxcreatestructarray.c']); 

Я думаю, что она охватывает все, что вам нужно сделать.