Using WindowButtonMotionFcn with getrect / getline

2 vues (au cours des 30 derniers jours)
Dan
Dan le 6 Avr 2012
Hi,
I'm using a 'WindowButtonMotionFcn' callback on a figure to continually display the current position (in pixel and map coords) as the mouse moves over an image. This works just fine.
The problem I'm having, however, is that my GUI allows the user to specify a region of interest either as a rectangle (via getrect) or as a polygon (via getline). While the user is performing either of these operations my WindowButtonMotionFcn callback is no longer being triggered so the current position is no longer updated.
What steps are required to ensure that my callback continues to be triggered while using getrect / getline?
Thanks in advance for any replies.
-- Dan

Réponses (3)

Image Analyst
Image Analyst le 6 Avr 2012
I don't use the WindowButtonMotionFcn at all. I just set up impixelinfo(). However even that won't work when you're calling getrect() so I think you're out of luck as far as getting "live" coordinates while drawing the box.
  2 commentaires
Dan
Dan le 6 Avr 2012
Thanks for your reply, which basically confirmed that I'm probably SOL!
Image Analyst
Image Analyst le 6 Avr 2012
It might help somewhat if you call "axis on" right after you display your image.

Connectez-vous pour commenter.


Dan
Dan le 6 Avr 2012
This might not be the most elegant workaround, but I was able to call my original WindowButtonMotionFcn from within getrect/getline by making a local copy of getrect.m / getline.m and then making a few slight modifications as needed.
I'm still interested to find out if there is a less invasive solution, though!

Walter Roberson
Walter Roberson le 6 Avr 2012
Please see http://www.mathworks.com/matlabcentral/answers/2005-windowkeypressfcn-and-datacursormode-on as I suspect the mechanism is the same: zap a listener temporarily.
  1 commentaire
Dan
Dan le 6 Avr 2012
I'll take a look. Thanks for taking the time to respond.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by