Getting no results from a mouse click when using ButtonDownFcn with imshow

1 次查看(过去 30 天)
I'm unable to obtain (x,y) coordinates of an image using a mouse click with "imshow". I can do it with "image" but not with "imshow", and I need "imshow". I've seen lots of other posts on this issue, but none of their solutions seem to work, or the discussion is too technical for me.
I have 4 images arranged two by two, and I'm interested in clicking only on the image in subplot (2,2,3). But when I click nothing happens. Apparantly my function "clicky4" is not being called. Here's the relevant section of code:
global x y
.........
Image = single(rgb2gray(FilterRGBImage));
subplot(2, 2, 3);
vv = imshow(Image,'InitialMagnification', 'Fit');
set(vv, 'HitTest','off','PickableParts','none');
% Try to use the mouse to select a pixel
set(gca,'ButtonDownFcn', @clicky4)
And here is my function "clicky4":
function clicky4(gcbo,eventdata,handles)
%This function is supposed to grab the position (x,y) of the mouse upon a click
global x y
v = get(gca,'Currentpoint');
hold on
x = v(1,1);
y = v(1,2);
end
Any suggestions will be much appreciated. I'm a relative beginner at this stuff....

回答(1 个)

Image Analyst
Image Analyst 2019-3-16
Would ginput(1) or impixelinfo help you?
  8 个评论
jack feinberg
jack feinberg 2019-3-17
Yup. That was the problem; my @function was stored inthe wrong location. A beginner's mistake! Thanks. It all works now!
Jan
Jan 2019-3-19
@jack feinberg: Please use flags only to inform admins and editors about contents, which might conflict with the terms of use, but not to post a comment. Thanks.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Display Image 的更多信息

标签

产品


版本

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by