How to make a select-able grid
2 views (last 30 days)
Show older comments
Anonymous Matrix
on 9 Mar 2017
Commented: Mauricio Pereira
on 21 Nov 2022
I need some guidance on how to make a selectable grid. I need to make a GUI that allows people to select a box on a grid over an image and make it change colors. So say I have a 25x25 grid over an image. if a person clicks on box 13,20 that box should change to blue. How do i do that?
0 Comments
Accepted Answer
KSSV
on 9 Mar 2017
Edited: KSSV
on 9 Mar 2017
N = 25 ;
x = linspace(0,1,N) ;
y = linspace(0,1,N) ;
[X,Y] = meshgrid(x,y) ;
coor = [X(:) Y(:)] ;
I = imread('cameraman.tif');
image([0 1],[0 1],I)
hold on
plot(X,Y,'k') ;
plot(X',Y','k') ;
count = 0 ;
while count == 0
[x,y] = ginput(1) ;
idx = knnsearch(coor,[x y],'k',4) ;
% form bounding box
x0 = min(coor(idx,1)) ;x1 = max(coor(idx,1)) ;
y0 = min(coor(idx,2)) ;y1 = max(coor(idx,2)) ;
% square points
coori = [x0 y0 ; x0 y1 ; x1 y1 ; x1 y0 ; x0 y0] ;
patch(coori(:,1),coori(:,2),'b') ;
end
5 Comments
Matus Drexler
on 23 Mar 2021
Hi.
Is it possible to select possition by e.g. mouse moving with left click?
Mauricio Pereira
on 21 Nov 2022
Hello. How could I code for selecting multiple boxes of the grid at once? For example, click one box of the grid while leaving pressed down the mouse, and finally releasing it.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!