作者DoUBLE (看清了?是看轻了!)
看板MATLAB
标题[问题] GUI里各BUTTON的参数传递
时间Wed Oct 30 11:50:31 2013
我在某个BUTTON_A点下去会呼叫一个写好的pick.m档 用来在图上点标记点。
然後我想记录这些标记点的位置,我用了setappdata去存。
然後我想要按下BUTTON_B时可以抓到setappdata的资料。
但试了好多方法都还是不行。
有没有高手可以给我一点指导。感谢。
GUI:
function BUTTON_A_Callback(hObject, eventdata, handles)
% hObject handle to FeaturePoint (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
pick('照片.jpg');
% --- Executes on button press in fpok.
function BUTTON_B_Callback(hObject, eventdata, handles)
% hObject handle to fpok (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
globe fpoutput
fpoutput=getappdata(0,'Out')
------------------------------------------------------------------------
pick.m:
function pick(img_filename)
global height;
global width;
global out;
out=[]
A=imread(img_filename);
height=size(A,1);
width=size(A,2);
imshow(A);
hold on;
im_h=imhandles(gcf);
set(im_h,'ButtonDownFcn',@pick_point);
function pick_point(~,~)
c_p=get(gca,'CurrentPoint');
plot(c_p(1,1),c_p(1,2),'r+');
TP=[c_p(1,1),c_p(1,2)];
TP(1)=TP(1)/width;
TP(2)=1-(TP(2)/height);
disp(TP);
out(end+1,:)=TP;
setappdata(0,'Out',out);
end
end
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.54.47
※ 编辑: DoUBLE 来自: 140.114.54.47 (10/30 11:57)