Using impixelinfo command

Hi,
I used guide command to create a user interface for my matlab's code. The interface contains 2 axes: axes1 - 3D graph, axes2 - an image. I'm trying to obtain the coordinates of the graph in axes1, when the mouse is on top of it. I was told that I should use the impixelinfo command, but unfortunatly, i didn't managed how to use it.
I will be grateful for a help, Regards

 采纳的回答

Walter Roberson
Walter Roberson 2011-3-3

0 个投票

Which Matlab version are you using? By 2008b at latest, the documentation for impixelinfo says,
IMPIXELINFO(H) creates a pixel information tool in the figure specified by the handle H, where H is an image, axes, uipanel, or figure object. Axes, uipanel, or figure objects must contain at least one image object.
Thus, the function would work for handles.axes2 because that axes contains an image.
To obtain coordinates within axes1 you may wish to activate datacursormode
Alternately, you may wish to set the figure WindowButtonMotionFcn property and have that callback function get() the figure CurrentPoint property and do whatever you need to do with it. If you only need the information upon clicks, use a WindowButtonDownFcn callback.

1 个评论

Thank you very much, you help me a lot.
The 'datacursormode' is perfect for me!!
Thanks :)

请先登录,再进行评论。

更多回答(1 个)

Andreas Goser
Andreas Goser 2011-2-27

0 个投票

It is alwas difficult to guess -"i didn't managed how to use it." needs guessing. My guess is that IMPIXELINFO does not find your GUI automtically as the handle is hidden. I suggest using impixelinfo(h).

4 个评论

Thanks for your answer.
All my function got automatic parameters: hObject, eventdata, handles, As gotten from the guide command.
I tried to call the command as: impixelinfo(handles.axes1), but the matlab wrote an error message.
Whats wrong with "impixelinfo(handles.axes1)"?
Regards
It is important to know the error message. Error messages are there for a reason.
The error is that this function works on images only. I was told that it work on graphs too.
Are you familiar with a similar function that works on graph?
I need a function which retrieve the coordinates of the graph according to the mouse current position.
I'd say you need to "convert" the graph into an image.
> I was told that it work on graphs too.
Well then ask the person who told you ;-)

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by