Question about mouse click on figure

2 views (last 30 days)
Hello,
I am trying to put marks on the figure where I click and save it. I used 'ginput'
imshow('image.png')
for i = 1:1000
[p(i,1), p(i,2)] = ginput;
hold on;
plot(p(i,1), p(i,2));
hold off;
end
I found out that 'ginput' is not only taking 'left mouse click,' but also any other mouse clicks or keyboard pressing. Also, I don't know how to undo marking on the figure.
My questions are: Is there any way to only use left mouse click? And, is there any way to undo marking on the figure?
I will appreciate any advice.
Thank you

Accepted Answer

Mischa Kim
Mischa Kim on 20 Feb 2015
This code snippet should get you started:
button = 1;
getpt = 1;
[x,y,button] = ginput(1);
XY = [x y];
while (getpt == 1)
if (button == 1) % draw line for left mouse click
[xn,yn,button] = ginput(1);
XY = [XY; xn yn];
hold on
plot([x; xn],[y; yn])
x = xn; y = yn;
end
if (button == 3) % clear lines for right mouse click
children = get(gca, 'children');
delete(children);
getpt = 0;
end
end

More Answers (0)

Categories

Find more on Visual Exploration in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!