Zrobiłem GUI za pomocą GUIDE. Mam osie (tag = axes1). Obraz jest wyświetlany w osiach. Po kliknięciu obrazu (osie wewnętrzne) potrzebuję uzyskać współrzędne. Otrzymuję wartości współrzędnych, gdy obraz nie jest dodawany do osi. Ale obraz wyświetlany w osiach nie powoduje uzyskania osi. Jak uzyskać współrzędne?MATLAB, jak uzyskać współrzędne kliknięcia myszą
6
A
Odpowiedz
2
Można uzyskać osie uchwyt z rączką obrazu przez
ah = get(imageHandle, 'Parent');
Następnie można uzyskać pozycję kliknięciem myszki przez
p = get(ah, 'CurrentPoint');
21
Załóżmy, że masz wykreślono obraz z uchwytem imageHandle
to:
imageHandle = imshow(imageObj);
Powinieneś przypisać ButtonDownFcn
do t on obraz obsługiwać nie osie poradzić:
set(imageHandle,'ButtonDownFcn',@ImageClickCallback);
i uzyskać współrzędne myszy z tej funkcji w następujący sposób:
function ImageClickCallback (objectHandle , eventData)
axesHandle = get(objectHandle,'Parent');
coordinates = get(axesHandle,'CurrentPoint');
coordinates = coordinates(1,1:2);
%// then here you can use coordinates as you want ...
end
Można spróbować ten mały demo sprawdzić moją odpowiedź:
function demoOnImageClick
clc;clear;
imObj = rand(500,500);
figure;
hAxes = axes();
imageHandle = imshow(imObj);
set(imageHandle,'ButtonDownFcn',@ImageClickCallback);
function ImageClickCallback (objectHandle , eventData)
axesHandle = get(objectHandle,'Parent');
coordinates = get(axesHandle,'CurrentPoint');
coordinates = coordinates(1,1:2);
message = sprintf('x: %.1f , y: %.1f',coordinates (1) ,coordinates (2));
helpdlg(message);
end
end
Powiązane problemy
- 1. Uzyskuj współrzędne kliknięcia myszą na svg przy użyciu d3
- 2. Rozróżnianie kliknięcia myszą i kliknięcia myszą w wpf
- 3. Vim: zmiana zachowania kliknięcia myszą
- 4. D3js: jak uzyskać współrzędne geograficzne Lat/Log od kliknięcia myszką?
- 5. Odrzucanie kliknięcia myszą w TDbGrid.OnColumnMoved
- 6. Symulowanie kliknięcia myszą w JavaScript
- 7. WinForms wyłącza podwójne kliknięcia i akceptuje wszystkie kliknięcia myszą?
- 8. Skrobanie stron internetowych wymagające kliknięcia myszą?
- 9. Wykrywanie kliknięcia myszą w skrypcie bash
- 10. Emacsclient nie reaguje na kliknięcia myszą
- 11. Jak wykrywać stukanie (wejście dotykowe) globalnie zamiast kliknięcia myszą?
- 12. Jak uzyskać pozycję kliknięcia?
- 13. OpenLayer3 - jak uzyskać współrzędne rzutni
- 14. Jak uzyskać współrzędne z rysunkiem?
- 15. Jak mogę uzyskać komponent w pozycji kliknięcia myszą podczas korzystania z TableCellEditor?
- 16. Uzyskaj pozycję/przycisk kliknięcia myszą w zdarzeniu DoubleClick.
- 17. JFreeChart uzyskać współrzędne myszy
- 18. Qt OpenGL- Jak uzyskać obiekt oparty na kliknięciu myszą
- 19. Jak uzyskać współrzędne centrum gmsmapview w iphone
- 20. Jak uzyskać współrzędne stuknięcia na niestandardowym UIButton?
- 21. Jak uzyskać współrzędne adresu w Androidzie
- 22. HTML5 INPUT type = 'number' - rozróżnia kliknięcia myszą i wartością zmiany
- 23. Zdarzenia dotykowe a zdarzenia kliknięcia myszą za pomocą actionscript 3
- 24. uzyskać dokładne współrzędne z didExitRegion
- 25. Jak uzyskać znaczniki wewnątrz obszaru wybranego za pomocą przeciągnięcia myszą?
- 26. Jak uzyskać zdarzenie kliknięcia znacznika tekstu
- 27. jak uzyskać podwójny czas kliknięcia w WPF
- 28. jak uzyskać pozycję kliknięcia w onClickListener?
- 29. Jak powinienem przetłumaczyć współrzędne obszaru ekranu na współrzędne miejsca na obraz w WinForms PictureBox?
- 30. uzyskać współrzędne klikając na mapie (openstreetmaps)
Dziękuję. To zadziałało. – HelloASP
@HelloASP, możesz zaakceptować odpowiedź, jeśli spełnia twoje wymagania dotyczące pytania, aby zakończyć dyskusję w tym pytaniu. –
@HelloASP proszę sprawdzić odpowiedzi Sameh jako prawidłowe. thnx:] –