File Exchange

image thumbnail

MOUSEINPUT_TIMEOUT

version 1.2.0.1 (2.4 KB) by Gautam Vallabha
Captures continuous mouse movements with timeout

0 Downloads

Updated 01 Sep 2016

View License

MOUSEINPUT_TIMEOUT returns continuous mouse locations with timeout
OUT = MOUSEINPUT_TIMEOUT returns the sequence of mouse locations between a button press and a button release in the current axes. It does not timeout. OUT is an Nx2 matrix, where OUT(1,:) is the location at button press and OUT(END,:) is the location at button release.

OUT = MOUSEINPUT_TIMEOUT(T) times out after a period of T seconds. T can be a fractional value (T=inf indicates no timeout). If the mouse-button has not been pressed during that time, OUT is []. If the timeout occurs during a mouse movement, OUT contains the mouse locations before the timeout.

OUT = MOUSEINPUT_TIMEOUT(T,AH) records the mouse movement from the axes specified by axes handle AH.

Note: MOUSEINPUT_TIMEOUT differs from GINPUT in two ways.
(1) It does not return information about which mouse button was pressed,
(2) It ignores key presses.

-- Example:
% record movements from current axes
% (with timeout after 4.5 sec), and
% plot the final movement.
out = mouseinput_timeout(4.5, gca);
hold on;
plot(out(:,1),out(:,2),'r');
out(1,:) % location at button-press
out(end,:) % location at button-release

Comments and Ratings (5)

aurora

Thank you Vallabha ,
I'm also working on online handwriting recognition as UTM ali.. and I could get x,y and time values .
I'm not familiar with matlab and I just want to draw the character on the figure and to be shown simultaneously as I move the mouse..I added a plot command at the end of "buttonMotionCallback" function :
but the figure dimensions was changing as I'm continuing drawing, any help please?
Thank you in advance

@UTM ali:

It is not possible to get the pressure value of the pen (since the code uses the mouse interface).

You can get the time for every point by a small tweak to the code. At the start of the function get the current time:
startTime = tic;
and change lines 89 and 99 to:
selectedPts(end+1,:) = [pt(1,1:2) toc(startTime)];

UTM ali

hi Vallabha
im working in online handwriting recognition.
that code is good. i can get (x,y)pts from pen online but the presure of the pen and time for every point i coudnt
can u adviceme
thanks

this code works perfectly! it allows me to use a pen tablet to extract curves directly from image files.

Cem Canciger

Dear Vallabha,

Code is excellent, thanks. But I'd like to ask something:

How can we acquire the mouse movements in real time by embedding your function to Simulink, or equivalently, is it possible to get real time mouse data?

Updates

1.2.0.1

Updated license

1.2.0.0

* Minor change to description

1.1.0.0

Updated a minor typo that caused an error in R2009b. The function should now work from R2006a through R2009b.

1.0.0.0

Updated summary & keywords.

MATLAB Release Compatibility
Created with R2006a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.


Learn About Live Editor