1. Field of the Invention
The present invention relates to a mouse algorithm implementation method, and more particularly to a method for implementing a mouse algorithm using a plurality of pressure sensors, in which the pressure sensors are used to freely move and rotate a mouse cursor in X, Y and Z directions, so that they can be applied as interface units for a slim device such as a mobile phone.
2. Description of the Related Art
Nowadays, in computer systems, there are various types of input units that perform input operations. These operations generally correspond to selections on a display screen by the movement of a cursor, and include a page turning function, scroll function, panning function, zooming function, etc.
In general, the input units include a button, switch, keyboard, mouse, trackball, joystick, etc.
Here, the button and switch are generally mechanical, so that they have the disadvantage of being limited in being controlled to move the cursor or make selections. For example, the button or switch provides only a function of moving the cursor in a specific direction using a key such as an arrow direction key or making a specific selection using a key such as an Enter key, Delete key or number key.
On the other hand, when the user moves the mouse along the surface, an input pointer is moved corresponding to the relative movement of the mouse. Also, when the user moves the trackball within the housing, the input pointer is moved corresponding to the relative movement of the trackball.
These mouse and trackball each have one or more buttons for performing a selection function. In particular, the mouse includes a scroll wheel which can be rolled forward and backward to move the input pointer through a graphical user interface.
Therefore, there is a need to develop an input unit capable of recognizing the movements and rotations of the cursor in X, Y and Z directions through force-based pressure sensing using slimmable pressure sensors as shown in
Therefore, the present invention has been made in view of the above problems, and it is an object of the present invention to provide a method for implementing a mouse algorithm using a plurality of pressure sensors, the pressure sensors, in which the mouse algorithm is implemented to freely move and rotate a mouse cursor in X, Y and Z directions using the pressure sensors, so that the pressure sensors can be applied as interface units for a slim device such as a mobile phone.
In accordance with the present invention, the above and other objects can be accomplished by the provision of a method for implementing a mouse algorithm using a plurality of pressure sensors, the pressure sensors functioning as a mouse, the mouse algorithm processing a touch input of the pressure sensors, the method comprising calculating a force vector of a contact point based on a magnitude and direction of force touching the pressure sensors and sensing touch input information regarding a moving direction and moving distance of a mouse cursor based on the calculated force vector.
Preferably, the step of calculating a moving direction and moving distance of the mouse cursor comprises: obtaining force vectors ( . . . , Fi, Fi+1, . . . , Fk, Fk+1, . . . ) having magnitudes ( . . . , |Fi|, |Fi+1|, . . . , |Fk|, |Fk+1|, and X-axis angles ( . . . , θi, θi+1, . . . , θk, θk+1, . . . ) from a plurality of pressure sensors ( . . . , Ai, Ai+1, . . . , Ak, Ak+1, . . . ) around the contact point, respectively; obtaining differences ( . . . , ΔFi, ΔFi+1, . . . ) among the obtained force vectors and calculating a force vector (Fmax) having a sum (|Fmax|) of the magnitudes of the force vectors of the pressure sensors around the contact point and an X-axis angle (θmax) from the obtained differences, the force vector (Fmax) being the force vector of the contact point; and calculating the moving direction and moving distance of the mouse cursor using the calculated force vector (Fmax) having the magnitude sum (|Fmax|) and the X-axis angle (θmax).
Alternatively, the step of calculating the moving direction and moving distance of the mouse cursor may comprise: finding a force vector (Fi+1) of an (i+1)th sensor (Ai+1) having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors (Fi and Fi+2) of an ith sensor (Ai) and (i+2)th sensor (Ai+2) located at both sides of the (i+1)th sensor (Ai+1); calculating a force vector (Fmax) having a sum (|Fmax|) of magnitudes of the force vectors of the ith sensor, (i+1)th sensor and (i+2)th sensor and an X-axis angle (θmax), the force vector (Fmax) being the force vector of the contact point; and calculating the moving direction and moving distance of the mouse cursor using the calculated force vector (Fmax) having the magnitude sum (|Fmax|) and the X-axis angle (θmax).
As another alternative, the step of calculating the moving direction and moving distance of the mouse cursor may comprise: finding a force vector (Fi+1) of an (i+1)th sensor (Ai+1) having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors (Fi and Fi+2) of an ith sensor (Ai) and (i+2)th sensor (Ai+2) located at both sides of the (i+1)th sensor (Ai+1); obtaining a magnitude distribution function F(θ)=aθ+a1θ+a2θ2 by fitting force magnitudes of the ith sensor, (i+1)th sensor and (i+2)th sensor to a quadratic curve; obtaining an X-axis angle (θmax) where the maximum force magnitude is present; obtaining a force vector (Fmax) having a maximum magnitude |Fmax| at the angle (θmax) from the magnitude distribution function, the force vector (Fmax) being the force vector of the contact point; and calculating the moving distance and direction of the mouse cursor using the obtained force vector (Fmax) having the magnitude (|Fmax|) and the X-axis angle (θmax).
The step of calculating the moving direction and moving distance of the mouse cursor may comprise calculating the moving distance of the mouse cursor based on the magnitude sum or maximum magnitude (|Fmax|) and calculating the moving direction of the mouse cursor based on the X-axis angle (θmax), or calculating the moving distance of the mouse cursor based on |Fmax|cosθmax+|Fmax|sinθmax which is a sum of an X component magnitude and a Y component magnitude of the force vector (Fmax) and calculating the moving direction of the mouse cursor based on the X-axis angle (θmax).
The above and other objects, features and other advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
The present invention provides a method for implementing an algorithm for processing a touch input of a plurality of pressure sensors including a plurality of force sensors. This algorithm is implemented to calculate a force vector of a contact point based on the magnitude and direction of force touching the pressure sensors and sense touch input information regarding the moving distance and direction of a mouse cursor based on the calculated force vector.
The first embodiment of the present invention will hereinafter be described with reference to
Then, the X-axis angles θi and θi+1 and magnitudes |Fi−Fk| and |Fi+1−Fk+1| of force vectors ΔFi and ΔFi+1 are calculated using the force vectors Fi, Fk, Fi+1 and Fk+1, as shown in
Then, a force vector Fmax of the contact point having an X-axis angle θmax and a magnitude |Fmax| is calculated using the X-axis angles θi and θi+1 and magnitudes |Fi−Fk| and |Fi+1−Fk+1| of the vectors ΔFi and ΔFi+1, and the moving distance and direction of a mouse cursor are sensed from the calculated force vector Fmax.
Here, the moving distance of the mouse cursor may be calculated based on the magnitude |Fmax| and the moving direction of the mouse cursor may be calculated based on the X-axis angle θmax, or the magnitude |Fmax| may be defined as |Fmax|cosθmax+|Fmax|sinθmax which is the sum of an X component magnitude and a Y component magnitude of the force vector Fmax. This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions.
The second embodiment of the present invention will hereinafter be described with reference to
Then, a force vector Fmax having the sum |Fmax| of the magnitudes of the force vectors Fi+1, Fi and Fi+2 of the (i+1)th sensor Ai+1, ith sensor Ai and (i+2)th sensor Ai+2 and an X-axis angle θmax is calculated as shown in
Then, the moving distance and direction of a mouse cursor are calculated using the force vector Fmax. Here, the moving distance of the mouse cursor may be calculated based on the magnitude sum |Fmax| and the moving direction of the mouse cursor may be calculated based on the X-axis angle θmax, or the magnitude sum |Fmax| may be defined as |Fmax|cosθmax+|Fmax|sinθmax which is the sum of an X component magnitude and a Y component magnitude of the force vector Fmax. This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions.
Referring to
Then, a magnitude distribution function F(θ)=aθ+a1θ+a2θ2 is obtained by fitting force magnitudes |Fi|, |Fi+1| and |Fi+2| corresponding respectively to the coordinates of the ith sensor Ai, (i+1)th sensor Ai+1 and (i+2)th sensor Ai+2 to a quadratic curve.
Then, an X-axis angle θmax where the maximum force magnitude is present is obtained, a force vector Fmax having a maximum magnitude |Fmax| at the angle θmax is obtained from the magnitude distribution function, and the moving distance and direction of a mouse cursor are calculated using the obtained force vector Fmax.
Here, the moving distance of the mouse cursor may be calculated based on the magnitude |Fmax| or |Fmax|cosθmax+|Fmax|sinθmax which is the sum of an X component magnitude and a Y component magnitude of the force vector Fmax, and the moving direction of the mouse cursor may be calculated based on the angle θmax. This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions.
The four sensors A1, A2, A3 and A4 have the following force vectors: the first sensor has F1, the second sensor F2, the third sensor F3, and the fourth sensor F4. In the present embodiment, the force vector F2 of the second sensor A2 has a maximum magnitude and the force vector F1 of the first sensor A1 has a lesser magnitude.
Then, referring to
Then, the X-axis angle θmax and magnitude |Fmax| of a force vector Fmax are calculated using the angles 0° and 90° and magnitudes |F1−F3| and |F2−F4| of the vectors ΔF1 and ΔF2.
Here, the magnitude |Fmax| is defined as |ΔF1|+|ΔF2| or √{square root over (|ΔF1|2+|ΔF2|2)}.
Also,
The direction and magnitude components of force of the contact point are obtained using the X-axis angle θmax and magnitude |Fmax|.
Here, the X direction component of the contact point is |F1−F3|, which is an X component of the force vector Fmax, and the Y direction component of the contact point is |F2−F4|, which is a Y component of the force vector Fmax. As a result, the moving distance of a mouse cursor in an X direction is |F1−F3| which is the X component of the force vector Fmax, and the moving distance of the mouse cursor in a Y direction is |F2−F4| which is the Y component of the force vector Fmax.
On the other hand, the moving distance of the mouse cursor in a Z direction using the four sensors can be expressed by the average of the sum of the magnitudes of the force vectors of the four sensors. Here, the Z direction movement is established only in one side direction.
In the first to fourth embodiments of the present invention, the movements and rotations of the mouse cursor in the X, Y and Z directions are sensed through successive contact sensing of the pressure sensors. In the case where the magnitude of force detected from at least one of the plurality of pressure sensors is in the form of an impulse signal or a Z direction magnitude detected therefrom is larger than or equal to a reference value, the current operation is recognized as a click.
The addition of the click recognition function as stated above makes it possible to open or close a file on the screen using the pressure sensors, like using a mouse in an existing computer.
Alternatively, as shown in
For example, when a contact on the fifth sensor A5 is sensed, it can be recognized as a click to open or close a file on the screen. Meanwhile, when the fifth sensor A5 is clicked and any one of the second and fourth sensors A2 and A4 is then pushed, scrolling can be performed in a direction set by the pushed sensor.
Also, in the case where the mouse cursor is required to be moved in a three-dimensional space, the mouse cursor is moved in the X and Y directions using the four force sensors as shown in
As another alternative, as shown in
The first to fourth A1, A2, A3 and A4 can be used to move the mouse cursor in the X and Y directions and the rotation direction, as shown in
On the other hand, the click function and scroll function can be carried out while the cursor is moved on an X-Y plane, as in the existing mouse. That is, the click function is assigned to any one of the fifth to eighth sensors A5, A6, A7 and A8, and performed when a contact on the assigned sensor is sensed. Therefore, it is possible to open or close a file on the screen through the click recognition, as in the existing mouse.
Alternatively, a specific one of the fifth to eighth sensors A5, A6, A7 and A8 may be set as a click recognition sensor. In this case, the click function is performed when a contact on the specific sensor is sensed, and the scroll function is performed when contacts on the other sensors are sensed. For example, in the case where the fifth sensor A5 and seventh sensor A7 are set for the click recognition, the scroll function of the existing mouse can be performed using the sixth sensor A6 and eighth sensor A8.
When a contact on the fifth sensor A5 is sensed, it can be recognized as a click to open or close a file on the screen. Meanwhile, when the fifth sensor A5 is clicked and any one of the second and fourth sensors A2 and A4 is then pushed, scrolling can be performed in a direction set by the pushed sensor.
As apparent from the above description, according to the present invention, a mouse algorithm is implemented to freely move and rotate a mouse cursor in X, Y and Z directions using a plurality of pressure sensors, so that the pressure sensors can be applied as an interface unit for a slim device such as a mobile phone. Therefore, the pressure sensors can replace an existing mouse or joystick so as to be applied to a GUI environment.
Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.
| Number | Date | Country | Kind |
|---|---|---|---|
| 10-2007-0068237 | Jul 2007 | KR | national |
| Filing Document | Filing Date | Country | Kind | 371c Date |
|---|---|---|---|---|
| PCT/KR07/03742 | 8/3/2007 | WO | 00 | 1/6/2010 |