WO2018193831A1 - 情報処理装置、情報処理装置の制御方法、および制御プログラム - Google Patents

情報処理装置、情報処理装置の制御方法、および制御プログラム Download PDF

Info

Publication number
WO2018193831A1
WO2018193831A1 PCT/JP2018/014223 JP2018014223W WO2018193831A1 WO 2018193831 A1 WO2018193831 A1 WO 2018193831A1 JP 2018014223 W JP2018014223 W JP 2018014223W WO 2018193831 A1 WO2018193831 A1 WO 2018193831A1
Authority
WO
WIPO (PCT)
Prior art keywords
touch
unit
touch position
information processing
difference
Prior art date
Application number
PCT/JP2018/014223
Other languages
English (en)
French (fr)
Inventor
長谷川 進
Original Assignee
シャープ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by シャープ株式会社 filed Critical シャープ株式会社
Publication of WO2018193831A1 publication Critical patent/WO2018193831A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning

Definitions

  • the present invention relates to an information processing device, a control method for the information processing device, and a control program, for example, an information processing device including a touch surface.
  • an information processing apparatus for example, a smartphone or a tablet having a touch surface (for example, a touch panel or a touch pad).
  • the user performs a touch operation on the information processing apparatus by bringing an operation article (for example, a user's finger) into contact with or close to the touch surface.
  • the information processing apparatus executes processing according to the touch operation.
  • touch operations There are various types of touch operations. For example, operations such as tap, long press, slide, swipe, and pinch are included in the touch operation.
  • the slide operation is a touch operation in which the user slides (slides) the operation article in one direction on the touch surface. In order to stop the slide operation, the user stops the operation article while being attached to the touch surface.
  • the flick operation is different from the slide operation in that the operation object is quickly slid on the touch surface and then the last fingertip is quickly struck (flicked).
  • the information processing apparatus normally scrolls the screen displayed on the display unit in response to a swipe operation (slide operation).
  • the scroll speed of the screen may not be constant (screen crawl phenomenon). The fact that the scroll speed of the screen is not constant can give the user a sense of incongruity because it seems that the screen is not smoothly scrolling.
  • Patent Document 1 previously stores a scroll destination screen, that is, a screen that the display unit will display when the swipe operation is continued, in a buffer of the information processing apparatus. It is described to keep. The method described in Patent Document 1 aims to reduce the load when the information processing apparatus redraws the screen.
  • Japanese Patent Publication Japanese Patent Laid-Open No. 2014-154091 (Released on August 25, 2014)
  • the cause of the screen not scrolling smoothly is not only that the load on the information processing apparatus is excessive. Since the slide speed of the operation article, that is, the speed at which the operation article moves on the touch surface slightly changes with time, the scroll speed of the screen may also change slightly. Also in this case, the screen does not scroll smoothly. Further, even when an error is included in the detected coordinates of the touch operation on the touch surface, that is, when there is a problem in the processing accuracy of the information processing apparatus, the screen does not scroll smoothly.
  • the smooth transition from the currently displayed screen to the scrolled screen according to the scroll operation is based on the premise that the operation object moves stably on the touch surface. That is, in order to make the screen transition smoothly, the difference between touch positions detected on the touch surface during the slide operation needs to be uniform.
  • Patent Document 1 is not related to detection coordinate processing of a touch position. For this reason, it is impossible to solve the screen crawl phenomenon caused by the above-described causes.
  • the method described in Patent Document 1 is based on the assumption that the current screen and the scroll destination screen are connected, but the current screen and the scroll destination screen may not be connected.
  • An object of one embodiment of the present invention is to smoothly scroll a screen according to a slide operation.
  • an information processing apparatus is an information processing apparatus that operates in response to a touch operation on a touch surface, and an operation article performs a slide operation on the touch surface. While performing, the touch position acquisition part which acquires the touch position of the said operation thing on the said touch surface, and the difference average calculation part which calculates the average value of the difference of the several said touch position which the said touch position acquisition part acquired And a touch position correction unit that corrects the touch position acquired by the touch position acquisition unit based on the average value calculated by the difference average calculation unit.
  • a method for controlling an information processing device is a method for controlling an information processing device that operates in response to a touch operation on a touch surface, in which an operation article is touched While performing a slide operation on the surface, the touch position of the operation article on the touch surface is acquired, an average value of the difference between the acquired plurality of touch positions is calculated, and based on the calculated average value The acquired touch position is corrected.
  • the screen can be smoothly scrolled according to the slide operation.
  • FIG. 3 is a block diagram illustrating a configuration of a terminal according to Embodiment 1.
  • FIG. 2 is an external view of a terminal according to Embodiment 1.
  • FIG. It is a figure which shows the slide operation with respect to the touchscreen with which the terminal which concerns on Embodiment 1 was equipped.
  • 4 is a flowchart illustrating a flow of processing executed by the terminal according to the first embodiment in response to the slide operation illustrated in FIG. 3. It is a flowchart which shows the flow of the touch coordinate correction
  • 10 is a flowchart illustrating a flow of touch coordinate correction processing according to the second embodiment.
  • Embodiment 1 Hereinafter, embodiments of the present invention will be described in detail with reference to FIGS.
  • FIG. 1 is a block diagram illustrating a configuration of a terminal 1 (information processing apparatus) according to the first embodiment.
  • the terminal 1 includes a main control unit 10, an application 20, a storage unit 30, a display control unit 40, a display unit 50, a touch panel 60, and a touch panel control unit 70 (touch position acquisition unit). .
  • FIG. 2 is an external view of the terminal 1 receiving a touch operation from the user U.
  • the user U performs a touch operation by bringing an operation article (finger in FIG. 2) into contact with or in proximity to the touch surface of the touch panel 60.
  • the touch panel 60 detects an operation article by an electrostatic sensor or a pressure sensor.
  • the terminal 1 operates in response to a touch operation based on a signal acquired from the touch panel 60.
  • the touch panel 60 detects an operation article (for example, a user's finger) that is in contact with or close to the touch surface (see FIG. 2) of the touch panel 60 using an electrostatic sensor, a pressure sensor, or the like.
  • Touch panel 60 outputs a signal detected by the sensor to touch panel control unit 70.
  • the signal detected by the sensor includes position information of the operation article on the touch surface.
  • Touch panel control unit 70 acquires a signal detected by a sensor on touch panel 60.
  • the touch panel control unit 70 generates touch coordinate information indicating the position of the operation article on the touch surface of the touch panel 60 based on the signal acquired from the touch panel 60.
  • the touch panel control unit 70 records the generated touch coordinate information in the storage unit 30.
  • the touch panel control unit 70 may transmit touch coordinate information to the main control unit 10.
  • the main control unit 10 controls each unit of the terminal 1 in an integrated manner. Further, the main control unit 10 acquires touch coordinate information (touch position on the touch surface) from the storage unit 30 or the touch panel control unit 70. Then, the main control unit 10 generates touch event information based on the acquired touch coordinate information.
  • the touch event information includes a touch position on the touch surface and information on the type of touch operation received from the operation article.
  • the main control unit 10 notifies the application 20 of touch event information. Note that a method by which the main control unit 10 generates touch event information from touch coordinate information will be described later.
  • the main control unit 10 includes a touch event determination unit 11, a constant speed slide determination unit 12 (difference average calculation unit), a scroll movement amount calculation unit 13, and a touch coordinate correction processing unit 14 (touch position correction). Part).
  • the main control unit 10 also includes an application 20. Processing executed by each of the above-described units of the main control unit 10 will be described later.
  • the application 20 acquires touch event information from the touch coordinate correction processing unit 14 of the main control unit 10. And the application 20 performs the process according to the kind of touch operation which touch event information shows. For example, when the type of touch operation indicated by the touch event information is a slide operation, the application 20 instructs the display control unit 40 to scroll the screen displayed on the display unit 50 (see FIG. 1).
  • the application 20 may be realized as software, for example, when a CPU (not shown) of the terminal 1 executes a program stored in the storage unit 30.
  • the storage unit 30 stores touch coordinate information and a determination mode flag (0 or 1).
  • the determination mode flag will be described later.
  • the main control unit 10 determines whether the speed of the operation article is constant (“constant speed slide”) when the determination mode flag of the storage unit 30 is ON (1). Determine whether.
  • the display control unit 40 controls the screen displayed by the display unit 50 based on an instruction from the application 20.
  • the display unit 50 displays a screen under the control of the display control unit 40.
  • the display unit 50 may be, for example, a liquid crystal display (LCD) or an organic EL (Electroluminescence) display.
  • FIG. 3 is a diagram illustrating a flow of a slide operation on the touch panel 60 provided in the terminal 1.
  • FIG. 4 is a flowchart showing a flow of processing executed by the terminal 1 in response to the slide operation shown in FIG.
  • the touch panel control unit 70 detects a touch down as a touch operation on the touch panel 60 (S1).
  • the touch panel control unit 70 stores touch coordinate information indicating a touchdown position ((X0, Y0) in FIG. 3) on the touch surface of the touch panel 60 in the storage unit 30.
  • the touch panel control unit 70 may transmit touch coordinate information to the main control unit 10.
  • the touch panel control unit 70 detects a touch operation following the touchdown (S2).
  • Touch panel control unit 70 acquires a signal detected by a sensor of touch panel 60.
  • Touch coordinate information including the information is generated.
  • the touch position (Xn, Yn) includes a touch X coordinate Xn which is a position coordinate in the horizontal direction (left and right in FIG. 3) of the touch panel 60 and a vertical direction (up and down in FIG. 3). It is represented by a touch Y coordinate Yn which is a position coordinate of (direction).
  • the touch panel control unit 70 stores the generated touch coordinate information in the storage unit 30. Alternatively, the touch panel control unit 70 may transmit the generated touch coordinate information to the main control unit 10.
  • the touch event determining unit 11 of the main control unit 10 determines whether or not a move event has occurred based on the touch coordinate information stored in the storage unit 30 (S3). Specifically, the touch event determination unit 11 determines that a move event has occurred when the operation article is moving in one direction on the touch panel 60 while being in contact with or close to the touch panel 60 (in S3). YES) Then, the touch event determination unit 11 notifies the constant speed slide determination unit 12 of the main control unit 10 that a move event has occurred.
  • the constant speed slide determination unit 12 confirms whether or not the determination mode flag (see FIG. 1) in the storage unit 30 is ON (1) when notified by the touch event determination unit 11 that a move event has occurred. (S4).
  • the constant speed slide determination unit 12 sets the determination mode flag in the storage unit 30 to ON (1) (S5). Further, the constant speed slide determination unit 12 sets a variable MC indicating the number of times the move event has occurred continuously and a variable M of a difference average value dY described later to 1 (S6). The constant speed slide determination unit 12 also sets a threshold value (number of constant speed slide determination events) NT (S7). FIG. 3 shows a case where NT is 5.
  • the constant speed slide determination unit 12 calculates a difference ⁇ Yn between the touch Y coordinate Yn after the move event and the touch Y coordinate Y (n ⁇ 1) before the move event, and the calculated difference ⁇ Yn is stored in the storage unit 30.
  • Store (S11) the constant speed slide determination unit 12 calculates a difference ⁇ Yn between the touch Y coordinate Yn after the move event and the touch Y coordinate Y (n ⁇ 1) before the move event, and the calculated difference ⁇ Yn is stored in the storage unit 30.
  • the constant speed slide determination unit 12 adds 1 to the variable MC indicating the number of times the move event has occurred (S8). ). Then, the constant speed slide determination unit 12 notifies the scroll movement amount calculation unit 13 that the determination mode flag is ON (1).
  • the scroll movement amount calculation unit 13 Upon receiving the notification from the constant speed slide determination unit 12, the scroll movement amount calculation unit 13 confirms that the determination mode flag of the storage unit 30 is ON (1). Thereafter, the scroll movement amount calculation unit 13 calculates a difference ⁇ Yn (see FIG. 3) between the touch Y coordinate Yn after the move event and the touch Y coordinate Y (n ⁇ 1) before the move event. Then, the scroll movement amount calculation unit 13 determines whether or not the difference ⁇ Yn is less than a predetermined distance threshold DT (for example, 30 pixels) (S9).
  • a predetermined distance threshold DT for example, 30 pixels
  • the scroll movement amount calculation unit 13 sets the determination mode flag in the storage unit 30 to OFF (0) (S10). On the other hand, when the difference ⁇ Yn is less than the distance threshold DT (YES in S9), the scroll movement amount calculation unit 13 stores the calculated difference ⁇ Yn in the storage unit 30 (S11).
  • the touch event determination unit 11 determines that a touch event other than the move event has occurred (NO in S3), the touch event determination unit 11 sets the determination mode flag in the storage unit 30 to OFF (0). (S10). If the touch event generated in S2 is a touch-up or touch-cancel touch event (YES in S15), the touch event generation process flow ends. On the other hand, when the touch event generated in S2 is other than touch-up or touch-cancel (NO in S15), the terminal 1 performs an operation according to the type of touch event, and then the process flow returns to S2.
  • the touch coordinate correction processing unit 14 determines not to correct the touch Y coordinate Yn. In this case (NO in S12), the touch coordinate correction processing unit 14 includes touch coordinate information including information on the original touch position (Xn, Yn) and information indicating the type of the touch event that has occurred. Is transmitted to the application 20.
  • the touch coordinate correction processing unit 14 corrects the touch Y coordinate Yn (S13).
  • the touch coordinate correction processing unit 14 includes touch coordinate information including information on the corrected touch position (Xn, Yn ′) and information indicating the type of the generated touch event. Event information is transmitted to the application 20. Details of the touch coordinate correction processing performed by the touch coordinate correction processing unit 14 in S13 will be described later with reference to FIG.
  • the application 20 executes processing corresponding to the touch operation indicated by the touch event information received from the touch coordinate correction processing unit 14. For example, when the touch event type indicated by the touch event information is a move event, the application 20 instructs the display control unit 40 to scroll the screen displayed on the display unit 50. The display control unit 40 scrolls the screen displayed on the display unit 50 according to an instruction from the application 20 (S14).
  • next touch event is touch-up or touch-cancel (YES in S15)
  • touch event generation process flow ends.
  • the next touch event is other than touch-up or touch cancel (NO in S15)
  • the flow returns to S2.
  • FIG. 5 is a flowchart showing the flow of the touch coordinate correction process.
  • the touch coordinate correction processing unit 14 calculates the difference average value dY (M) based on the difference ⁇ Yn calculated by the scroll movement amount calculation unit 13. Is calculated (S132, see FIG. 3).
  • the difference average value dY (M) is calculated according to the following calculation formula (1).
  • dY (M) ( ⁇ Y (n ⁇ CNT + 1) +... + ⁇ Yn) / CNT (1)
  • CNT Y coordinate difference average update event number
  • the number of CNTs may be the same as or different from the number of NTs described above.
  • FIG. 3 shows a case where CNT is 5.
  • dY (1) ( ⁇ Y1 + ⁇ Y2 +... + ⁇ Y (NT)) / NT.
  • NT number of constant speed slide determination events
  • M increases by one.
  • the touch coordinate correction processing unit 14 calculates the corrected touch Y coordinate Yn ′ based on the calculated difference average value dY (M) (S133).
  • the corrected touch Y coordinate Yn ′ is calculated according to the following calculation formula (2).
  • Yn ′ Y (n ⁇ 1) ′ + dY (M) (2)
  • the difference between the corrected touch Y coordinates Yn ′ and Y (n ⁇ 1) ′ is always constant.
  • the touch coordinate correction processing unit 14 determines whether or not the variable MC is the predetermined number CNT described above (S134). When the variable MC is the predetermined number CNT (YES in S134), the touch coordinate correction processing unit 14 sets the difference average calculation flag YMUC to ON (1) (S135) and resets the variable MC to zero (S137). . Further, the touch coordinate correction processing unit 14 adds 1 to the variable M. On the other hand, when the variable MC is not the predetermined number CNT (NO in S134), the touch coordinate correction processing unit 14 sets the difference average calculation flag YMUC to OFF (0) (S136). Therefore, each time the touch coordinate correction process is repeated CNT times, a new difference average value dY (M) is calculated in S132 described above. This is the end of the touch coordinate correction process.
  • the difference average value dY (M) Is calculated (see the above equation (1)). Then, using the calculated difference average value dY (M), the touch Y coordinates Y (n ⁇ 1) and Yn before and after the move event are corrected.
  • the corrected touch Y coordinate Yn ′ is a value obtained by adding the difference average value dY (M) to the corrected touch Y coordinate Y (n ⁇ 1) ′ (see the above formula (2)). That is, the difference between the corrected touch Y coordinate Yn ′ and the corrected touch Y coordinate Y (n ⁇ 1) ′ is constant. Therefore, the screen displayed on the display unit 50 is smoothly scrolled at a constant speed based on the move event.
  • a new difference average value dY (M) is calculated every time a move event occurs CNT times. Then, the touch Y coordinate Yn is corrected based on the new difference average value dY (M). Therefore, the difference between the speed at which the user moves the operation article and the change amount of the touch Y coordinate after correction, that is, the difference between Yn ′ and Y (n ⁇ 1) ′ does not become too large. Therefore, the uncomfortable feeling given to the user is alleviated.
  • This embodiment is different from the first embodiment in the procedure of touch coordinate correction processing.
  • the difference between the touch coordinates before and after the move event is made constant by correction.
  • the difference between the coordinates of the touch before and after the move event is gradually changed for each move event due to the correction, and approaches the average difference value.
  • FIG. 6 is a diagram illustrating a flow of a slide operation on the touch panel 60 provided in the terminal 1.
  • FIG. 7 is a flowchart showing the flow of the touch coordinate correction process.
  • the touch coordinate correction processing unit 14 sets the above-described difference average calculation flag YMUC in the first touch coordinate correction process.
  • YMUC 1.
  • the touch coordinate correction processing unit 14 determines whether or not the difference average calculation flag YMUC is ON (1) (S231). Only when the difference average calculation flag YMUC is ON (1) (YES in S231), the touch coordinate correction processing unit 14 creates a new difference average value dY () based on the difference ⁇ Yn calculated by the scroll movement amount calculation unit 13. M) is calculated (S232). Also in this embodiment, the difference average value dY (M) is calculated according to the following calculation formula (1).
  • dY (M) ( ⁇ Y (n ⁇ CNT + 1) +... + ⁇ Yn) / CNT (1)
  • the touch coordinate correction processing unit 14 calculates a Y coordinate movement unit dU (M) based on the difference average values dY (M) and dY (M ⁇ 1) (S233).
  • the Y coordinate movement unit dU (M) is calculated according to the following calculation formula (3).
  • dU (M) (dY (M) ⁇ dY (M ⁇ 1)) / CNT (3)
  • the touch coordinate correction processing unit 14 calculates the corrected touch Y coordinate Yn ′ based on the calculated difference average value dY (M) and the Y coordinate movement unit dU (M ⁇ 1) (S234).
  • the corrected touch Y coordinate Yn ′ is calculated according to the following calculation formula (4).
  • Yn ′ Y (n ⁇ 1) ′ + dY (M) + MC ⁇ dU (M) (4)
  • the difference between the corrected touch Y coordinate Yn ′ and Y (n ⁇ 1) ′ is the Y coordinate movement unit every time a move event occurs (YES in S3 of FIG. 4). Increases by dU (M).
  • the touch Y coordinates Y11 to Y15 are based on the difference average value dY2 calculated according to the above equation (1) and the Y coordinate movement unit dU2 calculated according to the above equation (3). 11 to Y′15 are corrected.
  • the touch coordinate correction processing unit 14 determines whether or not the variable MC is a multiple of the predetermined number CNT described above (S235).
  • the touch coordinate correction processing unit 14 sets the difference average calculation flag YMUC to ON (1) (S236) and resets the variable MC to zero (S238).
  • the touch coordinate correction processing unit 14 adds 1 to the variable M.
  • the touch coordinate correction processing unit 14 sets the difference average calculation flag YMUC to OFF (0) (S237).
  • a new difference average value dY (M) is calculated in S232, and a new Y coordinate movement unit dU (M-1) is calculated in S233. This is the end of the touch coordinate correction process.
  • the corrected touch Y-coordinate difference is the Y coordinate movement unit dU (M ⁇ 1) every time a move event occurs. ) Gradually (see formula (4) above). Then, the corrected difference in touch Y coordinate gradually approaches the new difference average value dY (M). That is, according to the configuration of the present embodiment, after the new difference average value dY (M) is calculated, the difference ⁇ Yn of the touch Y coordinate is changed from the old difference average value dY (M ⁇ 1) by one correction.
  • the old difference average value dY (M ⁇ 1) is changed to the new difference average value dY (M) by CNT corrections (five times in FIG. 6). Therefore, the uncomfortable feeling given to the user when the touch Y coordinate is corrected is alleviated.
  • the control blocks of the terminal 1 (in particular, the touch event determination unit 11, the constant speed slide determination unit 12, the scroll movement amount calculation unit 13, the touch coordinate correction processing unit 14, the application 20, the display control unit 40, and the touch panel control unit 70)
  • it may be realized by a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like, or may be realized by software using a CPU (Central Processing Unit).
  • CPU Central Processing Unit
  • the terminal 1 includes a CPU that executes instructions of a program that is software that realizes each function, a ROM (Read Only Memory) or a storage in which the program and various data are recorded so as to be readable by a computer (or CPU).
  • a device (these are referred to as “recording media”), a RAM (Random Access Memory) for expanding the program, and the like are provided.
  • the objective of this invention is achieved when a computer (or CPU) reads the said program from the said recording medium and runs it.
  • a “non-temporary tangible medium” such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.
  • the program may be supplied to the computer via an arbitrary transmission medium (such as a communication network or a broadcast wave) that can transmit the program.
  • an arbitrary transmission medium such as a communication network or a broadcast wave
  • one embodiment of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.
  • An information processing apparatus (terminal 1) is an information processing apparatus that operates in response to a touch operation on a touch surface, and while an operation article performs a slide operation on the touch surface,
  • a touch position acquisition unit touchscreen panel control unit 70
  • a difference average calculation that calculates an average value of a plurality of touch positions acquired by the touch position acquisition unit.
  • Touch position correction unit touchscreen coordinate correction processing unit
  • Touch position correction unit that corrects the touch position acquired by the touch position acquisition unit based on the average value calculated by the unit (constant speed slide determination unit 12) and the difference average calculation unit 14).
  • the difference in the touch position of the operation article is corrected based on the average difference value of the plurality of touch positions. Then, the screen displayed on the display unit is scrolled at a speed and direction corresponding to the corrected touch position difference. Therefore, the screen can be smoothly scrolled even when the speed at which the operation article moves on the touch surface varies during the slide operation.
  • the information processing apparatus is the information processing apparatus according to aspect 1, in which the difference average calculation unit is newly acquired by the touch position acquisition unit each time the touch position acquisition unit acquires the touch position a predetermined number of times.
  • the average value may be calculated using the predetermined touch positions.
  • the difference average value of the touch position is calculated every time the touch position is acquired a predetermined number of times.
  • the difference average value changes according to the change.
  • a touch position is correct
  • the touch position correction unit may cause the difference between the touch positions acquired by the touch position acquisition unit to match the average value. You may correct to. According to said structure, since the difference between the touch positions after correction
  • the information processing apparatus is the information processing apparatus according to any one of the aspects 1 to 3, wherein the touch position correction unit gradually increases the difference of the touch position acquired by the touch position acquisition unit to the average value. You may correct
  • the difference between the touch positions of the operation article is corrected so as to gradually approach the average difference value of the plurality of touch positions.
  • the scroll speed of the screen gradually changes in accordance with the change in the difference between the corrected touch positions. Therefore, compared with the configuration in which the difference between the touch positions is instantaneously corrected to the average difference value, the change in the scroll speed of the screen is gentle, so the user feels uncomfortable that the scroll speed of the screen has changed. Hard to get.
  • An information processing apparatus control method is an information processing apparatus control method that operates in response to a touch operation on a touch surface, and an operation article performs a slide operation on the touch surface. Meanwhile, the touch position of the operation article on the touch surface is acquired, the average value of the differences between the plurality of acquired touch positions is calculated, and the acquired touch position is corrected based on the calculated average value. . According to said structure, there can exist an effect similar to the information processing apparatus which concerns on the said aspect 1. FIG.
  • the information processing apparatus may be realized by a computer.
  • the information processing apparatus is operated on each computer by causing the computer to operate as each unit (software element) included in the information processing apparatus.
  • the control program for the information processing apparatus to be realized in this way and a computer-readable recording medium on which the control program is recorded also fall within the scope of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

スライド操作に応じて、画面を滑らかにスクロールさせる。タッチパネル制御部(70)は、操作物がタッチパネル(60)のタッチ面へのスライド操作を行っている間、タッチ面上における操作物のタッチ位置を取得し、タッチ座標補正処理部(14)は、タッチパネル制御部(70)が取得した複数のタッチ位置の差分平均値に基づいて、タッチパネル制御部(70)が取得したタッチ位置を補正する。

Description

情報処理装置、情報処理装置の制御方法、および制御プログラム
 本発明は、情報処理装置、情報処理装置の制御方法、および制御プログラムに関し、例えば、タッチ面を備えた情報処理装置に関する。
 従来、タッチ面(例えばタッチパネル、タッチパッド)を備えた情報処理装置(例えばスマートフォン、タブレット)が存在する。ユーザは、操作物(例えばユーザの指)を、タッチ面に接触または近接させることによって、情報処理装置をタッチ操作する。情報処理装置は、タッチ操作に応じた処理を実行する。タッチ操作には様々な種類がある。例えば、タップ、長押し、スライド、スワイプ、およびピンチなどの操作が、タッチ操作に含まれる。スライド操作とは、ユーザがタッチ面上で操作物を一方向にすべらす(スライド)させるタッチ操作である。ユーザは、スライド操作を停止するために、操作物をタッチ面に付けたまま停止させる。一方、フリック操作は、タッチ面上で操作物を素早くスライドさせた後、最後指先を素早く払う(ピッとはじく)点で、スライド操作とは異なる。
 情報処理装置は、通常、スワイプ操作(スライド操作)に応じて、表示部に表示される画面をスクロールさせる。ところが、画面のスクロール速度が一定しない場合がある(画面のカクツキ現象)。画面のスクロール速度が一定しないことは、ユーザには、画面が滑らかにスクロールしていないように見えるので、ユーザに違和感を与え得る。
 上記の問題を解決するために、特許文献1には、スクロール先の画面、すなわち、スワイプ操作が継続された場合に表示部が表示するであろう画面を、情報処理装置のバッファに予め格納しておくことが記載されている。特許文献1に記載の方法は、情報処理装置が画面を再描画する際の負荷を低減することを目的としている。
日本国公開特許公報「特開2014-154091号」(2014年8月25日公開)
 しかしながら、画面が滑らかにスクロールしない原因は、情報処理装置への負荷が過大であることだけではない。操作物のスライド速度、すなわちタッチ面上で操作物が移動する速度が、時間的に微妙に変動しているために、画面のスクロール速度も微妙に変動する場合がある。この場合も、画面が滑らかにスクロールしない。また、タッチ面におけるタッチ操作の検出座標に誤差が含まれている場合、すなわち、情報処理装置の処理精度に問題がある場合も、画面が滑らかにスクロールしない。
 スクロール操作に応じて、現在表示されている画面からスクロール先の画面へとスムーズに遷移することは、タッチ面上を操作物が安定して移動することを前提にしている。すなわち、画面をスムーズに遷移させるためには、スライド操作中にタッチ面上で検出されるタッチ位置の間の差分が均一である必要がある。
 特許文献1に記載の手法はタッチ位置の検出座標処理に関するものではない。そのため、上述した原因に起因する画面のカクツキ現象を解決することはできない。また、特許文献1に記載の手法は、現在の画面とスクロール先の画面とが繋がっていることを前提としているが、現在の画面とスクロール先の画面とが繋がっていない場合がある。
 本発明の一態様は、スライド操作に応じて、画面を滑らかにスクロールさせることを目的とする。
 上記の課題を解決するために、本発明の一態様に係る情報処理装置は、タッチ面へのタッチ操作に応じて動作する情報処理装置であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部と、上記タッチ位置取得部が取得した複数の上記タッチ位置の差分の平均値を算出する差分平均算出部と、上記差分平均算出部が算出した上記平均値に基づいて、上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部と、を備えている。
 上記の課題を解決するために、本発明の一態様に係る情報処理装置の制御方法は、タッチ面へのタッチ操作に応じて動作する情報処理装置の制御方法であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、取得した複数の上記タッチ位置の差分の平均値を算出し、算出した上記平均値に基づいて、取得した上記タッチ位置を補正する。
 本発明の一態様によれば、スライド操作に応じて、画面を滑らかにスクロールさせることができる。
実施形態1に係る端末の構成を示すブロック図である。 実施形態1に係る端末の外観図である。 実施形態1に係る端末が備えたタッチパネルに対するスライド操作を示す図である。 図3に示すスライド操作に応じて、実施形態1に係る端末が実行する処理の流れを示すフローチャートである。 図4に示すフロー中の処理の一つであるタッチ座標補正処理の流れを示すフローチャートである。 実施形態2に係る端末が備えたタッチパネルに対するスライド操作を示す図である。 実施形態2に係るタッチ座標補正処理の流れを示すフローチャートである。
 〔実施形態1〕
 以下、本発明の実施の形態について、図1~図5を用いて詳細に説明する。
 (端末1の構成)
 図1は、実施形態1に係る端末1(情報処理装置)の構成を示すブロック図である。図1に示すように、端末1は、主制御部10、アプリケーション20、記憶部30、表示制御部40、表示部50、タッチパネル60、およびタッチパネル制御部70(タッチ位置取得部)を備えている。
 図2は、ユーザUからタッチ操作を受けている端末1の外観図である。図2に示すように、ユーザUは、操作物(図2では指)を、タッチパネル60のタッチ面に接触または近接させることによって、タッチ操作を行う。タッチパネル60は、静電センサまたは圧力センサ等によって操作物を検知する。端末1は、タッチパネル60から取得する信号に基づいて、タッチ操作に応じて動作する。
 タッチパネル60は、静電センサまたは圧力センサ等によって、タッチパネル60のタッチ面(図2参照)に接触または近接する操作物(例えばユーザの指)を検知する。タッチパネル60は、センサが検知した信号をタッチパネル制御部70に出力する。センサが検知した信号には、タッチ面上における操作物の位置情報が含まれる。
 タッチパネル制御部70は、タッチパネル60のセンサが検知した信号を取得する。タッチパネル制御部70は、タッチパネル60から取得した信号に基づいて、タッチパネル60のタッチ面上における操作物の位置を示すタッチ座標情報を生成する。タッチパネル制御部70は、生成したタッチ座標情報を記憶部30に記録する。あるいは、タッチパネル制御部70は、タッチ座標情報を主制御部10に送信してもよい。
 主制御部10は、端末1の各部を統合的に制御する。また、主制御部10は、記憶部30またはタッチパネル制御部70から、タッチ座標情報(タッチ面上におけるタッチ位置)を取得する。そして、主制御部10は、取得したタッチ座標情報に基づいて、タッチイベント情報を生成する。タッチイベント情報は、タッチ面上におけるタッチ位置と、操作物から受け付けたタッチ操作の種別の情報とを含む。主制御部10は、タッチイベント情報を、アプリケーション20に通知する。なお、主制御部10がタッチ座標情報からタッチイベント情報を生成する方法については後述する。
 図1に示すように、主制御部10は、タッチイベント判定部11、定速スライド判定部12(差分平均算出部)、スクロール移動量算出部13、およびタッチ座標補正処理部14(タッチ位置補正部)を含む。また、主制御部10は、アプリケーション20も含む。主制御部10の上記の各部が実行する処理については後述する。
 アプリケーション20は、主制御部10のタッチ座標補正処理部14からタッチイベント情報を取得する。そして、アプリケーション20は、タッチイベント情報が示すタッチ操作の種別に応じた処理を実行する。例えば、タッチイベント情報が示すタッチ操作の種別がスライド操作であった場合、アプリケーション20は、表示部50に表示された画面をスクロールするように、表示制御部40に指示する(図1参照)。アプリケーション20は、例えば、記憶部30に記憶されたプログラムを端末1のCPU(図示せず)が実行することによって、ソフトウェアとして実現されてよい。
 記憶部30は、タッチ座標情報および判定モードフラグ(0または1)を記憶している。判定モードフラグについては後述する。後述するように、主制御部10は、タッチイベント生成処理において、記憶部30の判定モードフラグがON(1)である場合、操作物の速度が一定(「定速スライド」)であるか否かを判定する。
 表示制御部40は、アプリケーション20からの指示に基づいて、表示部50が表示する画面を制御する。表示部50は、表示制御部40によって制御されることによって、画面を表示する。表示部50は、例えば、液晶表示ディスプレイ(LCD;Liquid CrystalDisplay)または有機EL(Electro luminescence)ディスプレイであってよい。
 (タッチイベント生成処理)
 図3を参照しつつ、図4を用いて、端末1が実行するタッチイベント生成処理について説明する。図3は、端末1が備えたタッチパネル60に対するスライド操作の流れを示す図である。図4は、図3に示すスライド操作に応じて、端末1が実行する処理の流れを示すフローチャートである。
 図4に示すように、タッチイベント生成処理では、まず、タッチパネル制御部70が、タッチパネル60に対するタッチ操作として、タッチダウンを検知する(S1)。タッチパネル制御部70は、タッチパネル60のタッチ面上におけるタッチダウンの位置(図3では(X0,Y0))を示すタッチ座標情報を、記憶部30に記憶する。あるいは、タッチパネル制御部70は、タッチ座標情報を、主制御部10に送信してもよい。
 次に、タッチパネル制御部70が、タッチダウンに続くタッチ操作を検知する(S2)。タッチパネル制御部70は、タッチパネル60のセンサが検知する信号を取得する。そして、タッチパネル制御部70は、タッチパネル60から取得する信号に基づいて、タッチパネル60のタッチ面上におけるタッチの位置(図3では(Xn,Yn)(n=1,2,3・・・))の情報を含むタッチ座標情報を生成する。
 図3に示すように、タッチの位置(Xn,Yn)は、タッチパネル60の横方向(図3では左右方向)の位置座標であるタッチX座標Xnと、タッチパネル60の縦方向(図3では上下方向)の位置座標であるタッチY座標Ynとで表される。
 タッチパネル制御部70は、生成したタッチ座標情報を記憶部30に記憶する。あるいは、タッチパネル制御部70は、生成したタッチ座標情報を主制御部10に送信してもよい。
 図4に示すように、主制御部10のタッチイベント判定部11は、記憶部30が記憶しているタッチ座標情報に基づいて、ムーブイベントが発生したか否かを判定する(S3)。具体的には、タッチイベント判定部11は、操作物が、タッチパネル60に接触または近接したままで、タッチパネル60上を一方向に移動している場合、ムーブイベントが発生したと判定する(S3でYES)。そして、タッチイベント判定部11は、ムーブイベントが発生したことを、主制御部10の定速スライド判定部12に通知する。さらに、タッチイベント判定部11は、ムーブイベントの前後におけるタッチの位置を示す情報、すなわち(X(n-1),Y(n-1))および(Xn,Yn)(n=1,2,・・・)を、定速スライド判定部12に送信する。
 定速スライド判定部12は、ムーブイベントが発生したことをタッチイベント判定部11から通知された場合、記憶部30の判定モードフラグ(図1参照)がON(1)であるか否かを確認する(S4)。
 記憶部30の判定モードフラグがOFF(0)である場合(S4でNO)、定速スライド判定部12は、記憶部30の判定モードフラグをON(1)にする(S5)。また、定速スライド判定部12は、ムーブイベントが連続して発生した回数を示す変数MC、および、後述する差分平均値dYの変数Mを、それぞれ1に設定する(S6)。また、定速スライド判定部12は、閾値(定速度スライド判定用イベント数)NTも設定する(S7)。なお、図3は、NTが5である場合を示す。その後、定速スライド判定部12は、ムーブイベント後のタッチY座標Ynと、ムーブイベント前のタッチY座標Y(n-1)との差分ΔYnを計算し、計算した差分ΔYnを記憶部30に記憶する(S11)。
 一方、記憶部30の判定モードフラグがON(1)である場合(S4でYES)、定速スライド判定部12は、ムーブイベントが連続して発生した回数を示す変数MCに1加算する(S8)。そして、定速スライド判定部12は、判定モードフラグがON(1)であることを、スクロール移動量算出部13に通知する。
 定速スライド判定部12からの通知を受けたスクロール移動量算出部13は、記憶部30の判定モードフラグがON(1)であることを確認する。その後、スクロール移動量算出部13は、ムーブイベント後のタッチY座標Ynと、ムーブイベント前のタッチY座標Y(n-1)との差分ΔYn(図3参照)を計算する。そして、スクロール移動量算出部13は、差分ΔYnが所定の距離閾値DT(例えば30ピクセル)未満であるか否かを判定する(S9)。
 差分ΔYnが距離閾値DT以上である場合(S9でNO)、スクロール移動量算出部13は、記憶部30の判定モードフラグをOFF(0)にする(S10)。一方、差分ΔYnが距離閾値DT未満である場合(S9でYES)、スクロール移動量算出部13は、計算した差分ΔYnを記憶部30に記憶する(S11)。
 S3に戻り、タッチイベント判定部11は、ムーブイベント以外のタッチイベントが発生したと判定した場合(S3でNO)、タッチイベント判定部11は、記憶部30の判定モードフラグをOFF(0)にする(S10)。また、S2において発生したタッチイベントがタッチアップまたはタッチキャンセルのタッチイベントであった場合(S15でYES)、タッチイベント生成処理のフローは終了する。一方、S2において発生したタッチイベントがタッチアップまたはタッチキャンセル以外であった場合(S15でNO)、端末1がタッチイベントの種別に応じた動作を行った後、処理フローはS2に戻る。
 スクロール移動量算出部13が差分ΔYnを記憶部30に記憶した(S11)後、タッチ座標補正処理部14は、ムーブイベントが連続して発生した回数を示す変数MCが、予め定められた閾値NT(図3では、NT=5)以上であるか否かを判定する(S12)。
 変数MCがNT未満である場合(S12でNO)、タッチ座標補正処理部14は、タッチY座標Ynを補正しないことを決定する。この場合(S12でNO)、タッチ座標補正処理部14は、元のタッチの位置(Xn,Yn)の情報を含むタッチ座標情報と、発生したタッチイベントの種別を示す情報とを含むタッチイベント情報を、アプリケーション20に送信する。
 一方、変数MCがNT以上である場合(S12でYES)、タッチ座標補正処理部14は、タッチY座標Ynを補正する(S13)。この場合(S12でYES)、タッチ座標補正処理部14は、補正後のタッチの位置(Xn,Yn´)の情報を含むタッチ座標情報と、発生したタッチイベントの種別を示す情報とを含むタッチイベント情報を、アプリケーション20に送信する。なお、S13においてタッチ座標補正処理部14が行うタッチ座標補正処理の詳細については後で、図5を参照して説明する。
 アプリケーション20は、タッチ座標補正処理部14から受信したタッチイベント情報が示すタッチ操作に応じた処理を実行する。例えば、タッチイベント情報が示すタッチイベントの種別はムーブイベントである場合、アプリケーション20は、表示部50に表示された画面をスクロールさせるように、表示制御部40に指示する。表示制御部40は、アプリケーション20からの指示により、表示部50に表示された画面をスクロールする(S14)。
 次のタッチイベントがタッチアップまたはタッチキャンセルであった場合(S15でYES)、タッチイベント生成処理のフローは終了する。一方、次のタッチイベントがタッチアップまたはタッチキャンセル以外であった場合(S15でNO)、フローはS2に戻る。
 (タッチ座標補正処理)
 図3および図5を用いて、前述したタッチイベント生成処理(図4参照)のS13において、タッチ座標補正処理部14が行うタッチ座標補正処理の詳細を説明する。図5は、タッチ座標補正処理の流れを示すフローチャートである。
 図5に示すように、タッチ座標補正処理では、タッチ座標補正処理部14は、1度目のタッチ座標補正処理において、差分平均算出フラグYMUCを設定する。1度目のタッチ座標補正処理では、YMUC=1である。2度目以降のタッチ座標補正処理において、タッチ座標補正処理部14は、差分平均算出フラグYMUCがON(1)であるか否かを判定する(S131)。
 差分平均算出フラグYMUCがON(1)である場合(S131でYES)のみ、タッチ座標補正処理部14は、スクロール移動量算出部13が算出した差分ΔYnに基づいて、差分平均値dY(M)を算出する(S132、図3参照)。差分平均値dY(M)は、以下の計算式(1)にしたがって算出される。
dY(M)=(ΔY(n-CNT+1)+・・・+ΔYn)/CNT・・(1)
 ただし、式(1)において、CNT(Y座標差分平均値更新用イベント数)は、予め定められた所定数である。CNTは、前述したNTと同じ数であってもよいし、異なる数であってもよい。なお、図3は、CNTが5である場合を示す。特に、M=1の場合、dY(1)=(△Y1+△Y2+・・・+△Y(NT))/NTである。ここで、NT(定速度スライド判定用イベント数)は、予め定められた閾値である。新たな差分平均値dY(M)が算出されるごとに、Mは1ずつ増大する。
 次に、タッチ座標補正処理部14は、算出した差分平均値dY(M)に基づいて、補正後のタッチY座標Yn´を算出する(S133)。補正後のタッチY座標Yn´は、以下の計算式(2)にしたがって算出される。
Yn´=Y(n-1)´+dY(M)・・(2)
 上記式(2)によれば、補正後のタッチY座標Yn´とY(n-1)´との差分は、常に一定である。
 その後、タッチ座標補正処理部14は、変数MCが、前述した所定数CNTであるかどうかを判定する(S134)。変数MCが所定数CNTである場合(S134でYES)、タッチ座標補正処理部14は、差分平均算出フラグYMUCをON(1)にする(S135)とともに、変数MCをゼロにリセットする(S137)。また、タッチ座標補正処理部14は、変数Mに1加算する。一方、変数MCが所定数CNTでない場合(S134でNO)、タッチ座標補正処理部14は、差分平均算出フラグYMUCをOFF(0)にする(S136)。したがって、タッチ座標補正処理がCNT回繰り返し行われるごとに、前述したS132において、新たな差分平均値dY(M)が算出されることになる。以上でタッチ座標補正処理は終了する。
 本実施形態の構成によれば、スライド操作が行われた場合、ムーブイベントの前後におけるタッチY座標の間の差分ΔYn=Yn―Y(n-1)に基づいて、差分平均値dY(M)が算出される(上記式(1)参照)。そして、算出された差分平均値dY(M)を用いて、ムーブイベント前後のタッチY座標Y(n-1),Ynが補正される。補正後のタッチY座標Yn´は、補正後のタッチY座標Y(n-1)´に差分平均値dY(M)を加算した値になる(上記式(2)参照)。すなわち、補正後のタッチY座標Yn´と、補正後のタッチY座標Y(n-1)´との差分は一定になる。したがって、ムーブイベントに基づいて、表示部50に表示される画面が、一定の速度で滑らかにスクロールする。
 さらに、本実施形態の構成によれば、ムーブイベントがCNT回発生するごとに、新たな差分平均値dY(M)が算出される。そして、新たな差分平均値dY(M)に基づいて、タッチY座標Ynが補正される。そのため、ユーザが操作物を移動させる速度と、補正後のタッチY座標の変化量、すなわちYn´とY(n-1)´との差分とのかい離が大きくなり過ぎない。したがって、ユーザに与える違和感が緩和される。
 〔実施形態2〕
 本発明の他の実施形態について、図6および図7に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
 本実施形態は、タッチ座標補正処理の手順において、前記実施形態1とは異なる。また、前記実施形態1では、ムーブイベントの前後におけるタッチ座標の間の差分は、補正によって一定にされた。一方、本実施形態では、ムーブイベントの前後におけるタッチの座標の間の差分は、補正によって、ムーブイベントごとに徐々に変化して、差分平均値に近づいてゆく。
 (タッチ座標補正処理)
 図6および図7を用いて、本実施形態に係るタッチ座標補正処理の詳細を説明する。図6は、端末1が備えたタッチパネル60に対するスライド操作の流れを示す図である。図7は、タッチ座標補正処理の流れを示すフローチャートである。
 図7に示すように、タッチ座標補正処理では、タッチ座標補正処理部14は、1度目のタッチ座標補正処理において、前述した差分平均算出フラグYMUCを設定する。1度目のタッチ座標補正処理では、YMUC=1である。2度目以降のタッチ座標補正処理において、タッチ座標補正処理部14は、差分平均算出フラグYMUCがON(1)であるか否かを判定する(S231)。差分平均算出フラグYMUCがON(1)である場合(S231でYES)のみ、タッチ座標補正処理部14は、スクロール移動量算出部13が算出した差分ΔYnに基づいて、新たな差分平均値dY(M)を算出する(S232)。本実施形態でも、差分平均値dY(M)は、以下の計算式(1)にしたがって算出される。dY(M)=(ΔY(n-CNT+1)+・・・+ΔYn)/CNT・・(1)
 特に、M=1の場合、dY(1)=(△Y1+△Y2+・・・+△Y(NT))/NTである。式(1)中の所定数CNTおよび変数Mについては、前記実施形態1で説明したため、本実施形態では説明を省略する。なお、図6では、CNT=5である。
 次に、タッチ座標補正処理部14は、差分平均値dY(M)およびdY(M-1)に基づいて、Y座標移動単位dU(M)を算出する(S233)。Y座標移動単位dU(M)は、以下の計算式(3)にしたがって算出される。
dU(M)=(dY(M)-dY(M-1))/CNT・・(3)
 特に、M=1の場合、dU(1)=0である。
 次に、タッチ座標補正処理部14は、算出した差分平均値dY(M)およびY座標移動単位dU(M-1)に基づいて、補正後のタッチY座標Yn´を算出する(S234)。補正後のタッチY座標Yn´は、以下の計算式(4)にしたがって算出される。
Yn´=Y(n-1)´+dY(M)+MC×dU(M)・・(4)
 上記式(4)によれば、補正後のタッチY座標Yn´とY(n-1)´との差分は、ムーブイベントが発生する(図4のS3でYES)ごとに、Y座標移動単位dU(M)ずつ増加する。図6では、タッチY座標Y11~Y15は、上記式(1)にしたがって算出された差分平均値dY2、および、上記式(3)にしたがって算出されたY座標移動単位dU2に基づいて、Y´11~Y´15に補正されている。なお、図6では、タッチY座標Y1~Y5は、上記式(1)にしたがって算出された差分平均値dY1のみに基づいて、補正されているように見える。その理由は、前述したように、dU(M=1)=0と定義しているからである。
 その後、タッチ座標補正処理部14は、変数MCが、前述した所定数CNTの倍数であるかどうかを判定する(S235)。変数MCが所定数CNTである場合(S235でYES)、タッチ座標補正処理部14は、差分平均算出フラグYMUCをON(1)にする(S236)とともに、変数MCをゼロにリセットする(S238)。また、タッチ座標補正処理部14は、変数Mに1加算する。一方、変数MCが所定数CNTでない場合(S235でNO)、タッチ座標補正処理部14は、差分平均算出フラグYMUCをOFF(0)にする(S237)。
 以後、ムーブイベントがCNT回発生するごとに、S232において、新たな差分平均値dY(M)が算出され、また、S233において、新たなY座標移動単位dU(M-1)が算出される。以上でタッチ座標補正処理は終了する。
 本実施形態の構成によれば、新しい差分平均値dY(M)が算出された後、補正後のタッチY座標の差分は、ムーブイベントが発生するごとに、Y座標移動単位dU(M-1)ずつ徐々に変化する(上記式(4)参照)。そして、補正後のタッチY座標の差分は、新しい差分平均値dY(M)に徐々に近づいてゆく。すなわち、本実施形態の構成によれば、新しい差分平均値dY(M)が算出された後、タッチY座標の差分ΔYnが、1度の補正で、古い差分平均値dY(M-1)から新しい差分平均値dY(M)になるのではなく、CNT回(図6では5回)の補正で、古い差分平均値dY(M-1)から新しい差分平均値dY(M)に変化する。そのため、タッチY座標が補正された場合にユーザに与える違和感が緩和される。
 〔実施形態3〕
 (ソフトウェアによる実現例)
 端末1の制御ブロック(特に、タッチイベント判定部11、定速スライド判定部12、スクロール移動量算出部13、タッチ座標補正処理部14、アプリケーション20、表示制御部40、およびタッチパネル制御部70)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
 後者の場合、端末1は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
 〔まとめ〕
 本発明の態様1に係る情報処理装置(端末1)は、タッチ面へのタッチ操作に応じて動作する情報処理装置であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部(タッチパネル制御部70)と、上記タッチ位置取得部が取得した複数の上記タッチ位置の差分の平均値を算出する差分平均算出部(定速スライド判定部12)と、上記差分平均算出部が算出した上記平均値に基づいて、上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部(タッチ座標補正処理部14)と、を備えている。
 上記の構成によれば、操作物によるスライド操作中、複数のタッチ位置の差分平均値に基づいて、操作物のタッチ位置の差分が補正される。そして、補正後のタッチ位置の差分に応じた速度および方向で、表示部に表示された画面がスクロールされる。そのため、スライド操作中、タッチ面上において操作物が移動する速度が変動した場合であっても、画面を滑らかにスクロールさせることができる。
 本発明の態様2に係る情報処理装置は、上記態様1において、上記タッチ位置取得部が上記タッチ位置を所定回取得するごとに、上記差分平均算出部は、上記タッチ位置取得部が新たに取得した所定回分の上記タッチ位置を用いて、上記平均値を算出してもよい。
 上記の構成によれば、タッチ位置を所定回取得するごとに、タッチ位置の差分平均値を算出する。スライド操作中、タッチ面上において操作物が移動する速度が変動した場合、その変動に応じて、差分平均値が変化する。そして、変化後の差分平均値に基づいて、タッチ位置が補正される。したがって、操作物が移動する速度の変化に応じて、補正後のタッチ位置の間の差分を変化させることができる。
 本発明の態様3に係る情報処理装置は、上記態様1または2において、上記タッチ位置補正部は、上記タッチ位置取得部が取得した上記タッチ位置の間の差分を、上記平均値と一致させるように補正してもよい。上記の構成によれば、補正後のタッチ位置の間の差分が一定になるので、画面を滑らかにスクロールさせることができる。
 本発明の態様4に係る情報処理装置は、上記態様1から3のいずれかにおいて、上記タッチ位置補正部は、上記タッチ位置取得部が取得した上記タッチ位置の差分を、上記平均値に徐々に近づけてゆくように補正してもよい。
 上記の構成によれば、操作物のタッチ位置の間の差分が、複数のタッチ位置の差分平均値に徐々に近づくように補正される。また、補正後のタッチ位置の間の差分の変化に応じて、画面のスクロール速度も徐々に変化する。そのため、タッチ位置の間の差分が瞬時に差分平均値に補正される構成と比較して、画面のスクロール速度の変化が緩やかであるので、ユーザが、画面のスクロール速度が変化したことに違和感を得にくい。
 本発明の態様5に係る情報処理装置の制御方法は、タッチ面へのタッチ操作に応じて動作する情報処理装置の制御方法であって、操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、取得した複数の上記タッチ位置の差分の平均値を算出し、算出した上記平均値に基づいて、取得した上記タッチ位置を補正する。上記の構成によれば、上記態様1に係る情報処理装置と同様の効果を奏することができる。
 本発明の各態様に係る情報処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記情報処理装置が備える各部(ソフトウェア要素)として動作させることにより上記情報処理装置をコンピュータにて実現させる情報処理装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
 本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
  1 端末(情報処理装置)
 12 定速スライド判定部(差分平均算出部)
 14 タッチ座標補正処理部(タッチ位置補正部)
 70 タッチパネル制御部(タッチ位置取得部)
 dY 差分平均値(平均値)

Claims (6)

  1.  タッチ面へのタッチ操作に応じて動作する情報処理装置であって、
     操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得するタッチ位置取得部と、
     上記タッチ位置取得部が取得した複数の上記タッチ位置の差分の平均値を算出する差分平均算出部と、
     上記差分平均算出部が算出した上記平均値に基づいて、上記タッチ位置取得部が取得した上記タッチ位置を補正するタッチ位置補正部と、を備えた
     ことを特徴とする情報処理装置。
  2.  上記タッチ位置取得部が上記タッチ位置を所定回取得するごとに、上記差分平均算出部は、上記タッチ位置取得部が新たに取得した所定回分の上記タッチ位置を用いて、上記平均値を算出することを特徴とする請求項1に記載の情報処理装置。
  3.  上記タッチ位置補正部は、上記タッチ位置取得部が取得した上記タッチ位置の間の差分を、上記平均値と一致させるように補正することを特徴とする請求項1または2に記載の情報処理装置。
  4.  上記タッチ位置補正部は、上記タッチ位置取得部が取得した上記タッチ位置の差分を、上記平均値に徐々に近づけてゆくように補正することを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。
  5.  タッチ面へのタッチ操作に応じて動作する情報処理装置の制御方法であって、
     操作物が上記タッチ面へのスライド操作を行っている間、上記タッチ面上における上記操作物のタッチ位置を取得し、
     取得した複数の上記タッチ位置の差分の平均値を算出し、
     算出した上記平均値に基づいて、取得した上記タッチ位置を補正する
     ことを特徴とする情報処理装置の制御方法。
  6.  請求項1に記載の情報処理装置としてコンピュータを機能させるための制御プログラムであって、上記差分平均算出部および上記タッチ位置補正部としてコンピュータを機能させるための制御プログラム。
PCT/JP2018/014223 2017-04-17 2018-04-03 情報処理装置、情報処理装置の制御方法、および制御プログラム WO2018193831A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017081588 2017-04-17
JP2017-081588 2017-04-17

Publications (1)

Publication Number Publication Date
WO2018193831A1 true WO2018193831A1 (ja) 2018-10-25

Family

ID=63856558

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/014223 WO2018193831A1 (ja) 2017-04-17 2018-04-03 情報処理装置、情報処理装置の制御方法、および制御プログラム

Country Status (1)

Country Link
WO (1) WO2018193831A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012111194A1 (ja) * 2011-02-16 2012-08-23 Necカシオモバイルコミュニケーションズ株式会社 入力装置、入力方法および記録媒体
JP2014235508A (ja) * 2013-05-31 2014-12-15 シャープ株式会社 電子機器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012111194A1 (ja) * 2011-02-16 2012-08-23 Necカシオモバイルコミュニケーションズ株式会社 入力装置、入力方法および記録媒体
JP2014235508A (ja) * 2013-05-31 2014-12-15 シャープ株式会社 電子機器

Similar Documents

Publication Publication Date Title
KR102308202B1 (ko) 터치 스크린 표시 장치 및 그의 구동방법
US20110080430A1 (en) Information Processing Apparatus, Information Processing Method, and Information Processing Program
US9721365B2 (en) Low latency modification of display frames
US20180101298A1 (en) Graph display apparatus, graph display method and storage medium
JP6171643B2 (ja) ジェスチャ入力装置
US9747001B2 (en) Method and system for transition between computer graphics
EP3089004A1 (en) A vector fill segment method and apparatus to reduce display latency of touch events
KR20140000346A (ko) 표시 장치, 제어 방법 및 기록 매체
TWI485582B (zh) 修正觸碰位置的方法
US20130162562A1 (en) Information processing device and non-transitory recording medium storing program
WO2018180521A1 (ja) 地図表示システムおよび地図表示プログラム
WO2018193831A1 (ja) 情報処理装置、情報処理装置の制御方法、および制御プログラム
JP2009080521A (ja) 数値設定方法およびタッチパネル式操作装置
US20140139462A1 (en) Method for correcting touch position
JP2010211264A (ja) 座標入力装置
JP2014067289A (ja) 情報処理装置および表示制御方法
US9274642B2 (en) Acceleration-based interaction for multi-pointer indirect input devices
JP2015203955A (ja) デジタイザペンによる描画制御装置、描画制御方法および描画制御用プログラム
JP6565878B2 (ja) 表示システム
JP2019053196A (ja) 情報処理装置、画面制御方法
JP2015075989A (ja) オブジェクト操作システム及びオブジェクト操作制御プログラム並びにオブジェクト操作制御方法
JP2005293292A (ja) 情報処理装置及びカーソル制御プログラム
JP6505317B2 (ja) 表示制御装置
JP2016115042A (ja) 電子機器
JP2018181067A (ja) 情報処理装置、情報処理装置の制御方法、および制御プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18787984

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18787984

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP