Buttondownfcn callback on live video data (preview)
Info
This question is closed. Reopen it to edit or answer.
Show older comments
Hello,
I am currently trying to initiate a callback routine when the user presses on an axis that contains a live video stream, i.e.
frame = getsnapshot(handles.vidObj);
axes = imshow(frame, 'Parent', handles.axes_stream);
preview(handles.vidObj, axes); % assign vidObj to axes
However, I have not yet been able to achieve this despite looking at various discussions. I presume it is because the displayed video is stopping my mouse button being registered and the callback routine is not working.
Any help would be appreciated.
1 Comment
Sam
on 18 Nov 2012
Answers (1)
Sean de Wolski
on 16 Nov 2012
0 votes
I am guessing that preview is nullifying your ButtonDownFcn (just an educated guess though). Thus you would need to reinstate your ButtonDownFcn on the axes after calling preview.
8 Comments
Sam
on 16 Nov 2012
Sean de Wolski
on 16 Nov 2012
Is the axes' 'Hittest' turned off?
You may want to check this.
get(ax,'hittest');
And look in the documentation for axes properties for a more thorough explanation of why.
Sam
on 17 Nov 2012
Sean de Wolski
on 19 Nov 2012
Well I would guess that is the issue - you want the 'HitTest' to be on :).
If the axes can't become the current object, it's ButtonDownFcn will never fire...
Sam
on 22 Nov 2012
Sean de Wolski
on 26 Nov 2012
Sam, if your license's SMS is current, please contact Technical Support.
Image Analyst
on 26 Nov 2012
Edited: Image Analyst
on 26 Nov 2012
I haven't tried clicking on the live video axes. Would clicking on a button be an acceptable workaround? Because I know I can click on buttons while I have a live image in an axes, and it does the callback operations just fine.
Sam
on 26 Nov 2012
This question is closed.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!