MATLAB Answers

dragging a selected point within uiaxes

11 views (last 30 days)
Alain Barraud
Alain Barraud on 25 Jan 2021
Commented: Adam Danz on 15 Feb 2021
Hello,
wihin standard figure and axes, I can easely move point.
These points are the graphical representation of complex numbers, so when I move a point I must move its conjugate accordingly.
All works fine with classical figure. I currently use gco to obtain the current point handle. What would be the equivalent with uiaxes within an uifigure?
Best Regards
  1 Comment
Adam Danz
Adam Danz on 26 Jan 2021
"dragging" a plotted point isn't supported in any type of figure although some objects such as text or a point object are draggable.

Sign in to comment.

Accepted Answer

Adam Danz
Adam Danz on 26 Jan 2021
Edited: Adam Danz on 26 Jan 2021
HandleVisibility is set to off by default with uifigures and this prevents gcf/gca/gco from accessing the figure handle or anything within the figure.
Just before using gco, set the HandleVisibility to "on" and then set it off again at the end of the function.
Example
% uifig is the handle to the figure
uifig.HandleVisibility = 'on';
h = gco();
uifig.HandleVisibility = 'off';
% You could leave it on but that risks other plotting functions
% having unintended access to the figure.
Alternatively you can set the handle visibility to "callback" so that it's accessible from callback functions.
You may need to make the figure & axes active after doing this; if so, see these instructions to a similar question.
  14 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!