ginput turning off cursor R2016a

2 visualizaciones (últimos 30 días)
Michael Vaiana
Michael Vaiana el 1 de Mzo. de 2017
Editada: Tom Dresselaers el 21 de Sept. de 2017
I am writing a GUI with guide and when I call ginput it turns off my mouse cursor. I know this is an old issue that was apparently resolved but I am still experiencing the problem in MATLAB 2016a.
I am calling ginput after a ButtonDownFcn as follows:
% load an image into the axis and set buttondownfnc
function load_image_Callback(hOBject, eventdata, handles)
...
set(handles.img, 'ButtonDownFcn', {@my_button_press, handles})
...
end
%call ginput upon buttdown
function my_button_press(src, ~, handles)
[x,y] = ginput(1);
...
end
When I click the image my cursor disappears, if I click again I get the x,y corrdinates of the point I click, so ginput is working, but I can't see where I'm clicking. Any ideas?
  2 comentarios
Sonam Gupta
Sonam Gupta el 8 de Mzo. de 2017
Tom Dresselaers
Tom Dresselaers el 21 de Sept. de 2017
Editada: Tom Dresselaers el 21 de Sept. de 2017
I tried it in R2016a but did not work. Other options?
my workaround create your own myginput with modification (store in your working dir): set(gcf,'Pointer','crosshair','PointerShapeCData',cdata,'PointerShapeHotSpot',hotspot) % original version: set(gcf,'Pointer','custom','PointerShapeCData',cdata,'PointerShapeHotSpot',hotspot)

Iniciar sesión para comentar.

Respuestas (1)

Sam McDonald
Sam McDonald el 8 de Mzo. de 2017
The cursor does disappear, but you should be able to see the crosshairs that appear once you move the mouse. If those are not being displayed, you could try the following
1. Execute:
opengl software
That will switch to a software version of OpenGL. If that resolves the issue, make sure your graphics driver is up-to-date. Visit the manufacturer's website for the latest driver rather than trusting the operating system.
2. Change the figure renderer. 'opengl' is default, but there is also 'painters'.
  1 comentario
Michael Vaiana
Michael Vaiana el 9 de Abr. de 2017
I'm so sorry for the extremely late reply. I tried suggestions 1 3 does give me the cursor but it is not very fluid. For example, sometimes I click and nothing seems to happen and then I click again and all of the sudden I have 2 points.
1, unfortunately, didn't help at all. I'm working on 2 but I can't seem to figure out how to get the figure handle for the axes to change the renderer to painters.
I also made a discovery. I am calling ginput after a ButtonDwnFnc call so I can restrict it to a certain axes. When I use ginput without such a ButtonDwnFnc the crosshairs show up. The problem is they show up on the whole image and not the specified axis. So it seems to be a problem with calling ginput from a ButtonDwnFnc call.

Iniciar sesión para comentar.

Categorías

Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by