Abstract:
An input apparatus enables a user to input information selected by the user as the user intends by using a comparatively small input surface area. The input apparatus comprises an indicating position detecting part detecting an indicating position, a candidate input information replacing part replacing a candidate of the input information based on a shift of the indicating position, and an input information determining part determining the input information from the candidate of the input information.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention generally relates to input apparatuses, input methods and input programs for inputting information, and more particularly to an input apparatus, an input method and an input program for inputting character information and application information.  
           [0003]    2. Description of the Related Art  
           [0004]    Regarding an input apparatus for a computer, there is a type of input apparatus that enables a user to input information such as a character by writing the information on a touch panel of such a computer by means of a pen and the like. Also, another type of input apparatus enables a user to input a character by touching or clicking the character on a keyboard projected on the screen of such a computer.  
           [0005]    However, when a user uses these types of computers to input information, that is, when the user inputs a character on such a touch panel or such a keyboard, it is necessary to prepare a reasonably wide area for the touch panel or the keyboard so that the user can conveniently input the character on the touch panel or properly recognize characters on the keyboard. Also, when a user manually writes a character on such a touch panel of an input apparatus, the input apparatus is likely to recognize the written character differently from the user&#39;s intended character depending on the user&#39;s handwriting of the written character.  
         SUMMARY OF THE INVENTION  
         [0006]    It is a general object of the present invention to provide an input apparatus, an input method and an input program in which the above-mentioned problems are eliminated.  
           [0007]    A more specific object of the present invention is to provide an input apparatus, an input method and an input program that allow a user to input information by using a comparatively small area.  
           [0008]    Additionally, another more specific object of the present invention is to provide an input apparatus, an input method and an input program wherein a user can properly input information as the user intends.  
           [0009]    In order to achieve the above-mentioned objects, there is provided according to one aspect of the present invention an input apparatus for inputting input information selected by a user, comprising: an indicating position detecting part detecting an indicating position; a candidate input information replacing part replacing a candidate of the input information based on a shift of the indicating position; and an input information determining part determining the input information from the candidate of the input information.  
           [0010]    According to the above-mentioned invention, the user can select input information by moving the indicating position. As a result it is possible to provide an input apparatus that enables the user to input the input information as the user intends by using a comparatively small area.  
           [0011]    In the above-mentioned input apparatus, the candidate input information replacing part may replace the candidate of the input information when the indicating position is shifted along a rough circle.  
           [0012]    According to the above-mentioned invention, it is possible to provide an input apparatus that enables the user to input the input information by simply shifting the indicating position along a rough circle.  
           [0013]    In the above-mentioned input apparatus, the input information may be character information.  
           [0014]    According to the above-mentioned input apparatus, it is possible to provide an input apparatus that allows the user to input character information.  
           [0015]    In the above-mentioned input apparatus, the input information may be application information for starting an application.  
           [0016]    According to the above-mentioned input apparatus, it is possible to provide an input apparatus that enables the user to input the start of an application.  
           [0017]    Additionally, there is provided according to another aspect of the present invention an input method for implementing an input apparatus for inputting input information selected by a user, the input method comprising: an indicating position detecting step of detecting an indicating position; a candidate input information replacing step of replacing a candidate of the input information based on a shift of the indicating position; and an input information determining step of determining the input information from the candidate of the input information.  
           [0018]    Additionally, there is provided according to another aspect of the present invention an input program for causing a computer to execute: an indicating position detecting step of detecting an indicating position; a candidate input information replacing step of replacing a candidate of the input information based on a shift of the indicating position; and an input information determining step of determining the input information from the candidate of the input information.  
           [0019]    Additionally, there is provided according to another aspect of the present invention a computer readable recording medium for recording an input program for causing a computer to execute: an indicating position detecting step of detecting an indicating position; a candidate input information replacing step of replacing a candidate of the input information based on a shift of the indicating position; and an input information determining step of determining the input information from the candidate of the input information.  
           [0020]    According to the above-mentioned inventions, the user can select input information by moving the indicating position. As a result, the user can input the input information as the user intends by using a comparatively small area.  
           [0021]    Other objects, features and advantages of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0022]    [0022]FIG. 1 is a diagram illustrating an overall structure of a system including input apparatuses according to an embodiment of the present invention;  
         [0023]    [0023]FIG. 2 is a block diagram illustrating a hardware configuration of a computer according to the embodiment;  
         [0024]    [0024]FIG. 3 is a diagram illustrating a graphic displayed on the input apparatus according to the embodiment;  
         [0025]    [0025]FIG. 4 is a perspective view of the input apparatus according to the embodiment;  
         [0026]    [0026]FIG. 5 is a block diagram illustrating a hardware configuration of the input apparatus according to the embodiment;  
         [0027]    [0027]FIG. 6 is a diagram illustrating a Hiragana character table;  
         [0028]    [0028]FIG. 7 is a diagram illustrating a case where an arc is drawn clockwise;  
         [0029]    [0029]FIG. 8 is a diagram illustrating a case where an arc is drawn counterclockwise;  
         [0030]    [0030]FIG. 9 is a diagram illustrating a case where a straight line is drawn;  
         [0031]    [0031]FIG. 10 is a diagram illustrating a case where a figure is drawn on a plane in which an X-Y coordinate system is set;  
         [0032]    [0032]FIG. 11 is a flowchart of a procedure for determining what operation a user intends based on a locus drawn by the user according to the embodiment;  
         [0033]    [0033]FIG. 12 is a diagram illustrating a Katakana character table;  
         [0034]    [0034]FIG. 13 is a flowchart of a coordinate determination process in the flowchart shown in FIG. 11;  
         [0035]    [0035]FIG. 14 is a flowchart of a first process in the flowchart shown in FIG. 13;  
         [0036]    [0036]FIG. 15 is a flowchart of a second process in the flowchart shown in FIG. 13;  
         [0037]    [0037]FIG. 16 is a flowchart of a third process in the flowchart shown in FIG. 13;  
         [0038]    [0038]FIG. 17 is a flowchart of a fourth process in the flowchart shown in FIG. 13;  
         [0039]    [0039]FIG. 18 is a flowchart of a fifth process in the flowchart shown in FIG. 13;  
         [0040]    [0040]FIG. 19 is a flowchart of a sixth process in the flowchart shown in FIG. 13;  
         [0041]    [0041]FIG. 20 is a flowchart of a seventh process in the flowchart shown in FIG. 13;  
         [0042]    [0042]FIG. 21 is a flowchart of an eighth process in the flowchart shown in FIG. 13;  
         [0043]    [0043]FIG. 22 is a diagram illustrating a case where an arc is drawn counterclockwise in the lower-left direction;  
         [0044]    [0044]FIG. 23 is a diagram illustrating a case where a straight line is drawn in the lower direction; and  
         [0045]    [0045]FIG. 24 is a diagram illustrating a case where an arc is drawn counterclockwise in the lower-right direction. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0046]    In the following, an embodiment of the present invention will be described with reference to the accompanying drawings.  
         [0047]    [0047]FIG. 1 shows an overall structure of a system including an input apparatus according to the embodiment of the present invention. As is shown in FIG. 1, the system has two types of input apparatuses; an input apparatus  2  mounted on a display apparatus  4  of a computer  1  and an input apparatus  3  provided exterior to the computer  1 . These input apparatuses  2  and  3  are connected to the computer  1  via USB (Universal Serial Bus) cables and the like. The input apparatuses  2  and  3  provide the computer  1  with data such as a detected touch position so that the computer  1  can display the touch position. Here, the data may be sent in either a serial fashion or a parallel fashion.  
         [0048]    [0048]FIG. 2 shows a block diagram of the hardware configuration of the computer  1 . As is shown in FIG. 2, the computer  1  comprises the display apparatus  4 , a drive apparatus  5 , a main memory apparatus  6 , a secondary memory apparatus  7 , a CPU (Central Processing Unit)  8 , and a USB interface  9 . Also, these parts are connected to each other via a bus. The display apparatus  4  displays various information items so that a user can operate the computer  1 . The drive apparatus  5  serves to read/write data from/to a detachable recording medium such as a CD-ROM. For instance, the drive apparatus  5  is used to read a program from a CD-ROM and then install the program in the secondary memory apparatus  7 . The CPU  8  reads a program from the secondary memory apparatus  7  and then executes the program. The CPU  8  uses the main memory apparatus  6  to temporarily store such a program and data during execution by the CPU  8 . The USB interface  9  serves to communicate data between the computer  1  and the input apparatus  3  in accordance with USB transmission protocol.  
         [0049]    A description will now be given of the input apparatuses  2  and  3 .  
         [0050]    The input apparatus  2  is formed of a touch panel having a sensor part for detecting a touch of a stylus pen, a finger, or a pen to the touch panel. The input apparatus  2  is fixed to the surface of the display apparatus  4 .  
         [0051]    [0051]FIG. 3 shows a graphic  10  displayed on the display apparatus  4 . The graphic  10  has a touch part  11  formed of a dakuten input part  12 , a kutoten input part  13 , and a display part of the Japanese Hiragana character “         ”. Here, a “dakuten” is attached to certain Japanese Hiragana characters and works as a spoken sound mark, and a “kutoten” means a Japanese punctuation symbol. A user can input a character in the input apparatus  2  by touching the touch part  11  with a pen or a finger. The user touches the dakuten input part  12  in order to attach a dakuten to a displayed character. Also, the user touches the kutoten input part  13  in order to place a kutoten at the next position of the displayed character.  
         [0052]    Furthermore, the graphic  10  has an input result display box  14  for displaying an input result, an OK button  15 , and a cancel button  16  together with the touch part  11 .  
         [0053]    [0053]FIG. 4 shows a perspective view of the input apparatus  3 . As is shown in FIG. 4, the input apparatus  3  has a sensor part  17  for detecting a touch of a stylus pen, a finger, or a pen  18  thereto and the touch point thereof. The input apparatus  3  may display input information on the display apparatus  4  like the input apparatus  2  or on the input apparatus  3  itself.  
         [0054]    [0054]FIG. 5 shows a hardware configuration of an input apparatus according to the embodiment. Particularly, FIG. 5 shows the input apparatus  3 . However, the input apparatus  2  is also formed of a similar hardware configuration to that of the input apparatus  3  shown in FIG. 5. As is shown in FIG. 5, the input apparatus  3  has the above-mentioned sensor part  17 , an A/D converter  19 , an MCU (Micro Computer Unit)  20 , a memory  21 , and a USB controller  22 . The sensor part  17  detects a touch thereto and the touch position thereof as mentioned above. The detected signal is supplied to the A/D converter  19 , and the converted signal is supplied to the MCU  20 . The MCU  20  processes the supplied data signal and provides the processed data to the computer  1  via the USB controller  22 . The memory  21  is used to temporarily store a program for processing the data and data to be processed.  
         [0055]    A description will now be given of a definition of a “touch” to the sensor part  17 . When a user continues touching the sensor part  17  over a predetermined time period, it is considered that the sensor part  17  is touched. Accordingly, even if the user accidentally makes momentary contact with the sensor part  17 , it is determined that there is no touch to the sensor part  17 .  
         [0056]    On the other hand, the user stops touching the sensor part  17 , for instance, by releasing a pen touched thereto from the sensor part  17 . Then, if the touch to the sensor part  17  has not been detected over a predetermined time period, it is determined that the user has stopped touching the sensor part  17 . In this case, the most recently detected coordinate during the touch condition is considered as the detection point of the touch operation.  
         [0057]    A description will now be given of a click operation and a double-click operation on the sensor part  17 . It is supposed that a touch to the sensor part  17  is detected. Then, if the touch is released within a predetermined time period and the release condition continues over a predetermined time period, it is considered that the user has clicked on the sensor part  17 . Furthermore, if the above release condition does not continue over the predetermined time period and another touch is detected within the predetermined time period, this operation (first touch) is registered as the first click of the double click. Furthermore, if a similar operation to the first click is detected after the registration of the first click, the operation (second touch) is considered as the second click of the double click. As mentioned above, the double click is detected.  
         [0058]    A description will now be given of a drag operation. In the drag operation, a user moves a pen as the user&#39;s pen touches the sensor part  17 . If the above second touch is detected after the registration of the above first click of the double click operation and then the second touch continues over (in excess of) the predetermined time period, the operation is considered as the drag operation.  
         [0059]    As mentioned above, as long as the touch condition and the release condition do not persist over a predetermined time period, it is not determined that the user performs the touch and the release operations, respectively. In other words, if these conditions persist for less than the predetermined time period, it is determined that the current condition has not been changed. Of course, it is possible to consider just a touch and a release as the touch operation and the release operation. However, the above definitions of the touch and the release operations are often useful in practice.  
         [0060]    A description will now be given of how a user inputs information through the input apparatuses  2  and  3 . Here, although the input apparatus  3  and a pen are used in the following description, the user can input the information through the input apparatus  2  like the input apparatus  3 . Additionally, the description handles the case where the user inputs a Japanese Hiragana character displayed on the display apparatus  4 .  
         [0061]    A Hiragana character table  24  shown in FIG. 6 is described. As is shown in FIG. 6, 50 Hiragana characters are arranged according to the syllabary as shown in the character table  24 . Only the Hiragana character surrounded by a scope  25  is displayed on the display apparatus  4 . In this example, the Hiragana character “         ” surrounded by the scope  25  is displayed on the display apparatus  4 .  
         [0062]    In order to input the desired character, a user operates the scope  25  through the input apparatus  3 . It is noted that the operation of moving the scope  25  is equivalent to that of moving the Hiragana character table  24  in this case. Thus, the user may fix the scope  25  and operate the character table  24  instead of shifting the fixed scope  25 .  
         [0063]    The scope  25  can be moved in the vertical and horizontal directions. A description will now be given, with reference to FIGS. 7 through 10, of the operation method for moving the scope  25  in the two directions.  
         [0064]    There are two fundamental operations. One is an arc drawing operation for drawing an arc on the sensor part  17  by means of the pen  18 , and the other is a line drawing operation for drawing a straight line on the sensor part  17  by means of the pen  18 . FIGS. 7 and 8 handle the arc drawing operation. In FIGS. 7 and 8, an arc is drawn clockwise and counterclockwise, respectively, on the sensor part  17  by means of the pen  18 . On the other hand, FIG. 9 handles the case where a straight line is drawn on the sensor part  17  by means of the pen  18 .  
         [0065]    The drawn arc and the drawn straight line are loci of the touch points of the pen  18  to the sensor part  17 . From this viewpoint, it is convenient that the sensor part  17  is considered as a plane in which an X-Y coordinate system is set. The arc and the straight line are considered as loci in this X-Y coordinate plane.  
         [0066]    [0066]FIG. 11 is a flowchart of a procedure for determining what operation a user performs based on such a locus. Here, the computer  1  may undertake the procedure, or the input apparatus  2  or  3  may carry out the procedure and then supply a result of the procedure to the computer  1 . The following description handles the former case, that is, the case where the computer  1  undertakes the procedure. Here, even if either the computer  1  or the input apparatuses  2  and  3  undertake the procedure, the touch condition and the detection point are detected and then the detection point is converted into a logic-based coordinate point available to the OS (Operating System) mounted in the computer  1 .  
         [0067]    At step S 101  of the flowchart in FIG. 11, it is supposed that the computer  1  detects the touch condition based on a touch to the sensor part  17 . At step S 102 , the computer  1  determines whether or not the touch condition pertains to the double click operation. If the touch condition is determined as the double click, the computer  1  fetches the character surrounded by the scope  25  as an input character to the input apparatus  3  at step S 103 . At step S 104 , the computer  1  discards the maintained coordinate data, and then terminates the procedure at step S 105 .  
         [0068]    If the touch condition is not determined as the double click at step S 102 , the computer  1  proceeds to step S 108 . At step S 108 , the computer  1  determines whether or not a previous touch condition is registered in the computer  1 . If the computer  1  has no previous touch condition, the computer  1  stores the coordinate data of the current touch condition because this touch operation is the first touch. Then, the computer  1  terminates the procedure at step S 107 .  
         [0069]    If it is determined that a previous touch condition is registered in the computer  1 , the computer  1  proceeds to a coordinate determination process at step S 109 . In this coordinate determination process, the computer  1  obtains moving direction information or character type replacement information which will be mentioned later. Additionally, the computer  1  obtains information items regarding the user&#39;s current manipulation phase: a manipulation completion phase, a manipulation continuation phase and an error phase. The coordinate determination process will be described in detail later.  
         [0070]    Based upon the manipulation phase obtained at step S 109 , the computer  1  selects the next process at step S 110 . If the computer  1  obtains the manipulation completion phase indicating that the user&#39;s input manipulation is completed at the current phase, the computer  1  proceeds from step S 111  to step S 112 . At step S 112 , the computer  1  discards the stored coordinate data. Then, at step S 113 , the computer  1  replaces the displayed character based on the moving direction information or the character type replacement information obtained at step S 109 . If the computer  1  obtains the moving direction information, the computer  1  moves the scope  25  in the moving direction indicating where the touch point of the user is headed. If the computer  1  obtains the character type replacement information, the computer  1  replaces the character type, for instance, replaces the current Hiragana character table  24  shown in FIG. 6 with a Katakana character table  26  shown in FIG. 12. Then, the computer  1  terminates the procedure at step S 118 . Here, the displayed character table is not limited to Japanese Hiragana characters and Katanaka characters. An alphabet character table may be also displayed. Also, some figures such as icons of application programs may be displayed. In this case, when the user selects a displayed icon, the computer  1  starts the corresponding application program.  
         [0071]    If the computer  1  obtains the manipulation continuation phase at step S 109 , the computer  1  proceeds from step S 114  to step S 115 . Since the user is currently manipulating the input apparatus  3 , the computer  1  stores the current coordinate data and then terminates the procedure at step S 118 .  
         [0072]    If the computer  1  obtains the error phase at step S 109 , the computer  1  proceeds from step S 116  to step S 117 . Since it is considered that some errors occur with respect to the input manipulation, the computer  1  discards the current coordinate data and then terminates the procedure at step S 118 .  
         [0073]    A description will now be given, with reference to a flowchart in FIG. 13, of the coordinate determination process at step S 109 .  
         [0074]    At step S 201 , the computer  1  compares the current coordinates to the previous coordinates pertaining to the last touch point. The computer  1  computes two differences XA and YA between the current coordinates and the previous coordinates. The difference XA is the difference with respect to the X axis of the sensor part  17 , and the difference YA is the difference with respect to the Y axis of the sensor part  17 . In fact, the two values XA and YA are solved in the following formulae;  
           XA =(the current  X  coordinate)−(the previous  X  coordinate), and  
           YA =(the current  Y  coordinate)−(the previous  Y  coordinate).  
         [0075]    Based upon the differences XA and YA, for instance, if XA is positive, the computer  1  can conclude that the current coordinates have moved from the previous coordinates in the X direction. To the contrary, if XA is negative, the computer  1  can conclude that the current coordinates have moved from the previous coordinates toward the original point of the coordinate system of the sensor part  17 .  
         [0076]    Based upon the values of the differences XA and YA, the computer  1  selects the next process among 8 processes corresponding to 8 cases with respect to supposed pairs of positive and negative values of XA and YA. In the following, these processes will be described. In order to simplify the description, if the current point moves from the previous point in the direction toward the original point with respect to the X axis, the current point is said to move in the left direction. To the contrary, if the current point moves from the previous point in the direction away from the original point with respect to the X axis, the current point is said to move in the right direction. Also, if the current point moves from the previous point in the direction toward the original point with respect to the Y axis, the current point is said to move in the lower direction. To the contrary, if the current point moves from the previous point in the direction away from the original point with respect to the Y axis, the current point is said to move in the upper direction.  
         [0077]    For instance, if the scope  25  is moved on the Hiragana character table shown in FIG. 6, the lower directional shift means that the displayed character is changed according to the order “         ”, “         ”, “         ”, “         ” and “         ”. To the contrary, the upper directional shift means that the displayed character is changed according to the reverse order “         ”, “         ”, “         ”, “         ” and “z, 1  ”. Also, the right directional shift of the scope  25  means that the displayed character is changed according to the order “         ”, “         ”, “         ”, “         ”, “         ”, . . . . To the contrary, the left directional shift means that the displayed character is changed according to the reverse order . . . , “         ”, “         ”, “z, 7  ”, “         ” and “         ”.  
         [0078]    A description will now be given of step S 203 . Step S 203  handles the first case where XA is less than or equal to 0 and YA is less than 0, that is, the current point moves in the lower direction and at least does not move in the right direction from the previous point. When the current point is shifting in such a way, for instance, the user is likely to move the scope  25  counterclockwise in the lower direction. At step S 204 , the computer  1  determines that the user intends to move the scope  25  in the lower direction. Then, the computer  1  proceeds from the step S 205  to step S 302  in FIG. 14 and then examines newly updated values XA and YA again. At step S 302 , if the computer  1  remains unchanged, that is, if the updated XA is less than or equal to 0 and the updated YA is less than 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 304  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 303  and determines whether or not the updated XA is more than 0 and the updated YA is less than 0. When this condition is satisfied, it is determined that the updated current point has moved in the lower-right direction. If the condition is satisfied at the step S 303 , the computer  1  proceeds to step S 305  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at the step S 303 , the computer  1  sets the manipulation phase to the error phase at step S 306  and then terminates the procedure.  
         [0079]    A description will now be given of step S 206 . Step S 206  handles the second case where XA is more than or equal to 0 and YA is less than  0 , that is, the current point moves in the lower direction and at least does not move in the left direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  clockwise in the lower direction. At step S 207 , the computer  1  determines that the user intends to replace the displayed character type. Then, the computer  1  proceeds from the step S 208  to step S 307  in FIG. 15 and then examines newly updated values XA and YA again. At step S 307 , if the computer  1  remains unchanged, that is, if the updated XA is more than or equal to 0 and the updated YA is less than 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 309  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 308  and determines whether or not the updated XA is less than 0 and the updated YA is less than 0. When this condition is satisfied, it is determined that the updated current point has moved in the lower-left direction. If the condition is satisfied at the step S 308 , the computer  1  proceeds to step S 310  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at the step S 308 , the computer  1  sets the manipulation phase to the error phase at step S 311  and then terminates the procedure.  
         [0080]    A description will now be given of step S 209 . Step S 209  handles the third case where XA is less than or equal to 0 and YA is more than 0, that is, the current point moves in the upper direction and at least does not move in the right direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  counterclockwise in the upper direction. At step S 210 , the computer  1  determines that the user intends to move the scope  25  in the upper direction. Then, the computer  1  proceeds from step S 211  to step S 312  in FIG. 16 and then examines newly updated values XA and YA again. At step S 312 , if the computer  1  remains unchanged, that is, if the updated XA is less than or equal to 0 and the updated YA is more than 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 314  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 313  and determines whether or not the updated XA is more than 0 and the updated YA is more than 0. When this condition is satisfied, it is determined that the updated current point has moved in the upper-right direction. If the condition is satisfied at step S 313 , the computer  1  proceeds to step S 315  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 313 , the computer  1  sets the manipulation phase to the error phase at step S 316  and then terminates the procedure.  
         [0081]    A description will now be given of step S 212 . Step S 212  handles the fourth case where XA is more than or equal to 0 and YA is more than 0, that is, the current point moves in the upper direction and at least does not move in the left direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  clockwise in the upper direction. At step S 213 , the computer  1  determines that the user intends to change the displayed character type. Then, the computer  1  proceeds from step S 214  to step S 317  in FIG. 17 and then examines newly updated values XA and YA again. At step S 317 , if the computer  1  remains unchanged, that is, if the updated XA is more than or equal to 0 and the updated YA is more than 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 319  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 318  and determines whether or not the updated XA is less than 0 and the updated YA is more than 0. When this condition is satisfied, it is determined that the updated current point has moved in the upper-left direction. If the condition is satisfied at step S 318 , the computer  1  proceeds to step S 320  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 318 , the computer l sets the manipulation phase to the error phase at step S 321  and then terminates the procedure.  
         [0082]    A description will now be given of step S 215 . Step S 215  handles the fifth case where XA is less than 0 and YA is less than or equal to 0, that is, the current point moves in the left direction and at least does not move in the upper direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  counterclockwise in the left direction. At step S 216 , the computer  1  determines that the user intends to move the scope  25  in the left direction. Then, the computer  1  proceeds from step S 217  to step S 322  in FIG. 18 and then examines newly updated values XA and YA again. At step S 322 , if the computer  1  remains unchanged, that is, if the updated XA is less than 0 and the updated YA is less than or equal to 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 324  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 323  and determines whether or not the updated XA is less than 0 and the updated YA is more than 0. When this condition is satisfied, it is determined that the updated current point has moved in the upper-right direction. If the condition is satisfied at step S 323 , the computer  1  proceeds to step S 325  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 323 , the computer  1  sets the manipulation phase to the error phase at step S 326  and then terminates the procedure.  
         [0083]    A description will now be given of step S 218 . Step S 218  handles the sixth case where XA is less than 0 and YA is more than or equal to 0, that is, the current point moves in the left direction and at least does not move in the lower direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  clockwise in the left direction. At step S 219 , the computer  1  determines that the user intends to move the scope  25  in the left direction. Then, the computer  1  proceeds from step S 220  to step S 327  in FIG. 19 and then examines newly updated values XA and YA again. At step S 327 , if the computer  1  remains unchanged, that is, if the updated XA is less than 0 and the updated YA is more than or equal to 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 329  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 328  and determines whether or not the updated XA is less than 0 and the updated YA is less than 0. When this condition is satisfied, it is determined that the updated current point has moved in the lower-left direction. If the condition is satisfied at step S 328 , the computer  1  proceeds to step S 330  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 328 , the computer  1  sets the manipulation phase to the error phase at step S 331  and then terminates the procedure.  
         [0084]    A description will now be given of step S 221 . Step S 221  handles the seventh case where XA is more than 0 and YA is less than or equal to 0, that is, the current point moves in the right direction and at least does not move in the upper direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  counterclockwise in the right direction. At step S 222 , the computer  1  determines that the user intends to move the scope  25  in the right direction. Then, the computer  1  proceeds from step S 223  to step S 332  in FIG. 20 and then examines newly updated values XA and YA again. At step S 332 , if the computer  1  remains unchanged, that is, if the updated XA is more than 0 and the updated YA is less than or equal to 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 334  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 333  and determines whether or not the updated XA is more than 0 and the updated YA is more than 0. When this condition is satisfied, it is determined that the updated current point has moved in the upper-right direction. If the condition is satisfied at step S 333 , the computer  1  proceeds to step S 335  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 333 , the computer  1  sets the manipulation phase to the error phase at step S 336  and then terminates the procedure.  
         [0085]    A description will now be given of step S 224 . Step S 224  handles the eighth case where XA is more than 0 and YA is more than or equal to 0, that is, the current point moves in the right direction and at least does not move in the lower direction from the previous point. When the current point moves in such a way, for instance, the user is likely to move the scope  25  clockwise in the right direction. At step S 225 , the computer  1  determines that the user intends to move the scope  25  in the right direction. Then, the computer  1  proceeds from the step S 226  to step S 337  in FIG. 21 and then examines newly updated values XA and YA again. At step S 337 , if the computer  1  remains unchanged, that is, if the updated XA is more than 0 and the updated YA is more than or equal to 0, the computer  1  sets the manipulation phase to the manipulation continuation phase at step S 339  and then terminates the procedure. If the computer  1  does not remain unchanged, the computer  1  proceeds to step S 338  and determines whether or not the updated XA is more than 0 and the updated YA is less than 0. When this condition is satisfied, it is determined that the updated current point has moved in the upper-right direction. If the condition is satisfied at step S 338 , the computer  1  proceeds to step S 340  and then sets the manipulation phase to the manipulation completion phase. If the condition is not satisfied at step S 338 , the computer  1  sets the manipulation phase to the error phase at step S 341  and then terminates the procedure.  
         [0086]    A description will now be given, with reference to FIGS. 22 through 24, of some examples processed in accordance with the above-mentioned flowcharts. As the first stage, XA and YA are less than 0 in FIG. 22, which corresponds to step S 203  in FIG. 13. As the second stage, when the movement shifts to such a condition as FIG. 23, XA is equal to 0 and YA is less than 0 in FIG. 23, which corresponds to step S 304  in accordance with the condition at step S 302  in FIG. 14. As the third stage, when the movement shifts to such a condition as FIG. 24, XA is more than 0 and YA is less than 0, which corresponds to step S 305  in accordance with the condition at step S 303  in FIG. 14.  
         [0087]    In this fashion, it is supposed that a touch is detected. After the first, the second and the third stages are completed, the coordinate determination process is completed as the manipulation completion phase. Then, the computer  1  discards the coordinate data used in the determination and proceeds to the next process, that is, the display character replacement process.  
         [0088]    Also, in the above-mentioned flowcharts, step S 207  and step S 213  in FIG. 13 are related to the replacement process of the character type. Here, the character type may be replaced according to the order: Hiragana character, Katakana character, Hiragana character and Katakana character in the step S 207  and according to the reverse order: Katakana character, Hiragana character and Katakana character and Hiragana character in the step S 213 .  
         [0089]    Furthermore, the above-mentioned user&#39;s manipulation may be customized so as to enhance user&#39;s convenience, for instance, upper directional manipulation is changed into lower directional manipulation.  
         [0090]    The present invention is not limited to the specifically disclosed embodiments, and variations and modifications may be made without departing from the scope of the present invention.  
         [0091]    The present application is based on Japanese priority application No. 2002-194504 filed Jul. 3, 2002, the entire contents of which are hereby incorporated by reference.