ejs rašė:
>> http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/matlab_external/f15351.html
>>
>>
>> javaArray() kuria masyvus...
>
> tą žinau. Man neramu dėl "Tiler" konstruktoriaus:
> "public Tiler(BlkImgDataSrc src,int ax,int ay,int px,int py,int nw,int nh)"
>
> kuris lyg ir nenori masyvo, bei 'super(src);' eilutės šiame
> konstruktoriuje: kurios klasės konstruktorių ji kviečia?
Na, tikrai nevaidinsiu java guru ir net žinovo, tačiau...
(galbūt bus teisinga ir kažkiek naudinga)
> img_ = javaArray('jj2000.j2k.image.input.ImgReader',size(img_tmp,2));
> for l=1:size(img_tmp,2)
> img_(l) = jj2000.j2k.image.input.ImgReader(img_tmp(1,l));
> end
Čia mano rutuliui kažkas labai nepatinka...
Galiu ir nusišnekėti, bet:
1.) Paaiškėjus, kad ImgReader yra abstrakti klasė, tai pirma eilutė
yra nonsensas;
2.) img_tmp, kaip suprantu, yra grynas matlab'o masyvas, tad
abstraktčios klasės konstruktorius ImgReader tikrai nesukurs iš jo
ImgReader objekto (toks egzistuoti negali). Man atrodo, kad ši eilutė
irgi yra nonsensas.
Jei teisingai supratau, tai norima iš matlab'o masyvo sukonstruoti
ImgReader interface'o objektus?
Tai daryti reikėtų kažkaip kitaip...
Iš ImgReader FM dalies, tokiais *objektais* galėtų būti viena iš
subklasių: ImgReaderPGM, ImgReaderPGX, ImgReaderPPM.
Nežinau ar visiškai nenukrypau (ar matlab'o masyve PGM/PGX/PPM
duomenys), tad pabaigai galiu pasiūlyti tik pasidomėti kaip gi šiuos
objektus sukurti ir į juos matlab'o masyvo duomenis perkelti.