How to initiate the double-click callback function once ROI is moved by user?
7 次查看(过去 30 天)
显示 更早的评论
I would like to add an ROI (line) to an image frame. I would like to specify the size of that line but allow a user to move it within the frame. I am able to generate the line of specified length with the following code but I am unsure how to indicate that once the user moves the ROI and double clicks, the new location is accepted and the script proceeds.
Thanks in advance for any assistance.
Display image and line:
imshow(frame);
h = images.roi.Line(gca,'Position',[600 600;600 650])
addlistener(h,'MovingROI',@allevents);
addlistener(h,'ROIMoved',@allevents);
customWait function:
function pos = customWait(hROI)
l = addlistener(hROI, 'ROIMoved', @allevents)
uiwait;
delete(l)
pos = hROI.Position;
end
0 个评论
采纳的回答
Vimal Rathod
2020-8-17
You could refer to the following link to refer the double-click workflow for ROI using wait function and modify it according to your use case. You can disable the mouse event listeners in your double-click listener function so that you can restrict the user from modifying the ROI after double-clicking.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!