Abstract:
A touchpad and supporting logic that provides absolute or relative positioning of a graphics cursor on a display. Absolute positioning is preferably invoked by touching the touchpad in a designated region. Relative positioning is preferably implemented by continual movement across a touchpad relative to a reference location. A method of achieving absolute and relative positioning is also disclosed.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to positioning a graphics cursor on a computer display and to a positioning device that permits both absolute and relative positioning.  
         BACKGROUND OF THE INVENTION  
         [0002]    The prior art contains many devices for positioning a graphics cursor within a graphics user interface (GUI). Examples of known input or positioning devices include touchpads, touch screens, track balls, computer tablets and computer mouse products. These devices utilize either absolute or relative positioning schemes to achieve placement of a cursor at a desired location.  
           [0003]    Absolute positioning schemes are commonly implemented in devices such as graphic tablets and touch screens. In absolute positioning, there is a one to one correspondence between a point on the positioning device and a point on the computer screen. Thus, designation of a point on the positioning device results in a predefined response at the corresponding position on the computer screen. Disadvantages of absolute positioning include that the devices tend to be relatively large to maximize the number of selectable points on the input device, the devices tend to lack precision (i.e., fine positioning cannot be achieved) and the devices are often prone to alignment problems in which it is difficult to have specific positions on the input device repeatedly translate to the same point on the computer screen. Relative positioning schemes are commonly utilized in devices such as track balls, mice and touchpads, etc. In relative positioning, a graphics cursor is positioned by moving an input device relative to its current position. Relative positioning schemes generally strike a compromise between the effective handling of large graphics cursor movements and fine positioning. The result of this compromise is often a positioning device that achieves neither desired levels of large graphics cursor movement or fine positioning.  
           [0004]    A related positioning scheme is acceleration-based relative positioning. In this scheme, the rate at which the input device is accelerated corresponds to the rate at which the graphics cursor is moved. While acceleration-based techniques facilitate both fine positioning and large graphics cursor movements, their design and implementation are complicated. The use of acceleration based devices can also be frustrating not only to new users but also to experienced users that are used to a device with a slightly different acceleration sensitivity.  
           [0005]    U.S. Pat. No. 5,327,161, issued Jul. 5, 1994, to James Logan and Blair Evans is representative of prior art positioning devices. While prior art positioning devices have contributed to the advancement of computer-user interfaces, there is room for improvement. For example, at times a user may desire absolute positioning to immediately move to a desired location on a screen. At other times, a user may desire relative positioning for efficient placement of a graphics cursor relative to its previous position, e.g., in positioning a graphics cursor amongst text characters.  
           [0006]    A need thus exists for a positioning device that provides both absolute positioning, e.g., for large graphics cursor movements, and relative positioning, e.g., for fine placement of a graphics cursor.  
         SUMMARY OF THE INVENTION  
         [0007]    Accordingly, it is an object of the present invention to provide a method of achieving both absolute and relative positioning in a computer (or other electronic device) input device.  
           [0008]    It is another object of the present invention to provide an input device that is capable of achieving both absolute and relative positioning of a graphics cursor or the like.  
           [0009]    It is also an object of the present invention to provide a computer or other electronic device that incorporates such an input device.  
           [0010]    These and related objects of the present invention are achieved by use of the apparatus and method for achieving both absolute and relative positioning of a graphics cursor as described herein.  
           [0011]    In one embodiment, the present invention includes a method of positioning a graphics cursor that includes the steps of receiving a touched location indicating signal from a touchpad; determining from a touched location indicating signal whether to invoke an absolute positioning mode of operation or a relative positioning mode of operation; and generating, in said absolute positioning mode of operation, a signal that facilitates formation of a graphics cursor on a display at a location that corresponds to an indicated touched location. Other method steps include detecting continually touching movement on a touchpad and generating a signal that facilitates movement of a graphics cursor from a previous position in a manner analogous to movement of detected continually touching movement relative to a reference location.  
           [0012]    In another embodiment, the present invention includes an electronic apparatus that includes a touchpad; a display; and processing logic coupled between said touchpad and said display that processes touched location signals from said touchpad in such a manner as to provide absolute or relative positioning of a graphics cursor for said display.  
           [0013]    The attainment of the foregoing and related advantages and features of the invention should be more readily apparent to those skilled in the art, after review of the following more detailed description of the invention taken together with the drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0014]    [0014]FIG. 1 is a perspective view of a laptop or notebook computer having a touchpad in accordance with the present invention.  
         [0015]    [0015]FIG. 2 is a plan view of a touchpad in accordance with the present invention.  
         [0016]    [0016]FIG. 3 is a flow diagram of logic that implements the operation of a touchpad in a word processing application in accordance with the present invention.  
         [0017]    [0017]FIG. 4 is an embodiment of a keyboard in accordance with the present invention. 
     
    
     DETAILED DESCRIPTION  
       [0018]    Referring to FIG. 1, a perspective view of a laptop or notebook computer  5  having a touchpad  20  in accordance with the present invention is shown. Computer  5  includes components such as a processor or processing logic  6 , memory  7  (these two are shown in phantom lines because they are internal), an alphanumeric keypad  9  and a display screen  10 . Computer  5  also includes a touchpad  20  for use in controlling a graphics cursor such as a cursor arrow  12  or the like. Control buttons  21 , 22 , analogous to the right and left click buttons of a mouse, may also be provided as is known (although alternatives to such buttons are discussed below). Track pad  20  in conjunction with processing logic  6  provides absolute and relative positioning of graphics cursor  12 .  
         [0019]    Referring to FIG. 2, a plan view of touch pad  20  in accordance with the present invention is shown. Touchpad  20  preferably includes a known touchpad surface  23  that provides an indication of the point on the surface of the touchpad that a user&#39;s finger or stylus or the like is touching. In a preferred embodiment, touchpad  20  has at least 50 points per linear inch. Suitable touchpad surfaces are known in the art. In the text that follows, operation of touchpad  20  is described first, followed by a description of logic through which the operation is achieved.  
         [0020]    Touchpad  20 , in a preferred embodiment, has dimensions of approximately 2″×2″ so that it may be readily installed in a notebook computer (FIG. 1), a keyboard (FIG. 4), a stand alone unit or the like. It should be recognized, however, that the touchpad may be made of any desired dimensions without departing from the scope of the present invention. Touchpad  20  preferably has two markings  25 , 26  for visual and/or tactile reference. These markings may have a physical relief so that they may be determined by touch or may be painted on or the like. Regardless of how they are embodied, markings  25 , 26  are provided over or aligned with appropriate regions of the touchpad surface as now discussed.  
         [0021]    One marking is a line  26  that is preferably provided approximately ½″ or ¼″ from an edge (the top edge in FIG. 2) of the touchpad. Line  26  divides touchpad  20  into a first region  30  that is approximately 1 and ½″×2″ and maps to a computer screen such as screen  12  of FIG. 1. It should be recognized that this region has a shape analogous to that of a computer screen, i.e., the horizontal dimension is greater than the vertical dimension. Points in region  30  map to corresponding points in an associated display screen such that absolute positioning can be achieved. Designation of a point in region  30 , with a finger or stylus or the like (hereinafter referred to as a “finger”), preferably invokes a software routine executed by processing logic  6  or equivalent logic (discussed in more detail below with reference to FIG. 3) that moves a predefined graphics cursor to a location on the associated display screen that corresponds to the point touched.  
         [0022]    Since touchpad  20  may be small compared to a display screen, there may not be enough points on touchpad  20  to permit accurate placement of a graphics cursor. Relative positioning is, therefore, preferably invoked to achieve this fine placement and dot or location  25  preferably provides a reference point for relative positioning.  
         [0023]    After a point in region  30  has been touched by a finger (absolute positioning), the act of sliding that finger (as opposed to lifting the finger off the touchpad) preferably invokes relative positioning. The graphics cursor (on screen  12 ) does not move while the finger is being moved towards dot  25 , however, movement away from the dot causes the cursor to move in that direction. Movement from a touched location is preferably processed using an x-y coordinate system.  
         [0024]    The region above line  26  (region  31 ) is provided so that a user can invoke relative positioning directly. If a user first places their finger in region  31 , i.e., above line  26 , and slides that finger towards dot  25 , then relative positioning is invoked.  
         [0025]    To emphasize the preferred operation of touchpad  20 , the following four principles of operation are espoused:  
         [0026]    (1) When a finger first makes contact with the touchpad, if the point of the contact is below horizontal line  26 , then the graphics cursor is immediately moved to the point on the display screen that corresponds to the point in the lower area  30  of the touchpad where contact was made. Making contact with the touchpad above line  26  does not change the position of the graphics cursor.  
         [0027]    (2) Sliding a finger towards the center dot from any point on the touchpad (maintaining contact with the pad as the finger is slid) will not move the graphics cursor.  
         [0028]    (3) Sliding a finger away from the center dot from any point on the touchpad (again, maintaining contact with the touchpad) will move the graphics cursor in the direction indicated by the direction the finger is slid.  
         [0029]    (4) The distance or rate of speed at which the graphics cursor is moved in response to an outward movement of the finger is a function of the distance of the finger from the center dot. Movement near the edge of the touchpad preferably results in a larger movement of the graphics cursor than a movement near the center dot. Note that there should be a smooth transition from small movements of the graphics cursor to large movements as the finger is slid outward, however, the transition need not be linear.  
         [0030]    Referring to FIG. 3, a flow diagram of logic that implements the operation of touchpad  20  in a word processing application in accordance with the present invention is shown. It should be recognized that the flow diagram of FIG. 3 is for a representative word processing application and the formation of graphics cursors in other word processing applications and in non-word processing applications (e.g. spread sheet applications, design applications, etc.) may differ without departing from the scope of the present invention. In a preferred embodiment, the logic of FIG. 3 is implemented as software that is executed by the processor of the computer with which the touchpad is used, e.g., processor  6  of computer  5 . This software may be installed as device driver software. Where appropriate, the logic of FIG. 3 produces signals (e.g., output signals) that interact with known display graphics generation logic to create the computer or other electronic device display.  
         [0031]    At step  102 , a determination is made as to whether touchpad  20  has been touched. If it has, a determination is made in step  104  as to whether region  30  has been touched thus invoking absolute positioning. If region  30  was touched, a location indicating graphics cursor is moved in the on-screen display to a location that corresponds to the point touched (step  106 ). If region  30  was not touched, then by default region  31  that invokes relative position was touched.  
         [0032]    In step  122 , a determination is made as to whether the finger is moved away from the center (or other designated reference location) of the touchpad.  
         [0033]    If it has been, then a relative movement coefficient is calculated based on the position of the finger relative to the center of the touchpad (step  123 ). In a preferred embodiment, the amount of relative movement is increased as the distance from the center increases (discussed in more detail below). In step  124 , the position indicating graphics cursor is moved by the appropriate relative amount. This or like schemes provide accelerated-type relative positioning.  
         [0034]    In step  110 , processing related to the new graphics cursor position is performed. This may involve implementing a drag and drop or cut and paste or the like.  
         [0035]    If the finger is released at step  108 , then flow proceeds to step  102 . If the finger is not released, then flow proceeds to step  122 .  
         [0036]    Referring more specifically to the processing of step  110  that may be invoked in response to clicking a conventional mouse, it should be recognized that alternatives to mouse button depressions or the like for implementing graphics cursor movement are contemplated and within the present invention. Such alternatives may include detecting the touching of a second distinct location on touchpad  20 . The detection of a second distinct touch could be treated the same as a control button depression. An alternative embodiment has been contemplated that includes tapping the touchpad screen. In this embodiment, an additional parameter such as time is added that would respond to a tap or taps that occurs within a predefined time period. If a second distinct touching of the touchpad is detected within this predefined time period, a control signal is generated. This control signal could be treated the same as a control button depression or perform some other function.  
         [0037]    Referring more specifically to the processing of step  123 , one location based relative position scheme may be implemented as now described. The below parameters are defined as stated:  
                                                       Xa   x coordinate of old finger position on touchpad           Ya   y coordinate of old finger position on touchpad           Xb   x coordinate of new finger position on touchpad           Yb   y coordinate of new finger position on touchpad           X0   x coordinate of center dot on touchpad           Y0   y coordinate of center dot on touchpad           Px   x coordinate of current graphics cursor on               screen           Py   y coordinate of current graphics cursor on               screen           Qx   x coordinate of next graphics cursor on screen           Qy   y coordinate of next graphics cursor on screen           K   constant dependent on particular hardware               characteristics.                      
 
         [0038]    The objective is to compute Qx and Qy from the other parameters listed above. Assuming that the criteria for absolute positioning are maintained,  
         [0039]    If (X 0 &lt;Xa) and (Xa&lt;Xb)  
         [0040]    Then Qx=Px+K*(Xa−X 0 )*(Xb−Xa)  
         [0041]    Else if (X 0 &gt;Xa) and (Xa&gt;Xb)  
         [0042]    Then Qx=Px−K*(X 0 −Xa)*(Xa−Xb)  
         [0043]    Else Qx=Px  
         [0044]    If (Y 0 &lt;Ya) and (Ya&lt;Yb)  
         [0045]    Then Qy=Py+K*(Ya−Y 0 )*(Yb−Ya)  
         [0046]    Else if (Y 0 &gt;Ya) and (Ya&gt;Yb)  
         [0047]    Then Qy=Py−K*(Y 0 −Ya)*(Ya−Yb)  
         [0048]    Else Qy=Py.  
         [0049]    With reference to the above constant K, this constant determines the magnitude of movement of graphics cursor position relative to movement on the touchpad surface. The constant is dependent on size and resolution of screen, size and resolution of touchpad, and sampling rate of touchpad position.  
         [0050]    Referring to FIG. 4, an embodiment of a keyboard  50  in accordance with the present invention is shown. Keyboard  50  consists of an alphanumeric keypad or the like  9  such as that found on conventional computer keyboards. Keyboard  50  also includes touchpad  20  and in at least one embodiment control buttons  21 , 22  (or an equivalent therefor).  
         [0051]    While the invention has been described in connection with specific embodiments thereof, it will be understood that it is capable of further modification, and this application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice in the art to which the invention pertains and as may be applied to the essential features hereinbefore set forth, and as fall within the scope of the invention and the limits of the appended claims.