Custom GINPUT
Idin's pick for this week is custom GINPUT by our very own Jiro Doke.
This is the story of how a user's request for a feature turned into a File Exchange submission by one of our very capable Application Engineers.
A few months ago I was working with a user trying to build a MATLAB GUI when we ran into a seemingly trivial problem: we needed the user to select a few points on a figure. Solution was simple: ginput. The problem was that on some images MATLAB's default "cross-hair" cursor blended into the background. Here's an example that shows a mild case of the problem.
You can see how it could be difficult to pick a precise point using this cross-hair. MATLAB's ginput function provides no flexibility to change the cursor. We found the myginput submission by Frederic Moisy. This got us a little closer, but not quite there. That's when I asked Jiro for help. Jiro wrote a new function based on MATLAB's ginput that makes the color and thickness of the cursor fully customizable. Here’s the same image, but this time with Jiro's ginputc function:
load woman imagesc(X) colormap(map) ginputc('color', 'r', 'linewidth', 3)
The picture speaks for itself! Jiro went further and added two new features that I hadn't even asked for:
- In the top left corner he shows a list of points the user has already selected
- He can optionally connect the selected points (very useful if you're selecting an area)
I would like to see some of these features find their way into MATLAB's ginput function. But in the meantime, I encourage you to download and try Jiro's ginputc function.
As always, your comments here are greatly appreciated.
- Category:
- Picks
Comments
To leave a comment, please click here to sign in to your MathWorks Account or create a new one.