USPatent applicationPatented

Reduced image production method and apparatus

Granted 29 Jan 2008 · 1 office action

Assignee: Canon Inc.

Law firm: Law firm · Log in to unlock

Attorney: Attorney · Log in to unlock

Inventors: Tadahiko Iijima · Examiner: Richard Hjerpe · AU 2629 · TC 2600

Life of the application

9 dated events
⤢ drag to zoom20042006200820102012201420162018202020222024ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

A method for controlling a cursor by moving the cursor in response to the operation of pointing device on a predetermined working area, wherein a predetermined proportion of the vector of the shift of the pointing device immediately before the movement of the pointing device is stopped is reflected in the movement of the cursor, when the pointing device is stopped and in contact with the working area.

Description

12 parts
›CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from Japanese Patent Application No. 2003-203936 filed Jul. 30, 2003, which is hereby incorporated by reference herein.

BACKGROUND OF THE INVENTION
›Field of the Invention

The present invention relates to a method for controlling the coordinates of a cursor by providing input to a predetermined working area.

A known method for controlling a cursor is a touch pad of a so-called notebook computer. For a touch pad having a small working area, the movement of the cursor is determined by the position that the input movement is stopped at the edge of the working area.

Japanese Patent Laid-Open No. 9-269869 discloses a known method for moving a cursor by adding the relative coordinates of each input movement on the touch pad, and, then, converting the computed results into the movement of the cursor. In addition, Japanese Patent Laid-Open No. 2001-117713 discloses a known method for switching the control of the movement of the cursor by a predetermined keystroke.

The size of the working area of a known touch pad depends on the type of the touch pad. A touch pad with a small working area takes up only a small area but controlling input for moving the cursor to a desired position is difficult. To compensate for this problem, the cursor may be moved relative to the input movement on the touch pad. However, to move the cursor a long distance, the input speed must be increased or the input movement on the touch pad must be repeated.

There is also a method for moving the cursor based on the position that the input movement is stopped at the edge of the small-sized working area of a touch pad. In this method, there is a problem in that the cursor does not continue to move unless the input movement reaches the edge of the working area. Moreover, there is a problem in that the cursor moves in a predetermined direction when the input movement reaches the edge of the working area, and, thus, the path of the input movement is not reflected in the movement of the cursor.

Furthermore, as described above, the control of the movement of the cursor may be switched by a predetermined keystroke. However, when switching the controlling method of the cursor by pressing a predetermined key, the controlling method is switched to a predetermined method. Thus, the method is limited to the predetermined method and the control of the movement of the cursor cannot be switched to another method that is more suitable for the given situation.

›SUMMARY OF THE INVENTION

The present invention solves the above-mentioned problems. The magnitude of the input movement for moving a cursor when the coordinates of the cursor are specified by an input on a working area is decreased.

Furthermore, the method for controlling the cursor is appropriately switched based on the input movement on the working area.

According to an aspect of the present invention, a method is provided for controlling a cursor by moving the cursor in response to the operation of a pointing device on a predetermined working area. A predetermined proportion of the vector of the shift of the pointing device immediately before the movement of the pointing device is stopped is reflected in the movement of the cursor, when the pointing device is stopped and in contact with the working area.

According to another aspect of the present invention, a method for controlling the cursor is provided, wherein the reflection of the vector of the shift is continued while the pointing device is stopped and in contact with the working area.

According to still another aspect of the present invention, a method for controlling the cursor is provided, wherein the vector is not reflected in the movement of the cursor after the pointing device loses contact with the working area.

According to yet another aspect of the present invention, a method for controlling the cursor is provided, wherein when the pointing device is further shifted and in contact with the working area in a predetermined direction, the cursor is moved without reflection of the vector of the prior movement if the current movement satisfies a predetermined condition.

Other features and advantages of the present invention will be apparent from the following description taken in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the figures thereof.

›BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.

FIG. 1 illustrates the structure of a cursor controlling system according to an embodiment of the present invention.

FIG. 2 illustrates the relationship between the operation of a touch pad and the movement of a cursor according to a first embodiment.

FIG. 3 is a flow chart illustrating exemplary logic for moving a cursor based on the operation of a touch pad according to the first embodiment.

FIG. 4 illustrates the relationship between the operation of a touch pad and the movement of a cursor according to a second embodiment.

FIG. 5 is a flow chart illustrating exemplary logic for moving a cursor based on the operation of a touch pad according to the second embodiment.

FIG. 6 illustrates the relationship between the operation of a touch pad and the movement of a cursor according to a third embodiment.

FIG. 7 is a flow chart illustrating exemplary logic for moving a cursor based on the operation of a touch pad according to the third embodiment.

FIG. 8 illustrates the relationship between the operation of a touch pad and the movement of a cursor according to a fourth embodiment.

FIG. 9 is a flow chart illustrating exemplary logic for moving a cursor based on the operation of a touch pad according to the fourth embodiment.

FIG. 10 illustrates the relationship between the operation of a touch pad and the movement of a cursor according to a fifth embodiment.

FIG. 11 is a flow chart illustrating exemplary logic for moving a cursor based on the operation of a touch pad according to the fifth embodiment.

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 1 of 7

Exemplary embodiments are described in detail below in accordance with the accompanying drawings.

First Embodiment

FIG. 1 illustrates the structure of a cursor controlling system according to a first embodiment. The system according to this embodiment includes a personal computer (PC) 102 , a monitor 100 for displaying the output from the PC 102 , and a personal digital assistant (PDA) 104 having a touch pad function connected the PC 102 . Here, the ‘touch pad function’ refers to the function for moving a cursor 101 on the display of the PC 102 . The PDA 104 includes a working area 150 for inputting the movement of the cursor 101 . The movement is input using a stylus pen 103 .

The touch pad function described in this embodiment may be achieved by other devices such as a digitizer or a tablet PC, which are capable of specifying the coordinates of the cursor 101 by skimming over a working area. The touch pad function may also be the touchpad of a computing device, such as a notebook (laptop) computer. In such a case, the touchpad function is operated with a user's finger rather than a stylus pen.

The movement of the cursor 101 is controlled by the shift of the stylus pen 103 in a moving mode on the surface of the working area 150 of the PDA 104 , i.e., the touch pad. The shift of the stylus pen 103 is represented by a vector {right arrow over (a 11 )}. Hereinafter, ‘vector {right arrow over (a xy )}’ is simply referred to as ‘{right arrow over (a xy )}.’ When the stylus pen 103 is not moved but is in contact with the working area 150 , i.e., when the stylus pen 103 is in a stop mode, the magnitude of the vectors {right arrow over (a 12 )} and {right arrow over (a 13 )} equal zero ({right arrow over (a 12 )}={right arrow over (a 13 )}=0).

Each vector {right arrow over (a 11 )}, {right arrow over (a 12 )}, or {right arrow over (a 13 )} of the shift of the stylus pen 103 on the working area 150 corresponds to vector {right arrow over (b 11 )}, {right arrow over (b 12 )} or {right arrow over (b 13 )}, respectively, of the cursor 101 . In this embodiment, these vectors are controlled so that they satisfy the formulas below:

{right arrow over ( b 11 )}= k 1 *{right arrow over ( a 11 )}

{right arrow over ( b 12 )}= k 1 *{right arrow over ( a 11 )}

{right arrow over ( b 13 )}= k 1 *{right arrow over ( a 11 )}

(where, k 1 is a constant).

When the stylus pen 103 is in the stop mode, a predetermined proportion of the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode is reflected in the movement of the cursor 101 .

When the stylus pen 103 is switched back to the moving mode, the cursor 101 moves so that the vector {right arrow over (b 1n )} of the shift of the cursor 101 satisfies the formula below:

{right arrow over ( b 1n )}= k 1 *{right arrow over ( a 1n )}.

FIG. 2 illustrates the shift of the stylus pen 103 on the working area 150 of the PDA 104 according to this embodiment and the corresponding movement of the cursor 101 controlled in accordance with the movement of the stylus pen 103 in the moving mode and the stop mode. In FIG. 2 , the dotted arrow in the working area 150 indicates that the stylus pen 103 is in the stop mode. According to FIG. 2 , even when the stylus pen 103 is in the stop mode and is in contact with the surface of the working area 150 , the cursor 101 continues to move according to the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode.

By controlling the cursor in this way, the cursor can be moved for a long distance without increasing the speed of the stylus pen 103 or moving the stylus pen 103 to the edge of the working area 150 on the touch pad (PDA 104 ).

By changing the constant k 1 , the input by the stylus pen 103 on the working area 150 can be converted into the movement of the cursor in different proportions.

FIG. 3 is a flow chart illustrating exemplary logic for moving a cursor 101 on a display device 100 based on the operation of a touch pad 150 according to the first embodiment. The exemplary logic may be implemented in program code (software) that is executed by a computer, such as PC 102 , in order to detect the operation of the touchpad, and display a cursor 101 on a display device, such as monitor 100 .

In step S 200 , a conversion proportion constant (k 1 ) is obtained. A user places a pointing device, such as a stylus 103 in contact with a predetermined working area 150 . The user moves the pointing device 103 while it is in contact with the working area 150 . Such movement of the pointing device 103 while in contact with the predetermined working area 150 is detected in step S 202 . The detection of contact of the pointing device 103 with the working area 150 and movement of the pointing device 103 can be performed using any conventional technique, such as polling or interrupts. If a technique such as polling is used, and the pointing device is not in contact with the predetermined working area 150 or initial contact with the predetermined working area has been detected, but movement has not yet been detected, the logic returns to step S 202 until the pointing device 103 is in contact with the predetermined working area 150 and movement of the pointing device 103 has been detected.

Once it has been determined in step S 202 that the pointing device 103 is in contact with the predetermined working area 150 and movement of the pointing device 103 has been detected, the logic moves to step S 204 where the movement of the pointing device 103 is reflected by movement of the cursor 101 on the display device 100 . A location to display the cursor 101 on the display device 100 is determined based on the proportion constant obtained in step S 200 . The cursor 101 is moved to the determined location on the display device 100 , for example, {right arrow over (b 11 )} of FIG. 2 .

Next, at step S 206 , it is determined whether the pointing device 103 is still in contact with the working area 150 . If the pointing device 103 is not still in contact with the working area 150 , the logic returns to step S 202 to wait for the pointing device 103 to regain contact with the predetermined working area 150 and for movement of the pointing device 103 to be detected.

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 2 of 7

On the other hand, if it is determined in step S 206 that the pointing device 103 is still in contact with the working area 150 , the logic proceeds to step S 208 to determine if the pointing device 103 is still moving. If the pointing device 103 is still moving, the logic returns to step S 204 to move the cursor 101 on the display 100 to reflect the continued movement of the pointing device 103 .

If it is determined in step S 208 , that the pointing device 103 is not still moving (i.e., the pointing device 103 is in a stop mode where the pointing device 103 is not moving, but remains in contact with the predetermined working area 150 ), the logic proceeds to step S 210 where reflection of the vector according to a vector shift immediately before entering the stop mode is displayed in movement of the cursor 101 , for example as shown by {right arrow over (b 12 )} in FIG. 2 . The logic then moves to step S 212 to determine if movement of the pointing device 103 has resumed. If movement of the pointing device 103 has not resumed (i.e., the pointing device 103 is still in stop mode), the logic returns to step S 210 to continue reflection of the cursor in stop mode, such as {right arrow over (b 13 )} shown in FIG. 2 . If, however, movement of the pointing device 103 has resumed, the logic returns to step S 204 to display reflection of the cursor in normal mode.

As described above, according to this embodiment, the movement of the stylus pen 103 can be reduced by effectively reflecting the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode in the movement of the cursor while being in the stop mode.

Second Embodiment

A second embodiment is described below.

In the method for controlling the cursor according to the second embodiment, an absolute coordinate {right arrow over (a 20 )} indicates the position where the stylus pen 103 first comes in contact with the working area 150 of the touch pad, i.e., the PDA 104 . Absolute coordinates {right arrow over (a 21 )}, {right arrow over (a 22 )}, . . . , {right arrow over (a 2n )}, indicate the positions the stylus pen 103 are moved to without losing contact with the working area 150 .

In the second embodiment, the absolute coordinates {right arrow over (a 20 )}, {right arrow over (a 21 )}, . . . , and {right arrow over (a 2n )} on the working area 150 correspond to vectors {right arrow over (b 21 )}, {right arrow over (b 22 )}, . . . , and {right arrow over (b 2n )}, respectively, which represent the shift of the cursor. In this embodiment, the vectors are controlled so that they satisfy the formula below:

{right arrow over ( b 2n )}= k 2 *({right arrow over ( a 2n )}−{right arrow over ( a 20 )})

(where k 2 is a constant)

FIG. 4 illustrates the shift of the stylus pen 103 on the working area 150 of the PDA 104 according to the second embodiment and the corresponding movement of the cursor 101 controlled in accordance with the movement of the stylus pen 103 in the moving mode and the stop mode. In FIG. 4 , the dotted arrows and the solid arrows in the working area 150 are vectors of the absolute coordinates of the stylus pen 103 . The stylus pen 103 actually moves from an origin {right arrow over (a 20 )} to the positions {right arrow over (a 21 )}, {right arrow over (a 22 )}, and {right arrow over (a 23 )} in sequence without losing contact with the working area 150 .

According to FIG. 4 , the shift of the cursor 101 is obtained from the difference between the vectors of the current coordinates of the stylus pen 103 and {right arrow over (a 20 )}. The cursor is moved in accordance with the shift of the stylus pen 103 while it is kept in contact with the working area 150 of the touch pad (PDA 104 ).

By changing the constant k 2 , the input of the stylus pen 103 on the working area 150 can be converted into the movement of the cursor in different proportions.

FIG. 5 is a flow chart illustrating exemplary logic for moving a cursor 101 based on the operation of a touch pad 150 according to the second embodiment. The exemplary logic may be implemented in program code (software) that is executed by a computer, such as PC 102 , in order to detect the operation of the touchpad and display a cursor 101 on a display device, such as monitor 100 .

In step S 300 , pointing device origin coordinates (e.g., {right arrow over (a 20 )} in FIG. 4 ) and a conversion proportion constant (k 2 ) are obtained.

A user places a pointing device, such as a stylus 103 in contact with a predetermined working area 150 . The user moves the pointing device 103 while it is in contact with the working area 150 . Such movement of the pointing device 103 while in contact with the predetermined working area 150 is detected in step S 302 . If detection of movement of the pointing device 103 while in contact with the predetermined working area 150 is not determined in step S 302 , the logic of step S 302 is repeated until such detection occurs.

After detection of movement of the pointing device 103 while in contact with the working area 150 (step S 302 ), a cursor location is determined in step S 304 . The difference between the pointing device origin coordinates (obtained in step S 300 ) and the current pointing device coordinates (obtained in step S 302 when movement of the pointing device 103 is detected) is computed. The difference is then multiplied by the conversion proportion constant (k 2 ) obtained in step S 300 in order to determine the cursor location. Next, in step S 306 , the cursor 101 is moved to the display device location determined in step S 306 . The logic then returns to step S 302 .

As described above, according to the second embodiment, the cursor can be moved in accordance with the shift of the stylus pen 103 , i.e., the absolute coordinates of the stylus pen 103 , while the stylus pen 103 is kept in contact with the surface of the touch pad. Consequently, the movement of the stylus pen 103 on the working area 150 can be reduced in the same manner as the first embodiment, and the cursor can be moved even more freely.

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 3 of 7

Third Embodiment

A third embodiment is described below.

In the method for controlling the cursor according to the third embodiment, a vector {right arrow over (a 31 )}, represents the shift of the stylus pen 103 in the moving mode on the working area 150 of the touch pad (PDA 104 ). When the stylus pen 103 is in a stop mode, i.e., when the stylus pen 103 is not moved but is kept in contact with the working area 150 of the touch pad at a position {right arrow over (a 32 )}, the magnitude of the vector {right arrow over (a 32 )} equals zero ({right arrow over (a 32 )}=0). Vectors {right arrow over (a 33 )}, {right arrow over (a 34 )}, . . . , and {right arrow over (a 3n )} represent the subsequent movement of the stylus pen 103 .

In the third embodiment, each of the vectors {right arrow over (a 31 )}, {right arrow over (a 32 )}, {right arrow over (a 33 )}, . . . , and {right arrow over (a 3n )} of the shift of the stylus pen 103 on the working area 150 correspond to vectors {right arrow over (b 31 )}, {right arrow over (b 32 )}, {right arrow over (b 33 )}, . . . , and {right arrow over (b 3n )} of the cursor 101 , respectively. In this embodiment, the vectors are controlled so that they satisfy the formulas below:

b 31 → = k 3 * a 31 → b 32 → = k 3 * a 31 → b 33 → = k 3 * ( a 31 → + a 33 → ) b 34 → = k 3 * ( a 31 → + a 34 → ) … … … b 3 ⁢ n → = k 3 * ( a 31 → + a 3 ⁢ n → )

(where, k 3 is a constant)

When the stylus pen 103 loses contact with the surface of the working area 150 and then restores its contact with the surface of the working area 150 , the cursor 101 moves so that the vector {right arrow over (b 3n )} of the shift of the cursor 101 satisfies the formula below:

{right arrow over ( b 3n )}= k 3 *{right arrow over ( a 3n )}.

According to the third embodiment, when the stylus pen 103 , which was in the moving mode, is switched to the stop mode and then switched back to the moving mode, the cursor moves in accordance with a predetermined proportion (which in this case is k 3 *{right arrow over (a 31 )}) of the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode.

If the stylus pen 103 loses contact with the surface of the working area 150 and then restores its contact with the surface of the working area 150 , the vector {right arrow over (b 3n )} of the shift of the cursor 101 satisfies the formula below:

{right arrow over ( b 3n )}= k 3 *{right arrow over ( a 3n )}.

In other words, the shift of the cursor 101 is unaffected by the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode.

FIG. 6 illustrates the shift of the stylus pen 103 on the working area 150 of the PDA 104 according to the third embodiment and the corresponding movement of the cursor 101 controlled in accordance with the movement of the stylus pen 103 in the moving mode and the stop mode. In FIG. 6 , the dotted arrow in the working area 150 indicates that the stylus pen 103 is in the stop mode. According to FIG. 6 , as described in the first embodiment, even when the stylus pen 103 is in the stop mode, as long as the stylus pen 103 is in contact with the surface of the working area 150 , the cursor 101 continues to move according to the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode. Then, the stylus pen 103 is switched back to the moving mode. The shift of the cursor 101 is obtained from the sum of the vector of the shift after the stylus pen 103 is switched back to the moving mode and the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode. In this way, the cursor 101 can be finely controlled.

By changing the constant k 3 , the input of the stylus pen 103 on the working area 150 can be converted into the movement of the cursor in different proportions.

FIG. 7 is a flow chart illustrating exemplary logic for moving a cursor 101 based on the operation of a touch pad 150 according to the third embodiment. The exemplary logic may be implemented in program code (software) that is executed by a computer, such as PC 102 , in order to detect the operation of the touchpad and display a cursor 101 on a display device, such as monitor 100 .

In step S 400 , a conversion proportion constant (k 3 ) is obtained. The vector of shift of the pointing device immediately before movement of the pointing device is stopped is set to zero in step S 401 .

A user places a pointing device, such as a stylus 103 in contact with a predetermined working area 150 . The user moves the pointing device 103 while it is in contact with the working area 150 . Such movement of the pointing device 103 while in contact with the predetermined working area 150 is detected in step S 402 . If detection of movement of the pointing device 103 while in contact with the predetermined working area 150 is not determined in step S 402 , the logic of step S 402 is repeated until such detection occurs.

After detection of movement of the pointing device 103 while in contact with the working area 150 (step S 402 ), a cursor location is determined in step S 404 . The location to move the cursor 101 on the display device 100 is determined by determining the sum of the vector of the current shift of the pointing device and the vector of the shift of the pointing device immediately before movement of the pointing device was stopped. The difference is then multiplied by the conversion proportion constant (k 3 ) obtained in step S 400 . Next, in step S 406 , the cursor 101 is moved to the determined location on the display device 100 . The logic then moves to step S 408 to determine if the pointing device 103 is still in contact with the working area 150 .

If the pointing device 103 is not still in contact with the predetermined working area 150 , the logic returns to step S 401 . If the pointing device 103 is still in contact with the predetermined working area 150 , the logic proceeds to step S 410 to determine if the pointing device 103 is still moving. If the pointing device 103 is still moving, the logic returns to step S 404 . If the pointing device 103 is in the stop mode (in contact with the predetermined working area 150 but not moving), the logic proceeds to step S 412 where the vector shift of the pointing device 103 immediately before movement of the pointing device 103 stopped is saved. The logic then returns to step S 404 to determine the location to move the cursor 101 on the display device 100 .

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 4 of 7

As described above, according to the third embodiment, even after the stylus pen 103 is switched back to the moving mode from the stop mode, the shift of the cursor 101 is affected by the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode. Moreover, the movement of the cursor 101 can be finely controlled.

Fourth Embodiment

A fourth embodiment is described below.

In the method for controlling the cursor according to the fourth embodiment, a vector {right arrow over (a 41 )} represents the shift of the stylus pen 103 in the moving mode on the working area 150 of the touch pad (PDA 104 ). When the stylus pen 103 is in a stop mode, i.e., when the stylus pen 103 is not moved but is kept in contact with the working area 150 of the touch pad at a position {right arrow over (a 42 )}, the magnitude of the vector {right arrow over (a 42 )} equals zero ({right arrow over (a 42 )}=0). Vectors {right arrow over (a 43 )}, {right arrow over (a 44 )}, . . . , and {right arrow over (a 4n )} represent the subsequent movement of the stylus pen 103 .

In the fourth embodiment, each of the vectors {right arrow over (a 41 )}, {right arrow over (a 42 )}, {right arrow over (a 43 )}, . . . , and {right arrow over (a 4n )} of the shift of the stylus pen 103 on the working area 150 correspond to vectors {right arrow over (b 41 )}, {right arrow over (b 42 )}, {right arrow over (b 43 )} . . . , and {right arrow over (b 4n )} of the cursor 101 , respectively. In this embodiment, the vectors are controlled so that they satisfy the formulas below:

b 41 → = k 4 * a 41 → b 42 → = k 4 * a 41 → b 43 → = k 4 * ( a 41 → + a 43 → ) b 44 → = k 4 * ( a 41 → + a 43 → ) … … … b 4 ⁢ n → = k 4 * ( a 41 → + a 4 ⁢ n → )

(where, k 4 is a constant).

The control of the cursor 101 described above is the same as the control according to the third embodiment. For the fourth embodiment, however, the vector {right arrow over (b 4n )} of the shift of the cursor is defined as the formula below only when one of the three conditions described below is satisfied:

{right arrow over ( b 4n )}= k 4 *{right arrow over ( a 4n )}.

In other words, the shift of the cursor 101 is unaffected by the vector {right arrow over (a 41 )} of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode but only affected by the vector {right arrow over (a 4n )} of the current shift of the stylus pen 103 . More specifically, the cursor is controlled in a relative movement mode in which the shift of the cursor 101 is controlled only by the current shift of the stylus pen 103 .

Condition 1

The vector of the shift of the stylus pen 103 on the working area 150 is defined by the formula below:

{right arrow over ( a 41 )}=({right arrow over ( a 41x )}, {right arrow over ( a 41y )}).

Moreover, the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode is defined by the formula below:

{right arrow over ( a 4n )}=({right arrow over ( a 4nx )}, {right arrow over ( a 4ny )}).

Here, the conditional expression presented below is obtained, where K 41 and K 42 are positive constants:

[({right arrow over ( a 41x )}*{right arrow over ( a 4nx )}≦0)

and

( K 41* |{right arrow over ( a 41x )}|<|{right arrow over ( a 4nx )}|)]

and

[({right arrow over ( a 41y )}*{right arrow over ( a 4ny )}≦0)

and

( K 42 *|{right arrow over ( a 41y )}|<|{right arrow over ( a 4ny )}|)].

More specifically, according to Condition 1, the cursor 101 is switched to the relative movement mode when the x coordinates and y coordinates of the vector {right arrow over (a 41 )} of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode and the vector {right arrow over (a 4n )} of the current shift of the stylus pen 103 have opposite values and the magnitude of the vector {right arrow over (a 4n )} is a predetermined multiple of the vector {right arrow over (a 41 )}.

Condition 2

Similar to Condition 1, the vectors of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode and the shift of the stylus pen 103 after the stylus pen 103 was switched to the stop mode are defined as the formulas below:

{right arrow over ( a 41 )}=({right arrow over ( a 41x )}, {right arrow over ( a 41y )})

{right arrow over ( a 4n )}=({right arrow over ( a 4nx )}, {right arrow over ( a 4ny )}).

Here, the conditional expression presented below is obtained, where K 41 and K 42 are positive constants:

[({right arrow over ( a 41x )}*{right arrow over (i 4nx )}≦0)

and

( K 41* |{right arrow over ( a 41x )}|<|{right arrow over ( a 4nx )}|)]

or

[({right arrow over ( a 41y )}*{right arrow over ( a 4ny )}≦0)

and

( K 42 *|{right arrow over ( a 41y )}|<|{right arrow over ( a 4ny )}|)]

More specifically, according to Condition 2, the cursor 101 is switched to the relative movement mode when at least one of the x coordinates and the y coordinates of the vector {right arrow over (a 41 )} of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode and the vector {right arrow over (a 4n )} of the current shift of the stylus pen 103 have opposite values and the magnitude of the vector {right arrow over (a 4n )} is a predetermined multiple of the vector {right arrow over (a 41 )},

Condition 3

Similar to Condition 1, the vector {right arrow over (a 41 )} of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode and the vector {right arrow over (a 4n )} of the shift of the stylus pen 103 after the stylus pen 103 was switched to the stop mode are defined as the formulas below:

{right arrow over ( a 41 )}=({right arrow over ( a 41x )}, {right arrow over ( a 41y )})

{right arrow over ( a 4n )}=({right arrow over ( a 4nx )}, {right arrow over ( a 4ny )}).

According to the comparative results of |{right arrow over (a 41x )}| and |{right arrow over (a 41y )}|, {right arrow over (b 4z )} is defined as the formulas below:

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 5 of 7

{right arrow over ( b 4z )}=({right arrow over ( b 4zx )}, {right arrow over ( b 4zy )})=({right arrow over ( a 41x )},0),

when

|{right arrow over ( a 41x )}|≧|{right arrow over ( a 41y )}|

{right arrow over ( b 4z )}=({right arrow over ( b 4zx )}, {right arrow over ( b 4zy )})=(0,{right arrow over ( a 41x )}),

when

|{right arrow over ( a 41x )}|<|{right arrow over ( a 41y )}|.

Here, the conditional expression presented below is obtained, where K 41 and K 42 are positive constants:

[({right arrow over ( b 4zx )}*{right arrow over ( a 4nx )}≦0)

and

( K 41* |{right arrow over ( b 4zx )}|<|{right arrow over ( a 4nx )}|)]

and

[({right arrow over ( b 4zy )}*{right arrow over ( a 4ny )}≦0)

and

( K 42* |{right arrow over ( b 4zy )}|<|{right arrow over ( a 4ny )}|)].

According to Condition 3, the x coordinate or the y coordinate of the vectors of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode having the larger absolute value is subjected to Condition 1. In other words, the cursor 101 is switched to the relative movement mode when the x coordinates and the y coordinates of the vector {right arrow over (a 41 )} of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode and when the vector {right arrow over (a 4n )} is shifted even slightly.

FIG. 8 illustrates the shift of the stylus pen 103 on the working area 150 of the PDA 104 according to the fourth embodiment and the corresponding movement of the cursor 101 controlled in accordance with the movement of the stylus pen 103 in the moving mode and the stop mode. In FIG. 8 , the dotted arrow in the working area 150 indicates that the stylus pen 103 is in the stop mode. FIG. 8 illustrates the vectors {right arrow over (a 41 )} to {right arrow over (a 43 )} of the shift of the stylus pen 103 on the working area 150 . The drawing shows how the cursor 101 is finely controlled in the same manner as illustrated in FIG. 6 described in the third embodiment. The cursor 101 is switched to the relative movement mode as shown by the vectors {right arrow over (a 44 )} and {right arrow over (b 44 )} when one of the three above-mentioned, predetermined conditions is satisfied.

By changing the constant k 4 , the input of the stylus pen 103 on the working area 150 can be converted into the movement of the cursor in different proportions. By changing the constants K 41 and K 42 , the conditions for switching the control of the cursor 101 can be changed.

FIG. 9 is a flow chart illustrating exemplary logic for moving a cursor 101 based on the operation of a touch pad 150 according to the fourth embodiment. The exemplary logic may be implemented in program code (software) that is executed by a computer, such as PC 102 , in order to detect the operation of the touchpad and display a cursor 101 on a display device, such as monitor 100 .

In step S 500 , conversion proportion constants (k 4 , K 41 and K 42 ) are obtained. In Step S 501 , the vector of shift of the pointing device immediately before movement of the pointing device stopped is set to zero.

A user places a pointing device, such as a stylus 103 in contact with a predetermined working area 150 . The user moves the pointing device 103 while it is in contact with the working area 150 . Such movement of the pointing device 103 while in contact with the predetermined working area 150 is detected in step S 502 . If detection of movement of the pointing device 103 while in contact with the predetermined working area 150 is not determined in step S 502 , the logic of step S 502 is repeated until such detection occurs.

After detection of movement of the pointing device 103 while in contact with the working area 150 (step S 502 ), the logic proceeds to step S 504 where the location to move the cursor 101 on the display device 100 is determined. The cursor location as a reflection of the pointing device 103 is determined by determining the sum of the vector of the shift of the pointing device and the vector of the shift of the pointing device immediately before movement of the pointing device was stopped. The sum is multiplied by a conversion proportion constant (k 4 ). The cursor 101 is moved to the determined location on the display device 100 in step S 505 .

The logic then proceeds to step S 506 to determine if the pointing device 103 is still in contact with the working area 150 . If the pointing device 103 is not still in contact with the predetermined working area 150 , the logic returns to step S 501 . If the pointing device 103 is still in contact with the working area 150 , the logic proceeds to step S 508 to determine if the pointing device 103 is still moving.

If the pointing device 103 is in the stop mode (in contact with the working surface 150 , but not moving), the logic proceeds from step S 508 to step S 510 where the vector shift of the pointing device 103 immediately before movement of the pointing device 103 stopped is saved. The logic then returns to step S 504 to determine the location to move the cursor 101 on the display device 100 .

If the pointing device 103 is still moving (yes in step S 508 ), the logic proceeds to step S 512 to determine if a predefined condition has been satisfied. In the exemplary embodiment described above, there are three conditions and any one of the three predefined conditions may be satisfied. In the exemplary embodiment described above, the conditions used to determine whether the cursor mode is switched to relative mode are based on the values and magnitude of the current shift compared with the values and magnitude of the vector of the shift of the pointing device 103 immediately before the pointing device was switched to the stop mode. Vector multiple constants K 41 and K 42 (obtained in step S 500 ) are used in these comparisons. If any of the predefined conditions are satisfied (yes in step S 512 ), the logic returns to step S 501 . However, if none of the predefined conditions are satisfied, the cursor is displayed in a relative mode. In order to display the cursor in the relative mode, the logic returns to step S 504 where a cursor display location is determined by determining the sum of the vector of the current shift of the pointing device and the vector of the shift of the pointing device immediately before movement of the pointing device was stopped and multiplying the sum by a conversion proportion constant (k 4 ).

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 6 of 7

As described above, according to the fourth embodiment, the movement of the cursor 101 can be appropriately switched between the mode in which the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode affects the movement of the cursor 101 and the mode in which the vector of the shift of the stylus pen 103 immediately before the stylus pen 103 is switched to the stop mode, while maintaining the contact between the stylus pen 103 and the working area 150 .

Fifth Embodiment

A fifth embodiment is described below. The structure of the system and the basic operation are the same as the first embodiment described above.

FIG. 10 illustrates the shift of the stylus pen 103 on the working area 150 of the PDA 104 according to this embodiment and the corresponding movement of the cursor 101 controlled in accordance with the movement of the stylus pen 103 in the moving mode and the stop mode. In FIG. 10 , the PC 102 includes a display area 205 that is the area the cursor 101 can move on the display. The coordinates of a vector inside the display area 205 are (x 52 , Y 52 ). The working area 150 on the PDA 104 includes an effective region 201 that corresponds to the above-mentioned display area 205 . The coordinates of a vector inside the effective region 201 are (x 51 , Y 51 ). The area of the working area 150 excluding the effective region 201 is an ineffective region 202 .

When the cursor 101 is operated by input to the PDA 104 , the upper left corner of the effective region 201 on the working area 150 is set as an origin. The absolute coordinates {right arrow over (a 51 )}, {right arrow over (a 52 )}, . . . , and {right arrow over (a 5n )} indicate the positions the stylus pen 103 contacts, wherein {right arrow over (a 5n )} can be expressed as ({right arrow over (a 5nx )}, {right arrow over (a 5ny )}) (or {right arrow over (a 5n )}=({right arrow over (a 5nx )}, {right arrow over (a 5ny )}). The absolute coordinates {right arrow over (b 51 )}, {right arrow over (b 52 )}, . . . , and {right arrow over (b 5n )} indicate the positions of the cursor 101 corresponding to the above-mentioned absolute coordinates {right arrow over (a 51 )}, {right arrow over (a 52 )}, . . . , and {right arrow over (a 5n )}, of the stylus pen 103 , wherein {right arrow over (b 5n )} can be expressed as ({right arrow over (b 5nx )}, {right arrow over (b 5ny )}) (or {right arrow over (b 5n )}=({right arrow over (b 5nx )}, {right arrow over (b 5ny )}).

In the fifth embodiment, each of the vectors {right arrow over (a 51 )}, {right arrow over (a 52 )}, . . . , and {right arrow over (a 5n )} of the shift of the stylus pen 103 on the working area 150 correspond to vectors {right arrow over (c 51 )}, {right arrow over (c 52 )}, . . . , and {right arrow over (C 5n )} of the cursor 101 , respectively. In this embodiment, the vectors are controlled so that they satisfy the formulas below. In other words, when the stylus pen 103 contacts, for example, the position {right arrow over (a 51 )}, the cursor located at the position {right arrow over (b 51 )} moves according to the vector {right arrow over (c 51 )}.

c

51

⁢

x

→

=

=

=

=

…

…

…

c

5

⁢

nx

→

=

=

Here, constants k 5x and k 5y are less than or equal to one (1), where {right arrow over (c 5n )}=({right arrow over (c 5x )}, {right arrow over (c 5y )}).

The movement control of the cursor 101 according to the fifth embodiment is shown in FIG. 10 . The dotted line and the solid line in FIG. 6 are vectors indicating the absolute coordinates of the stylus pen 103 . In actuality, the stylus pen 103 contacts only the positions {right arrow over (a 51 )} and {right arrow over (a 52 )}.

According to FIG. 10 , the cursor 101 is moved from its current position {right arrow over (b 5n )} according to the difference with the absolute coordinates {right arrow over (a 5n )} input by the stylus pen 103 on the PDA 104 . The cursor 101 , however, is actually moved from the current position {right arrow over (b 5n )} along the vector {right arrow over (c 5n )}, which is determined by taking into consideration the size ratio of the display area 205 of the PC 102 and the effective region 201 of the working area 150 of PDA 104 . For example, when the stylus pen 103 comes in contact with the position {right arrow over (a 51 )}, the cursor 101 at the position {right arrow over (b 51 )} moves along the vector {right arrow over (c 51 )} and reaches the position {right arrow over (b 52 )}. Then, when the stylus pen 103 comes in contact with the position {right arrow over (a 52 )}, the cursor 101 at the position {right arrow over (b 52 )} moves along the vector {right arrow over (c 52 )}. In this way, when moving the cursor 101 a long distance, the movement of the stylus pen 103 can be reduced. When moving the cursor 101 a short distance, the cursor 101 can be moved so that the relative position of the point of the stylus pen 103 contacts on the effective region 201 and the relative position of the position of the cursor 101 on the display area 205 are substantially equal. In FIG. 10 , as it is apparent from the position {right arrow over (a 52 )} that is on the ineffective region 202 of the working area 150 , even if the stylus pen 103 contacts a point on the ineffective region 202 , the cursor 101 can be effectively moved on the display area 205 .

By changing the constants k 5x and k 5y , the input of the stylus pen 103 on the working area 150 can be converted into the movement of the cursor in different proportions.

FIG. 11 is a flow chart illustrating exemplary logic for moving a cursor 101 based on the operation of a touch pad 150 according to the fifth embodiment. The exemplary logic may be implemented in program code (software) that is executed by a computer, such as PC 102 , in order to detect the operation of the touchpad and display a cursor 101 on a display device, such as monitor 100 .

In step S 600 , pointing device coordinates for an effective region of the touchpad and conversion proportion constants (k 5x and k 5y ) are obtained. In step S 602 , the upper left coordinates of the effective region of the touchpad (obtained in step S 600 ) are set as the pointing device origin.

›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 7 of 7

A user places a pointing device, such as a stylus 103 in contact with a predetermined working area 150 . The user moves the pointing device 103 while it is in contact with the working area 150 . Such movement of the pointing device 103 while in contact with the predetermined working area 150 is detected in step S 604 . The detection determination step (step (S 604 )) is repeated until movement of the pointing device 103 while in contact with the working area 150 is detected.

After detection of movement of the pointing device 103 while in contact with the working area 150 (step S 604 ), the logic proceeds to step S 606 where a starting cursor display location is determined. Next, in step S 608 , a cursor display vector is determined by taking into consideration the conversion proportion constants (k 5x and k 5y ) and the size ratio of the display area of the display device and the effective region of the touchpad (obtained in step S 600 ). In step S 610 , the cursor is moved from the starting display location (determined in step S 606 ) along the vector computed in step S 608 . The logic then returns to step S 604 .

As described above, according to the fifth embodiment, the effective region 201 on the working area 150 can be effectively used and the movement of the stylus pen 103 can be reduced for moving the cursor 101 a long distance. Consequently, the operation of the touch pad improves.

Other Embodiments

The present invention may be applied to a system comprising a plurality of apparatuses (for example, a host computer, an interface device, a reader, and a printer) or an apparatus comprising a single device (for example, a copy machine, or a facsimile machine). A storage medium with program code (software) for performing the functions according to the above-described embodiments may be supplied. The program code stored in the storage medium can be read and executed by the computer (central processing unit (CPU) or microprocessing unit (MPU)) in the system or the apparatus.

In this case, the program code read from the storage medium performs the functions according to the above-described embodiments.

The storage medium for supplying the program code may be, for example, a floppy disk, a hard disk, an optic disk, a magnetic optical disk, a compact disc read-only memory (CD-ROM), a compact disc rewriteable (CD-R), a magnetic tape, a non-volatile memory card, or a read-only memory (ROM).

By executing the program code read by the computer, the functions of the above-described embodiments are performed. Moreover, a part of the processing for performing the functions of the above-described embodiments are carried out by an operating system (OS) of the computer based on the commands of the program code.

After the program code read from the storage medium and written into a memory, including in a function extension board installed on the computer or a function extension unit connected to the computer, the CPU or MPU included in the function extension board or the function extension unit carries out the actual processing.

As described above, according to these embodiments, the movement of the cursor can be reduced for specifying coordinates of the cursor by providing input on the working area.

Moreover, the control method of the cursor can be switched based on the input on the working area.

While the present invention has been described with reference to what are presently considered to be the preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. On the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

Claims as granted

12 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

8 codes
IPC · International Patent Classification
Section G — Physics
  • G06F3/038
  • G09G5/08
  • G06F3/048
  • G06F3/03
  • G06F3/041
  • G09G5/00
USPC · US Patent Classification
345/157345/163

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJul 2004Jan 2005Jul 2005Jan 2006Jul 2006Jan 2007Jul 2007Jan 2008USPTOApplicantNon-final rejectionResponse after non-final
USPTOApplicanthover for detail · click to open
Pendency
3.5 y
1,280 days filing → grant
Office actions
1
non-final + final
Responses
1
no RCE
Examiner
Richard Hjerpe
art unit 2629 · TC 2600
Citations: 8 back · 3 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom20042006200820102012201420162018202020222024Owner 2
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock