WO2016035512A1 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法及び情報処理プログラム Download PDF

Info

Publication number
WO2016035512A1
WO2016035512A1 PCT/JP2015/072590 JP2015072590W WO2016035512A1 WO 2016035512 A1 WO2016035512 A1 WO 2016035512A1 JP 2015072590 W JP2015072590 W JP 2015072590W WO 2016035512 A1 WO2016035512 A1 WO 2016035512A1
Authority
WO
WIPO (PCT)
Prior art keywords
vector
image
acquired
information processing
display control
Prior art date
Application number
PCT/JP2015/072590
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 WO2016035512A1 publication Critical patent/WO2016035512A1/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
    • 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Definitions

  • the present invention relates to an information processing apparatus, an information processing method, and an information processing program.
  • a tablet terminal or the like in which a touch panel is incorporated in a display unit that displays an image and the image can be moved in accordance with a user's touch operation on the display unit is widely used (see, for example, Patent Document 1).
  • a flick operation an operation method referred to as a flick operation that is operated by flipping a finger.
  • the tablet terminal or the like moves the image displayed on the display unit by inertial scrolling in the direction of the flick operation.
  • 12 and 14 are images of a conventional inertial scroll.
  • a tablet terminal illustrated by a solid line is reading the top of an electronic book and wants to flick in the Y-axis direction to display the bottom of the page.
  • it is difficult to flick only in the Y-axis direction which usually results in a flick operation having a slight X-axis component.
  • inertial scrolling occurs like a tablet terminal illustrated by a dotted line, and characters at the beginning of each line protrude from the screen after movement. Therefore, after inertial scrolling, the user had to make adjustments so that the characters at the beginning of each line that protruded entered the screen. Further, for example, as shown in FIG.
  • the user flicks in the X-axis direction.
  • the image A may be displayed like the image N and a part of the image may be lost.
  • the flick operation is an operation of flipping with a finger
  • the flick operation is performed and the flick operation is performed in an oblique direction.
  • the image moves in an oblique direction that is not intended, and the position of the image needs to be finely adjusted after the movement.
  • the present invention has been made in view of such a problem, and an object thereof is to provide an information processing apparatus, an information processing method, and an information processing program capable of displaying an image in consideration of a user's intention. .
  • an information processing apparatus corresponds to a display unit that displays an image, an input coordinate acquisition unit that acquires input coordinates, and a locus of input coordinates acquired by the input coordinate acquisition unit.
  • a vector acquisition unit that acquires a vector to be performed, and a first operation in which a speed indicated by a vector acquired last by the vector acquisition unit is equal to or higher than a first predetermined value.
  • Display control means for moving the image displayed on the display means when the input coordinates are first acquired in the direction of the larger component of the X-axis component and the Y-axis component of the last acquired vector; .
  • the display control means is an image corresponding to an initial position which is an input coordinate first acquired by the input coordinate acquisition means in the first operation within a first predetermined time from the start of image movement in the direction. Increases the first predetermined value when moved to a first predetermined range including an extension line of the initially acquired vector.
  • the display control means moves the image displayed on the display means in the direction indicated by the last acquired vector. Move.
  • the display control means includes the input coordinates first acquired by the input coordinate acquisition means in the first operation within a second predetermined time from the start of image movement in the direction indicated by the last acquired vector.
  • the image corresponding to the initial position is moved to the second predetermined range including the initial position of the axis of the smaller component of the X-axis component and the Y-axis component of the last acquired vector, the first The predetermined value of 1 is decreased.
  • the display control means moves the image by inertial scrolling.
  • the input coordinate acquisition unit acquires input coordinates corresponding to a user operation.
  • the user operation is a flick operation.
  • an information processing apparatus includes a display unit that displays an image, an input coordinate acquisition unit that acquires input coordinates corresponding to a flick operation, and the input coordinate acquisition unit that acquires the input coordinates.
  • Vector acquisition means for acquiring a vector corresponding to the locus of input coordinates, and when the finally acquired vector has a speed equal to or higher than a predetermined value, the image displayed at the start time of the flick operation is displayed as the vector.
  • Display control means for inertial scrolling in the direction of the larger component of the X-axis component and the Y-axis component.
  • the display control means performs a scroll operation for moving the inertia scrolled image within a predetermined range from an extension line of the vector acquired last within a first predetermined time from the start of the inertia scroll. In the case of the occurrence, the predetermined value is increased.
  • the display control means has a speed at which the last calculated vector is less than the predetermined value, and the start time of the flick operation is within a second predetermined time from the start of the inertia scroll in the vector direction.
  • the predetermined value is decreased when an image scroll operation is performed in which the movement amount of the smaller component of the X-axis component and the Y-axis component of the movement vector indicating the movement of the image from the time point until the end of the inertial scroll is close to zero.
  • an information processing method corresponds to a display step of displaying an image, an input coordinate acquisition step of acquiring input coordinates, and a locus of input coordinates acquired in the input coordinate acquisition step.
  • an information processing method includes a display step of displaying an image, an input coordinate acquisition step of acquiring input coordinates corresponding to a flick operation, and the input coordinate acquisition step.
  • a vector acquisition step for acquiring a vector corresponding to a locus of input coordinates, and when the last acquired vector has a speed equal to or higher than a predetermined value, the image displayed at the start of the flick operation is the vector Display control step of inertial scrolling in the direction of the larger component of the X-axis component and the Y-axis component.
  • a program according to the present invention causes a computer to function as the above information processing apparatus.
  • Reference numeral 150 in FIGS. 12, 13, and 14 denotes a finger trajectory by a high-speed flick operation. In the flick operation, at the end point of 150, the finger leaves the screen with speed.
  • Reference numeral 152 denotes a tracking scroll locus that is a method of processing an image until a finger is released from the screen by a flick operation.
  • the arrow of the electronic book image is moved, not the arrow of the electronic book image, and the arrow is moved relative to the electronic book.
  • Normally 152 is a vector having the same amount of movement as 150 but having the opposite direction.
  • Reference numeral 154 denotes an inertial scroll locus of the image processed after the flick operation is completed.
  • the arrow of the electronic book image is moved, not the arrow of the electronic book image, and the arrow is moved relative to the electronic book.
  • the flick operation starts by bringing the finger into contact with the screen at the start point of the 150 arrow, and the finger is released from the screen with the speed at the end point of the 150 arrow while keeping the finger in contact with the screen. It is.
  • the image tracking scroll is finished when the finger is released, and the inertial scroll such as 154 is not performed.
  • flicking 154 inertial scrolling is started based on the speed and angle at the end point.
  • flicking is performed as in 150
  • the image is scrolled following the movement of the finger faithfully as in 152 until the finger is released, and then inertial scrolling is performed as in 154 in FIG. 12 and 154 in FIG.
  • inertial scrolling such as 154 in FIG. 13 can prevent the beginning of a line of an electronic book from protruding from the screen after inertial scrolling.
  • FIG. 1 is an external view of a tablet terminal as an information processing apparatus according to an embodiment of the present invention.
  • the tablet terminal 100 has a touch panel display surface 132 and operation buttons 140 arranged on the main surface of the housing.
  • FIG. 2 is a configuration diagram of the tablet terminal 100. As shown in FIG. 2, the tablet terminal 100 includes a control unit 110, a memory 120, a display unit 130, and operation buttons 140.
  • the control unit 110 includes a CPU (Central (Processing Unit).
  • the control unit 110 includes the tablet terminal 100 by executing software processing according to a program stored in the memory 120 (for example, a program for realizing the operation of the tablet terminal 100 shown in FIGS. 3 to 5 described later).
  • Various functions are controlled.
  • the memory 120 is, for example, a RAM (Random Access Memory) or a ROM (Read Only Memory).
  • the memory 120 stores various information (programs and the like) used for control and the like in the tablet terminal 100.
  • Display unit 130 includes a touch panel display surface 132.
  • the touch panel display surface 132 includes, for example, an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), an EL (Electroluminescence) display, or the like.
  • the touch panel display surface 132 displays an image according to the image signal output from the control unit 110.
  • the touch panel display surface 132 detects a contact position when a user's finger or the like comes into contact.
  • the touch panel type display surface 132 employs a capacitance method, and can detect a contact position based on a change in capacitance when a user's finger or the like comes into contact.
  • a part of the entire image 200 is displayed on the touch panel display surface 132 as shown in FIG.
  • An XY coordinate system is set on the touch panel display surface 132.
  • the touch-panel display surface 132 detects contact position coordinates composed of an X coordinate and a Y coordinate in the XY coordinate system. Furthermore, the touch panel display surface 132 outputs information on the contact position coordinates to the control unit 110.
  • the operation button 140 is operated by the user.
  • the tablet terminal 100 may include a hard disk drive (HDD), a camera, and the like.
  • HDD hard disk drive
  • FIG. 1 is a diagrammatic representation of the tablet terminal 100.
  • FIG. 1 is a diagrammatic representation of the tablet terminal 100.
  • the touch panel display surface 132 detects contact of the user's finger or the like, and when detected, outputs information on contact position coordinates in the XY coordinate system of the touch panel display surface 132 to the control unit 110.
  • the coordinate acquisition unit 112 in the control unit 110 is a contact position coordinate that is the first contact position coordinate in the XY coordinate system of the touch panel display surface 132 from the touch panel display surface 132 every first predetermined time (t1). It is determined whether or not A (contact position coordinate A in FIG. 7) has been acquired (step S101). When the contact position coordinate A is acquired, the contact position coordinate A is stored in the memory 120.
  • step S101 When the contact position coordinate A is not acquired (step S101; NO), step S101 is repeated.
  • step S101 when the contact position coordinate A is acquired (step S101; YES), the coordinate acquisition unit 112 acquires a contact position coordinate different from the contact position coordinate A after the first predetermined time has elapsed since the acquisition of the contact position coordinate A. It is determined whether or not (step S102).
  • step S102 When a contact position coordinate different from the contact position coordinate A is acquired after the first predetermined time has elapsed since the acquisition of the contact position coordinate A, the contact position coordinate is stored in the memory 120.
  • step S102 If a contact position coordinate different from the contact position coordinate A has not been acquired after the first predetermined time has elapsed since the acquisition of the contact position coordinate A (step S102; NO), the series of operations ends. On the other hand, when a contact position coordinate different from the contact position coordinate A is acquired after the first predetermined time has elapsed since the acquisition of the contact position coordinate A (step S102; YES), the vector acquisition unit 114 in the control unit 110 A vector (trajectory vector) corresponding to the trajectory of the contact position coordinates is acquired (step S103).
  • the vector acquisition unit 114 is output from the touch panel display surface 132 most recently, and is output from the touch panel display surface 132 immediately before the contact position coordinates (first coordinate) stored in the memory 120. Then, the contact position coordinates (second coordinates) stored in the memory 120 are read from the memory 120, and a trajectory vector having the second coordinates as the start point and the first coordinates as the end point is acquired. Information on the acquired trajectory vector (the direction and length of the trajectory vector) is stored in the memory 120, for example.
  • the vector acquisition unit 114 outputs a trajectory vector having the contact position coordinate A as the start point and the contact position coordinate B as the end point when the contact position coordinate B is output from the touch panel display surface 132 and stored in the memory 120.
  • the vector acquisition unit 114 outputs a trajectory vector having the contact position coordinate B as the start point and the contact position coordinate C as the end point when the contact position coordinate C is output from the touch panel display surface 132 and stored in the memory 120.
  • trajectory vector ⁇ is obtained, and when the contact position coordinate D is output from the touch panel display surface 132 and stored in the memory 120, a trajectory vector ⁇ having the contact position coordinate C as the start point and the contact position coordinate D as the end point is acquired.
  • the coordinate E is a coordinate of a point where the finger or the like is separated and is 0.5 t1 after the contact position coordinate D is acquired, and thus is not detected by the touch panel display surface 132.
  • the trajectory vector ⁇ is determined based on the trajectory vector ⁇ . Specifically, the trajectory vector ⁇ has a length proportional to the trajectory vector ⁇ and is in the same direction as the trajectory vector ⁇ .
  • step S104 the display control unit 116 in the control unit 110 performs display control for following and scrolling the image in the direction of the trajectory vector acquired by the vector acquisition unit 114. This is performed (step S104).
  • the tracking scroll is a method of scrolling an image following the movement of a finger or the like, for example, an image scrolling method based on the trajectory vectors ⁇ , ⁇ , ⁇ in FIG.
  • the display control unit 116 displays one image by expanding one image in a VRAM (Video Random Access Memory) (not shown), cutting out an image to be displayed, and outputting the image to the touch panel display surface 132. I am letting.
  • VRAM Video Random Access Memory
  • the display control unit 116 displays the image in the VRAM according to the length and direction of the vector having the same length as the trajectory vector acquired by the vector acquisition unit 114 and the reverse direction. Are sequentially moved.
  • the display control unit 116 sequentially outputs the images cut out at the cutout positions to the touch-panel display surface 132 for each cutout position that is sequentially moved, so that the image in the direction of the trajectory vector acquired by the vector acquisition unit 114 is displayed. Scroll.
  • the coordinate acquisition unit 112 determines whether or not the next contact position coordinates could not be acquired after the first predetermined time (t1) has elapsed since the acquisition of the contact position coordinates from the touch panel display surface 132, in other words, the user. It is determined whether or not the contact with the finger or the like is finished (step S105). For example, the coordinate acquisition unit 112 is reset every time the contact position coordinates are acquired from the touch panel display surface 132, and whether or not the time indicated by a timer (not shown) that starts timing has passed the first predetermined time. Determine.
  • the first predetermined time (t1) is a cycle in which the coordinate acquisition unit 112 acquires the contact position coordinates from the touch panel display surface 132. Therefore, when the contact of the user's finger or the like continues, the coordinate acquisition unit 112 acquires the contact position coordinates from the touch panel display surface 132 every first predetermined time. On the other hand, when the contact of the user's finger or the like is completed (coordinate E in FIG. 7), the coordinate acquisition unit 112 performs the next contact after the elapse of the first predetermined time (t1) after acquiring the contact position coordinates. The position coordinates cannot be acquired.
  • the coordinate acquisition unit 112 cannot acquire the next contact position coordinates after the elapse of the first predetermined time (t1) after acquiring the contact position coordinates from the touch panel display surface 132, the user's finger It can be considered that the contact by etc. was complete
  • step S105 If the contact with the user's finger or the like has not ended (step S105; NO), in other words, the first predetermined time (t1) after the coordinate acquisition unit 112 acquires the contact position coordinates from the touch panel display surface 132.
  • the coordinate acquisition unit 112 determines whether or not the new contact position coordinates are the same as the previous contact position coordinates. Determination is made (step S106).
  • step S106 If the new contact position coordinates are the same as the previously acquired contact position coordinates (step S106; YES), it is considered that a swipe operation has been performed, and the series of operations ends. On the other hand, when the new contact position coordinates are not the same as the previous contact position coordinates (step S106: NO), the operations after step S103 are repeated.
  • step S105 when the contact with the user's finger or the like is completed (step S105; YES), in other words, the first predetermined time (t1) after the coordinate acquisition unit 112 acquires the contact position coordinates from the touch panel display surface 132. If the next contact position coordinate cannot be acquired after the elapse (coordinate E in FIG. 7), it is considered that the flick operation has been performed, and the display control unit 116 in the control unit 110 detects the trajectory vector ( It is determined whether or not the speed indicated by the trajectory vector ⁇ ) in FIG. 7 is equal to or higher than the speed threshold (step S107).
  • the information on the speed threshold is stored in, for example, the memory 120, and the display control unit 116 compares the speed indicated by the trajectory vector acquired last with the speed threshold read from the memory 120.
  • step S107 When the speed indicated by the last acquired trajectory vector is equal to or higher than the speed threshold (step S107; YES), the process proceeds to the operation shown in FIG. 4, and the display control unit 116 displays the Y component (touch panel type) in the last acquired trajectory vector. It is determined whether or not the component in the Y-axis direction in the XY coordinate system of the display surface 132 is larger than the X component (the component in the X-axis direction in the XY coordinate system of the touch panel display surface 132) (step S111). . For example, in the example shown in FIG. 7, when ⁇ x, which is the X component of the trajectory vector ⁇ , is compared with ⁇ y, which is the Y component, ⁇ y is larger.
  • step S111 If the Y component in the last acquired trajectory vector is larger than the X component (step S111; YES), it is assumed that the user intends inertial scrolling only in the Y component direction. This is because the operator's intention to seek position correction is hidden only in the last acquired vector among a number of single vectors acquired each time the position coordinates are acquired. This is neither described nor suggested in the prior art literature.
  • the display control unit 116 assumes that there is no movement in the X component direction, and returns the X coordinate of the image corresponding to the contact position coordinate A to the X coordinate of the contact position coordinate A, and then the contact position coordinate Display control for inertial scrolling of the image corresponding to A in the Y-axis direction is performed (step S112).
  • the image corresponding to the contact position coordinate A means an image displayed at the position of the contact position coordinate A when the contact position coordinate A is acquired in response to the first contact by the user.
  • it is a character image 201.
  • the image 200 is inertial scrolled in the Y-axis direction, and the character image 201 that is a part of the image 200 is in the Y-axis position A (corresponding to the contact position coordinate A in FIG. 7).
  • the display control in step S112 may be performed only when the angle of the trajectory vector acquired last with respect to the Y axis is equal to or less than a predetermined angle (for example, 30 ° or less).
  • the display control unit 116 sets the last cutout position when one image developed in the VRAM is cut out sequentially in the follow-up scroll of the image in step S104, specifically, the touch panel type.
  • the display surface 132 is moved in the direction corresponding to the X-axis direction in the XY coordinate system and opposite to the X component of the trajectory vector acquired last, and the initial cutout position and the horizontal position are the same.
  • the display control unit 116 further determines the cut-out position after the movement in the vertical direction, specifically, the direction corresponding to the Y-axis direction in the XY coordinate system of the touch panel display surface 132.
  • the acquired trajectory vector is sequentially moved in the direction opposite to the Y component.
  • the display control unit 116 gradually decreases the moving amount of the cutout position for inertial scrolling of the image. Further, the display control unit 116 sequentially outputs the images cut out at the cut-out positions to the touch-panel display surface 132 for each cut-out position that sequentially moves, thereby causing the image to inertial scroll.
  • step S111 when the Y component in the trajectory vector acquired last is not larger than the X component (step S111; NO), it is considered that the user intends the inertial scroll only in the X component direction.
  • the display control unit 116 assumes that there is no movement in the Y component direction, returns the Y coordinate of the image corresponding to the contact position coordinate A to the Y coordinate of the contact position coordinate A, and then the contact position coordinate Display control for inertial scrolling of the image corresponding to A in the X-axis direction is performed (step S113).
  • the display control in step S113 may be performed only when the angle of the trajectory vector acquired last with respect to the X axis is equal to or less than a predetermined angle (for example, 30 ° or less).
  • the display control unit 116 sets the last cutout position when one image developed in the VRAM is cut out sequentially in the follow-up scrolling of the image in step S104, specifically, the touch panel type.
  • the display surface 132 is moved in the direction corresponding to the Y-axis direction in the XY coordinate system and opposite to the Y component of the trajectory vector acquired last, and the initial cutout position and the vertical position are the same.
  • the display control unit 116 further determines the cut-out position after the movement in the horizontal direction, specifically, the direction corresponding to the X-axis direction in the XY coordinate system of the touch-panel display surface 132.
  • the acquired trajectory vector is sequentially moved in the direction opposite to the X component.
  • the display control unit 116 gradually decreases the moving amount of the cutout position for inertial scrolling of the image. Further, the display control unit 116 sequentially outputs the images cut out at the cut-out positions to the touch-panel display surface 132 for each cut-out position that sequentially moves, thereby causing the image to inertial scroll.
  • the display control unit 116 automatically starts after the inertial scrolling starts and ends in a predetermined inertial scrolling time (the inertial scrolling starts. (Time until) Within the time obtained by adding Ta and the grace time Tb, it is determined whether or not the image corresponding to the contact position coordinate A has entered the extension line region corresponding to the trajectory vector acquired last (step) S114).
  • step S114 the display control unit 116 resets at the timing when the inertial scrolling of the image in step S112 or step S113 is started, and the time indicated by a timer (not shown) that starts timing is the inertial scrolling time Ta. It is determined whether it is within the time obtained by adding the grace time Tb.
  • the display control unit 116 When the time indicated by the timer is within the time obtained by adding the inertia scroll time Ta and the grace time Tb, the display control unit 116 further displays that the image corresponding to the contact position coordinate A corresponds to the trajectory vector acquired last. It is determined whether or not the extension line area is entered. For example, as shown in FIG. 9, on the touch-panel display surface 132, a band-shaped region in a predetermined range extending around the extension line of the trajectory vector 210 acquired last from the first contact position A of the flick operation is extended. A line region 212 is formed.
  • the display control unit 116 acquires an image movement vector S indicating the amount of image movement by inertial scrolling.
  • the display control unit 116 can acquire the image movement vector S based on the display control of inertial scroll by itself.
  • the display control unit 116 acquires a contact position movement vector T indicating a change in the contact position after the end of the inertial scroll based on the contact position coordinates acquired by the coordinate acquisition unit 112 after the end of the inertial scroll.
  • the end of the inertial scroll includes a case where the inertial scroll ends automatically, and a case where the user forcibly ends the inertial scroll when the user touches the touch panel type display surface 132 during the inertial scroll. There is.
  • the display control unit 116 adds the image movement vector S and the contact position movement vector T starting from the first contact position (initial position) of the flick operation on the touch panel display surface 132, and ends the addition result vector. Is determined to be within the extension region. If the end point of the addition result vector is within the extension line area, the image corresponding to the contact position coordinate A is within the extension line area corresponding to the trajectory vector acquired last.
  • the image 201 at the position A which is the initial contact position (initial position) of the flick operation, is moved to the position L by the inertial scroll of the image 200, and further the contact by the user after the end of the inertial scroll.
  • the display control unit 116 adds the image movement vector S and the contact position movement vector T1 with the position A, which is the first contact position (initial position) of the flick operation, as the start point, thereby setting the position M as the end point. Get the addition result vector. Since the position M which is the end point of the addition result vector is in the extension line region 212, it is determined that the image corresponding to the contact position coordinate A is in the extension line region corresponding to the trajectory vector acquired last. .
  • the contact position movement vectors T1 and T2 in FIG. 9 are the same vector with the same length and direction, although the contact positions are different. Therefore, even when the image movement vector S and the contact position movement vector T2 are added starting from the position A which is the first contact position (initial position) of the flick operation, the addition result vector having the position M as the end point is acquired. Then, it is determined that the image corresponding to the contact position coordinate A is within the extension line region corresponding to the trajectory vector acquired last.
  • Step S114 the user originally wanted to inertial scroll the image in the direction of the flicked vector, for example, to move the image 201 in the image 200 from the position A to the position M in FIG.
  • the display control unit 116 has inertial scrolled in the Y-axis direction in step S112 or has been inertial scrolled in the X-axis direction in step S113, so that the image has moved in a direction not intended by the user.
  • the image 200 is inertial scrolled in the Y-axis direction, and the image 201 is positioned at the position A. It can be regarded as a has moved to La position L.
  • step S115 since the speed threshold is low, the processing in step S112 and step S113 has been executed, and therefore the display control unit 116 increases the current speed threshold (step S115).
  • the new speed threshold value after the increase is stored in the memory 120.
  • the speed history indicated by the trajectory vector at the time of the flick operation is stored in the memory 120, and the display control unit 116 uses the average value of the speed history indicated by the trajectory vector at the time of the flick operation as the speed threshold value. It is good.
  • step S114 the series of operations ends.
  • step S107 in FIG. 3; NO If the speed indicated by the last acquired vector is not equal to or higher than the speed threshold (step S107 in FIG. 3; NO), it is regarded as a fine correction of the position of the image, and the process proceeds to the operation shown in FIG.
  • the unit 116 performs display control for inertial scrolling in the direction of the trajectory vector acquired last (step S121).
  • the display control unit 116 determines the image cut-out position in the VRAM according to the length and direction of the vector having the same length and the opposite direction as the trajectory vector acquired by the vector acquisition unit 114. Are moved sequentially. At this time, the display control unit 116 gradually decreases the moving amount of the cutout position for inertial scrolling of the image. Further, the display control unit 116 sequentially outputs the images cut out at the cut-out positions to the touch-panel display surface 132 for each cut-out position that sequentially moves, thereby causing the image to inertial scroll.
  • the image 200 is inertial scrolled in the direction of the trajectory vector obtained last on the touch panel display surface 132, and the image 201 that is a part of the image 200 is moved from the position A to the position N. Moving.
  • the display control unit 116 determines that the Y component (component in the Y-axis direction in the XY coordinate system of the touch panel display surface 132) in the trajectory vector acquired last is the X component (XY of the touch panel display surface 132). It is determined whether or not it is greater than the component in the coordinate system in the X-axis direction (step S122).
  • the display control unit 116 determines a predetermined inertial scroll time (the inertial scroll is started) from the start of the inertial scroll. The time from the time until the automatic end to the time) within a time obtained by adding Ta and the delay time Tb, it is determined whether or not the image corresponding to the contact position coordinate A has returned to the X coordinate of the contact position coordinate A ( Step S123).
  • step S123 the display control unit 116 resets at the timing when the inertial scrolling of the image in step S121 is started, and the time indicated by a timer (not shown) that starts timing is the inertial scrolling time Ta and the grace time Tb. It is determined whether or not it is within the time obtained by adding.
  • the display control unit 116 When the time indicated by the timer is within the time obtained by adding the inertia scroll time Ta and the grace time Tb, the display control unit 116 further displays the initial position image corresponding to the initial contact position of the flick operation. It is determined whether or not the position has returned to the position on the X coordinate. For example, as shown in FIG. 11, on the touch-panel display surface 132, a band-shaped region (initial region) in a predetermined range extending in the Y-axis direction centering on the X coordinate (Xa) of the first contact position A of the flick operation. 214 is set.
  • the display control unit 116 acquires an image movement vector U indicating the amount of image movement by inertial scrolling.
  • the display control unit 116 can acquire the image movement vector U based on the display control of inertial scroll by itself.
  • the display control unit 116 acquires a contact position movement vector V indicating a change in the contact position after the end of the inertia scroll based on the contact position coordinates acquired by the coordinate acquisition unit 112 after the end of the inertia scroll.
  • the end of the inertial scroll includes a case where the inertial scroll ends automatically, and a case where the user forcibly ends the inertial scroll when the user touches the touch panel type display surface 132 during the inertial scroll. There is.
  • the display control unit 116 adds the image movement vector U and the contact position movement vector V starting from the first contact position (initial position) of the flick operation on the touch panel display surface 132, and ends the addition result vector. Is in the initial region. If the end point of the addition result vector is within the initial region, the image corresponding to the contact position coordinate A has returned to the X coordinate of the contact position coordinate A.
  • the image 201 at position A which is the initial contact position (initial position) of the flick operation, is moved to position N by inertial scrolling of the image 200, and further contacted by the user after the end of inertial scrolling.
  • the display control unit 116 adds the image movement vector U and the contact position movement vector V1 with the position A, which is the first contact position (initial position) of the flick operation, as the start point, thereby setting the position P as the end point. Get the addition result vector. Since the position P which is the end point of the addition result vector is in the initial region 214, it is determined that the image corresponding to the contact position coordinate A has returned to the X coordinate of the contact position coordinate A.
  • the contact position movement vectors V1 and V2 in FIG. 11 are the same vector with the same length and direction, although the contact positions are different. Therefore, even when the image movement vector U and the contact position movement vector V2 are added starting from the position A which is the first contact position (initial position) of the flick operation, the addition result vector having the position P as the end point is acquired. It is determined that the image corresponding to the contact position coordinate A has returned to the X coordinate of the contact position coordinate A.
  • the display control unit 116 inertially scrolls the image in the direction of the trajectory vector in step S121.
  • the image has moved faithfully in the flicked direction of the user.
  • the image 200 inertial scrolls in the direction of the trajectory vector, and the image 201 moves from position A to position N.
  • step S121 is selected in step S107 instead of step S111. Therefore, the display control unit 116 decreases the current speed threshold value (step S107). S124).
  • the new speed threshold value after the decrease is stored in the memory 120. For example, the speed history indicated by the trajectory vector at the time of the flick operation is stored in the memory 120, and the display control unit 116 uses the average value of the speed history indicated by the trajectory vector at the time of the flick operation as the speed threshold value. It is good.
  • the display control unit 116 determines a predetermined inertial scrolling time (inertial scrolling) from the start of inertial scrolling. Whether the image corresponding to the contact position coordinate A has returned to the Y coordinate of the contact position coordinate A within the time obtained by adding Ta and the delay time Tb. Determination is made (step S125).
  • step S125 the display control unit 116 resets at the timing at which the inertial scrolling of the image in step S121 is started, and the time indicated by a timer (not shown) that starts timing is delayed from the inertial scrolling time Ta. It is determined whether it is within the time obtained by adding the time Tb.
  • the display control unit 116 When the time indicated by the timer is within the time obtained by adding the inertia scroll time Ta and the grace time Tb, the display control unit 116 further displays the initial position image corresponding to the initial contact position of the flick operation. It is determined whether or not the position has returned to the position on the Y coordinate.
  • the display control unit 116 acquires an image movement vector U indicating the amount of image movement by inertial scrolling.
  • the display control unit 116 can acquire the image movement vector U based on the display control of inertial scroll by itself.
  • the display control unit 116 acquires a contact position movement vector V indicating a change in the contact position after the end of the inertia scroll based on the contact position coordinates acquired by the coordinate acquisition unit 112 after the end of the inertia scroll.
  • the end of the inertial scroll includes a case where the inertial scroll ends automatically, and a case where the user forcibly ends the inertial scroll when the user touches the touch panel type display surface 132 during the inertial scroll. There is.
  • the display control unit 116 adds the image movement vector U and the contact position movement vector V starting from the first contact position (initial position) of the flick operation on the touch panel display surface 132, and ends the addition result vector. Is in the initial region. If the end point of the addition result vector is within the initial region, the image corresponding to the contact position coordinate A has returned to the Y coordinate of the contact position coordinate A.
  • step S125 When the image corresponding to the contact position coordinate A returns to the X coordinate of the contact position coordinate A within the time obtained by adding the inertia scroll time Ta and the delay time Tb from the start of the inertia scroll (step S125; YES) )
  • the display control unit 116 inertially scrolls the image in the direction of the trajectory vector in step S121. Therefore, it can be considered that the image has faithfully moved in the flicked direction of the user.
  • the process of step S121 is selected in step S107 instead of step S111.
  • the display control unit 116 decreases the current speed threshold value (step S107). S126).
  • the new speed threshold value after the decrease is stored in the memory 120.
  • the speed history indicated by the trajectory vector at the time of the flick operation is stored in the memory 120, and the display control unit 116 uses the average value of the speed history indicated by the trajectory vector at the time of the flick operation as the speed threshold value. It is good.
  • the coordinate acquisition unit 112 in the control unit 110 acquires the contact position coordinates in the XY coordinate system of the touch panel display surface 132 from the touch panel display surface 132, and the vector acquisition unit. 114 acquires a trajectory vector corresponding to the trajectory of the contact position coordinates. Furthermore, when the user performs a flick operation, if the speed of the trajectory vector acquired last is equal to or higher than the speed threshold value, the display control unit 116 has a larger X component and Y component in the trajectory vector acquired last. Display control for inertial scrolling of the image in the direction of the component is performed.
  • the flick operation is an operation of flipping with a finger, blurring is likely to occur and the operation is not necessarily performed in the direction intended by the user, and as a result, the image may move in a direction not intended by the user.
  • the speed of the trajectory vector acquired last in the flick operation is high, it is assumed that the user does not perform the flick operation in the vertical or horizontal direction, and the X component and Y component in the last acquired vector are considered.
  • display control for inertial scrolling of the image in the direction of the larger component is performed, whereby the image can be moved in the vertical or vertical direction intended by the user. For example, as shown in FIG.
  • the image 200 is inertial scrolled in the Y-axis direction, and the image 201 moves from the position A to the position L.
  • the movement in the X-axis direction is returned to the original, and then the inertial scroll is performed only in the Y-axis direction.
  • the image 200 is inertia scrolled in the Y axis direction.
  • the image 201 may move from the position A to the position L.
  • the user intends to fine-correct the position of the image and increases the speed threshold.
  • the image can be moved (such as fine correction) in the direction intended by the user.
  • the display control unit 116 is a display for inertial scrolling of the image in the direction of the last acquired trajectory vector if the speed of the trajectory vector acquired last is less than the speed threshold when the user performs a flick operation. Take control. If the speed of the last acquired trajectory vector in the flick operation is small, it is assumed that the user has performed the flick operation in the direction intended by the user (such as an operation for fine correction), and the last acquired trajectory vector By performing display control for inertial scrolling of the image in the direction, the image can be moved (such as fine correction) in the direction intended by the user (FIG. 10).
  • the image is inertial scrolled in the direction of the trajectory vector acquired last.
  • Display control may be performed.
  • the user's intention is grasped and the speed threshold value is decreased.
  • the image can be moved in the intended direction.
  • the flick operation and the swipe operation have two types of meanings although they are the same operation.
  • One is an operation for displaying another image from the image currently displayed by the user.
  • the other is that the user flicks in an oblique direction, but the user unconsciously flicks it in an oblique direction, even though he / she wants to display another image that is far away in the vertical (horizontal) direction from the image currently displayed. Therefore, the device moved in an oblique direction against the user's intention to move in the vertical (horizontal) direction, and as a result, the image that the user wanted to display was not displayed.
  • This is an operation for the user to unavoidably correct the image displayed by the apparatus to the position intended by the user.
  • the touch panel type display surface 132 detects an image movement operation by the user, but the image movement operation by the user is not limited to the contact operation, and a detection unit corresponding to the image movement operation is provided. It only has to be.
  • the tablet terminal 100 is used as the information processing apparatus.
  • an image moving operation by a user such as a mobile phone such as a smartphone, a tablet personal computer, or a laptop personal computer is possible.
  • the present invention can be applied to any information processing apparatus.
  • the function of the tablet terminal 100 may be realized by a computer executing a program.
  • a program for realizing the functions of the tablet terminal 100 may be stored in a storage medium such as a CD-ROM (Compact Disc Read Read Memory) or may be downloaded to a computer via a network.
  • CD-ROM Compact Disc Read Read Memory
  • DESCRIPTION OF SYMBOLS 100 ... Tablet terminal, 110 ... Control part, 112 ... Coordinate acquisition part, 114 ... Vector acquisition part, 116 ... Display control part, 120 ... Memory, 130 ... Display part, 132 ... Touch panel type display surface, 140 ... Operation button, 150 ... Finger's trajectory by flicking operation, 152 ... Following scrolling trajectory during flicking operation, 154 ... Inertial scrolling trajectory after flicking operation

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

【課題】ユーザの意図を考慮した画像を表示することが可能な情報処理装置、情報処理方法及び情報処理プログラムを提供する。 【解決手段】タブレット端末100では、制御部110内の座標取得部112は、タッチパネル式表示面132からの当該タッチパネル式表示面132のX-Y座標系における接触位置座標を取得し、ベクトル取得部114は、接触位置座標の軌跡に対応する軌跡ベクトルを取得する。更に、表示制御部116は、ユーザがフリック操作をした場合には、最後に取得した軌跡ベクトルの速度が速度閾値以上であれば、最後に取得した軌跡ベクトルにおけるX成分及びY成分のうち、大きい方の成分の方向へ画像を慣性スクロールさせる表示制御を行う。

Description

情報処理装置、情報処理方法及び情報処理プログラム
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
画像を表示する表示部にタッチパネルを内蔵し、表示部に対するユーザの接触操作に応じて画像を移動させることが可能なタブレット端末等が普及している(例えば、特許文献1参照)。このようなタブレット端末等においては、操作方法として、指を弾くように操作するフリック操作と称されるものがある。フリック操作がなされた場合、タブレット端末等は、表示部に表示している画像を、そのフリック操作の方向へ慣性スクロールにより移動させる。
特開平10-161628号公報
図12及び図14は従来の慣性スクロールのイメージである。例えば実線で図示するタブレット端末で、電子書籍の先頭を読んでいて、ページ下部を表示させようとY軸方向にフリックをしたかったとする。しかし、現実的にはY軸方向のみにフリックすることは難しく、通常は若干X軸成分を有するフリック操作になってしまう。その結果、点線で図示するタブレット端末のように慣性スクロールしてしまい、移動後の画面から各行の先頭部分の文字がはみ出してしまう。そのため慣性スクロール後に、はみ出してしまった各行の先頭部分の文字が画面に入るようにユーザが調整しなければならなかった。
また例えば、図11のように、画像AをY軸方向のみに移動させようとして、当該Y軸方向のみにフリック操作をしたつもりであっても、X軸方向にもフリック操作してしまい、その結果、画像Aが画像Nのように表示され画像の一部が欠けてしまうことがあった。
上述したようにフリック操作は、指で弾く操作であるために、垂直又は水平方向にフリック操作したつもりであっても、ぶれが生じて斜め方向へのフリック操作となってしまい、その結果、ユーザが意図しない斜め方向へ画像が移動してしまい、移動後に画像の位置を微調整する必要があった。
本発明は、このような問題に鑑みてなされたものであり、ユーザの意図を考慮した画像を表示することが可能な情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
上記目的を達成するため、本発明に係る情報処理装置は、画像を表示する表示手段と、入力座標を取得する入力座標取得手段と、前記入力座標取得手段により取得された入力座標の軌跡に対応するベクトルを取得するベクトル取得手段と、前記ベクトル取得手段により最後に取得されたベクトルが示す速度が第1の所定値以上となる第1の操作が行われた場合に、前記入力座標取得手段により最初に入力座標が取得されたときに前記表示手段に表示されている画像を、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち大きい成分の方向へ移動させる表示制御手段と、を備える。
前記表示制御手段は、前記方向への画像の移動開始から第1の所定時間内に、前記第1の操作において前記入力座標取得手段により最初に取得された入力座標である初期位置に対応する画像が、前記最初に取得されたベクトルの延長線を含む第1所定範囲へ移動した場合に、前記第1の所定値を増加させる。
前記表示制御手段は、前記最後に取得されたベクトルが示す速度が第1の所定値未満である場合に、前記表示手段に表示されている画像を、前記最後に取得されたベクトルが示す方向へ移動させる。
前記表示制御手段は、前記最後に取得されたベクトルが示す方向への画像の移動開始から第2の所定時間内において、前記第1の操作において前記入力座標取得手段により最初に取得された入力座標である初期位置に対応する画像が、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち小さい成分の軸の初期位置を含む第2の所定範囲へ移動した場合に、前記第1の所定値を減少させる。
前記表示制御手段は、前記画像を、慣性スクロールにより移動させる。
前記入力座標取得手段は、ユーザの操作に対応する入力座標を取得する。
前記ユーザの操作は、フリック操作である。
上記目的を達成するため、本発明に係る情報処理装置は、画像を表示する表示手段と、フリック操作に対応する入力座標を取得する入力座標取得手段と、前記入力座標取得手段により取得された前記入力座標の軌跡に対応するベクトルを取得するベクトル取得手段と、最後に取得された前記ベクトルが所定値以上の速度であった場合、前記フリック操作の開始時点に表示されていた前記画像を該ベクトルのX軸成分とY軸成分とのうち大きい成分の方向に慣性スクロールさせる表示制御手段と、を備える。
前記表示制御手段は、前記慣性スクロールの開始から第1の所定時間以内に、前記慣性スクロールさせた画像を、最後に取得された前記ベクトルの延長線から所定の範囲以内に移動させるスクロール操作がされた場合、前記所定値を増加させる。
前記表示制御手段は、最後に算出された前記ベクトルが前記所定値未満の速度であって、かつ、該ベクトル方向への慣性スクロールの開始から第2の所定時間以内に、前記フリック操作の開始時点から前記慣性スクロールの終了時点までの前記画像の移動を示す移動ベクトルのX軸成分とY軸成分とのうち小さい成分の移動量を0に近づける画像スクロール操作がされた場合、前記所定値を減少させる。
上記目的を達成するため、本発明に係る情報処理方法は、画像を表示する表示ステップと、入力座標を取得する入力座標取得ステップと、前記入力座標取得ステップにおいて取得された入力座標の軌跡に対応するベクトルを取得するベクトル取得ステップと、前記ベクトル取得ステップにおいて最後に取得されたベクトルが示す速度が第1の所定値以上である場合に、表示されている画像を、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち大きい成分の方向へ移動させる表示制御ステップと、を含む。
上記目的を達成するため、本発明に係る情報処理方法は、画像を表示する表示ステップと、フリック操作に対応する入力座標を取得する入力座標取得ステップと、前記入力座標取得ステップにより取得された前記入力座標の軌跡に対応するベクトルを取得するベクトル取得ステップと、最後に取得された前記ベクトルが所定値以上の速度であった場合、前記フリック操作の開始時点に表示されていた前記画像を該ベクトルのX軸成分とY軸成分とのうち大きい成分の方向に慣性スクロールさせる表示制御ステップと、を含む。
上記目的を達成するため、本発明に係るプログラムは、コンピュータを上記の情報処理装置として機能させる。
本発明によれば、ユーザの意図を考慮した画像を表示することが可能となる。
情報処理装置としてのタブレット端末の外観図である。 タブレット端末の構成図である。 タブレット端末の動作を示す第1のフローチャートである。 タブレット端末の動作を示す第2のフローチャートである。 タブレット端末の動作を示す第3のフローチャートである。 操作に伴う画像表示の第1の例を示す図である。 軌跡ベクトルの一例を示す図である。 操作に伴う画像表示の第2の例を示す図である。 操作に伴う画像表示の第3の例を示す図である。 操作に伴う画像表示の第4の例を示す図である。 操作に伴う画像表示の第5の例を示す図である。 高速でフリック操作をした場合の従来の慣性スクロールの第1のイメージ図である。 高速でフリック操作をした場合の本願発明の慣性スクロールのイメージ図である。 高速でフリック操作をした場合の従来の慣性スクロールの第2のイメージ図である。
以下、図面を参照して、本発明の実施形態に係る情報処理装置、情報処理方法及び情報処理プログラムを説明する。図12,図13,図14に記載の150は、高速フリック操作による指の軌跡である。フリック操作では150の終点で指が速度を持ったまま画面から離れる。
152は、フリック操作による指が画面から離れるまでの画像の処理方法である追従スクロールの軌跡である。分かりやすい図にするために電子書籍の画像が動いている矢印ではなく電子書籍の方を固定して相対的に端末機が動いた矢印にしている。通常152は、150と移動量が同じで向きが反対のベクトルになる。
154は、フリック操作終了後に処理される画像の慣性スクロールの軌跡である。分かりやすい図にするために電子書籍の画像が動いている矢印ではなく電子書籍の方を固定して相対的に端末機が動いた矢印にしている。
この場合のフリック操作は150の矢印の始点で画面に指を接触させることによって操作が始まり、画面に指を接触させたまま150の矢印の終点で速度を持ったまま画面から指を離す操作方法である。スワイプ操作の場合は、指を離したときに画像の追従スクロールが終了し、154のような慣性スクロールには移行しない。一方フリックの場合は、終点での速度や角度に基づいて154の慣性スクロールが開始される。
 一般に150のようにフリックをすると、指が離れるまでは152のように指の動きに忠実に画像が追従スクロールされ、その後は図12の154や図14の154ような慣性スクロールをする。しかし本願発明では図13の154のような慣性スクロールをすることにより、慣性スクロール後に電子書籍の行頭が画面からはみ出ること等を防止できる。
図1は、本発明の実施形態に係る情報処理装置としてのタブレット端末の外観図である。図1に示すように、タブレット端末100は、筐体の主面に、タッチパネル式表示面132と、操作ボタン140とが配置されている。
図2は、タブレット端末100の構成図である。図2に示すように、タブレット端末100は、制御部110、メモリ120、表示部130及び操作ボタン140を含んで構成される。
制御部110は、CPU(Central Processing Unit)によって構成される。制御部110は、メモリ120に記憶されたプログラム(例えば、後述する図3~5に示すタブレット端末100の動作を実現するためのプログラム)に従ってソフトウェア処理を実行することにより、タブレット端末100が具備する各種機能(座標取得部112、ベクトル取得部114、表示制御部116等)を制御する。
メモリ120は、例えばRAM(Random Access Memory)やROM(Read Only Memory)である。メモリ120は、タブレット端末100における制御等に用いられる各種情報(プログラム等)を記憶する。
表示部130は、タッチパネル式表示面132を含む。タッチパネル式表示面132は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electroluminescence)ディスプレイ等によって構成される。タッチパネル式表示面132は、制御部110から出力された画像信号に従って画像を表示する。
また、タッチパネル式表示面132は、ユーザの指等が接触したときに、その接触位置を検出する。例えば、タッチパネル式表示面132は、静電容量方式が採用され、ユーザの指等が接触したときの静電容量の変化により接触位置を検出することができる。
タッチパネル式表示面132には、図6に示すように、全体の画像200の一部が表示される。また、タッチパネル式表示面132には、X-Y座標系が設定されている。タッチパネル式表示面132は、そのX-Y座標系におけるX座標及びY座標からなる接触位置座標を検出する。更に、タッチパネル式表示面132は、接触位置座標の情報を制御部110へ出力する。
操作ボタン140は、ユーザによって操作される。
なお、タブレット端末100は、その他にハードディスクドライブ(HDD)やカメラ等を含んで構成されていてもよい。
次に、タブレット端末100の動作を説明する。以下の動作は、タッチパネル式表示面132に画像が表示されているときに行われる。図3~図5は、タブレット端末100の動作を示すフローチャートである。
タッチパネル式表示面132は、ユーザの指等の接触を検出し、検出した場合には、当該タッチパネル式表示面132のX-Y座標系における接触位置座標の情報を制御部110へ出力する。制御部110内の座標取得部112は、第1所定時間(t1)毎にタッチパネル式表示面132からの当該タッチパネル式表示面132のX-Y座標系における最初の接触位置座標である接触位置座標A(図7の接触位置座標A)を取得したか否かを判定する(ステップS101)。接触位置座標Aが取得された場合、当該接触位置座標Aは、メモリ120に記憶される。
接触位置座標Aが取得されていない場合には(ステップS101;NO)、ステップS101が繰り返される。一方、接触位置座標Aが取得された場合(ステップS101;YES)、座標取得部112は、接触位置座標Aの取得から第1所定時間経過後に、接触位置座標Aとは異なる接触位置座標を取得したか否かを判定する(ステップS102)。接触位置座標Aの取得から第1所定時間経過後に、接触位置座標Aとは異なる接触位置座標を取得した場合、当該接触位置座標が、メモリ120に記憶される。
接触位置座標Aの取得から第1所定時間経過後に、接触位置座標Aとは異なる接触位置座標を取得していない場合には(ステップS102;NO)、一連の動作が終了する。一方、接触位置座標Aの取得から第1所定時間経過後に、接触位置座標Aとは異なる接触位置座標を取得した場合には(ステップS102;YES)、制御部110内のベクトル取得部114は、接触位置座標の軌跡に対応するベクトル(軌跡ベクトル)を取得する(ステップS103)。
具体的には、ベクトル取得部114は、タッチパネル式表示面132から直近に出力され、メモリ120に記憶された接触位置座標(第1座標)と、その1つ前にタッチパネル式表示面132から出力され、メモリ120に記憶された接触位置座標(第2座標)とをメモリ120から読み出し、第2座標を始点とし、第1座標を終点とする軌跡ベクトルを取得する。取得された軌跡ベクトルの情報(軌跡ベクトルの方向と長さ)は、例えばメモリ120に記憶される。
例えば、図7に示すように、接触位置座標がA、B、C、Dの順で変化した場合を考える。この場合、ベクトル取得部114は、接触位置座標Bがタッチパネル式表示面132から出力され、メモリ120に記憶された段階で、接触位置座標Aを始点とし、接触位置座標Bを終点とする軌跡ベクトルαを取得する。同様に、ベクトル取得部114は、接触位置座標Cがタッチパネル式表示面132から出力され、メモリ120に記憶された段階で、接触位置座標Bを始点とし、接触位置座標Cを終点とする軌跡ベクトルβを取得し、接触位置座標Dがタッチパネル式表示面132から出力され、メモリ120に記憶された段階で、接触位置座標Cを始点とし、接触位置座標Dを終点とする軌跡ベクトルγを取得する。なお、座標Eは、指等が離れた地点の座標であり、接触位置座標Dが取得されてから0.5t1後であるため、タッチパネル式表示面132によって検出されない。軌跡ベクトルδは、軌跡ベクトルγに基づいて決定される。具体的には、軌跡ベクトルδは、軌跡ベクトルγに比例する長さを有し、軌跡ベクトルγと同一方向である。
再び、図3に戻って説明する。ステップS103において、接触位置座標の軌跡に対応するベクトルが取得された後、制御部110内の表示制御部116は、ベクトル取得部114が取得した軌跡ベクトルの方向へ画像を追従スクロールさせる表示制御を行う(ステップS104)。なお、追従スクロールとは、指等の動きに追従して画像をスクロールさせる方法であり、例えば、図7の軌跡ベクトルα、β、γに基づいた画像のスクロール方法である。
具体的には、表示制御部116は、図示しないVRAM(Video Random Access Memory)に、1つの画像を展開し、表示させるべき画像を切り出してタッチパネル式表示面132に出力することで、画像を表示させている。そして、スクロールの際には、表示制御部116は、ベクトル取得部114が取得した軌跡ベクトルとは長さが同一で方向が逆方向であるベクトルの長さ及び方向に応じて、VRAM内の画像の切り出し位置を逐次移動させる。更に、表示制御部116は、逐次移動する切り出し位置毎に、その切り出し位置で切り出した画像をタッチパネル式表示面132に順次出力することで、ベクトル取得部114が取得した軌跡ベクトルの方向へ画像をスクロールさせる。
次に、座標取得部112は、タッチパネル式表示面132からの接触位置座標の取得から第1所定時間(t1)の経過後に次の接触位置座標が取得できなかったか否か、換言すれば、ユーザの指等の接触が終了したか否かを判定する(ステップS105)。例えば、座標取得部112は、タッチパネル式表示面132から接触位置座標を取得する毎にリセットされて計時を開始するタイマ(図示せず)が示す時間が、第1所定時間を経過したか否かを判定する。
上述したように、第1所定時間(t1)は、座標取得部112がタッチパネル式表示面132からの接触位置座標を取得する周期である。従って、ユーザの指等の接触が継続している場合には、座標取得部112は、第1所定時間毎にタッチパネル式表示面132からの接触位置座標を取得することになる。一方、ユーザの指等の接触が終了した場合(図7の座標E)には、座標取得部112は、接触位置座標を取得してから第1所定時間(t1)の経過後に、次の接触位置座標を取得することができない。このため、座標取得部112がタッチパネル式表示面132からの接触位置座標を取得してから第1所定時間(t1)の経過後に次の接触位置座標を取得できなかった場合には、ユーザの指等による接触が終了したとみなすことができる。
ユーザの指等による接触が終了していない場合(ステップS105;NO)、換言すれば、座標取得部112がタッチパネル式表示面132からの接触位置座標を取得してから第1所定時間(t1)経過後に次の接触位置座標(新たな接触位置座標)を取得した場合には、座標取得部112は、新たな接触位置座標が1つ前に取得した接触位置座標と同一であるか否かを判定する(ステップS106)。
新たな接触位置座標が1つ前に取得した接触位置座標と同一である場合には(ステップS106;YES)、スワイプ操作が行われたとみなされ、一連の動作を終了する。一方、新たな接触位置座標が1つ前に取得した接触位置座標と同一でない場合には(ステップS106 ;NO)、ステップS103以降の動作が繰り返される。
一方、ユーザの指等による接触が終了した場合(ステップS105;YES)、換言すれば、座標取得部112がタッチパネル式表示面132からの接触位置座標を取得してから第1所定時間(t1)経過後に次の接触位置座標を取得できなかった場合(図7の座標E)には、フリック操作が行われたとみなされ、制御部110内の表示制御部116は、最後に取得した軌跡ベクトル(図7の軌跡ベクトルγ)が示す速度が速度閾値以上であるか否かを判定する(ステップS107)。速度閾値の情報は、例えばメモリ120に記憶されており、表示制御部116は、最後に取得した軌跡ベクトルが示す速度とメモリ120から読み出した速度閾値とを比較する。
最後に取得した軌跡ベクトルが示す速度が速度閾値以上である場合(ステップS107;YES)、図4に示す動作に移行し、表示制御部116は、最後に取得した軌跡ベクトルにおけるY成分(タッチパネル式表示面132のX-Y座標系におけるY軸方向の成分)がX成分(タッチパネル式表示面132のX-Y座標系におけるX軸方向の成分)より大きいか否かを判定する(ステップS111)。例えば、図7に示す例では、軌跡ベクトルγのX成分であるγxとY成分であるγyとを比較すると、γyの方が大きい。
最後に取得した軌跡ベクトルにおけるY成分がX成分より大きい場合(ステップS111;YES)、ユーザはY成分方向のみへの慣性スクロールを意図しているとみなされる。なぜなら、操作者の位置補正を求める意図は、位置座標取得ごとに取得される多数の単体ベクトルのうち、最後に取得したベクトルのみに隠されているからである。このことは従来の技術文献には記載も示唆もされていない。
この場合、表示制御部116は、X成分方向への移動はなかったものとして、接触位置座標Aに対応する画像のX座標を接触位置座標AのX座標に戻した上で、当該接触位置座標Aに対応する画像をY軸方向へ慣性スクロールさせる表示制御を行う(ステップS112)。ここで、接触位置座標Aに対応する画像とは、ユーザによる最初の接触に応じて接触位置座標Aが取得されたときに当該接触位置座標Aの位置に表示されていた画像を意味し、例えば、図8に示す例では、キャラクタの画像201である。図8に示す例では、画像200がY軸方向に慣性スクロールされて、当該画像200の一部であるキャラクタの画像201がY軸方向である位置A(図7の接触位置座標Aに対応)から位置Lに移動する。なお、最後に取得した軌跡ベクトルのY軸に対する角度が所定の角度以下(例えば30°以下)である場合にのみ、ステップS112の表示制御が行われるようにしてもよい。
具体的には、表示制御部116は、ステップS104における画像の追従スクロールにおいてVRAM内に展開されている1つの画像を逐次切り出した際の最後の切り出し位置を横方向、具体的には、タッチパネル式表示面132のX-Y座標系におけるX軸方向に対応する方向であって、最後に取得した軌跡ベクトルのX成分とは反対の方向に移動させ、最初の切り出し位置と横方向の位置が同一となるようにする。次に、表示制御部116は、移動後の切り出し位置を、更に縦方向、具体的には、タッチパネル式表示面132のX-Y座標系におけるY軸方向に対応する方向であって、最後に取得した軌跡ベクトルのY成分とは反対の方向に逐次移動させる。この際、表示制御部116は、画像の慣性スクロールのために、切り出し位置の移動量を徐々に小さくする。更に、表示制御部116は、逐次移動する切り出し位置毎に、その切り出し位置で切り出した画像をタッチパネル式表示面132に順次出力することで、画像を慣性スクロールさせる。
これにより、例えば、従来、タッチパネル式表示面132において画像がフリックした方向にスクロールされていたものが、図8に示すように画像200がY軸方向に慣性スクロールされ、画像200の一部である画像201は位置Aから位置Lに移動する。
一方、最後に取得した軌跡ベクトルにおけるY成分がX成分より大きくない場合(ステップS111;NO)、ユーザはX成分方向のみへの慣性スクロールを意図しているとみなされる。この場合、表示制御部116は、Y成分方向への移動はなかったものとして、接触位置座標Aに対応する画像のY座標を接触位置座標AのY座標に戻した上で、当該接触位置座標Aに対応する画像をX軸方向へ慣性スクロールさせる表示制御を行う(ステップS113)。なお、最後に取得した軌跡ベクトルのX軸に対する角度が所定の角度以下(例えば30°以下)である場合にのみ、ステップS113の表示制御が行われるようにしてもよい。
具体的には、表示制御部116は、ステップS104における画像の追従スクロールにおいてVRAM内に展開されている1つの画像を逐次切り出した際の最後の切り出し位置を縦方向、具体的には、タッチパネル式表示面132のX-Y座標系におけるY軸方向に対応する方向であって、最後に取得した軌跡ベクトルのY成分とは反対の方向に移動させ、最初の切り出し位置と縦方向の位置が同一となるようにする。次に、表示制御部116は、移動後の切り出し位置を、更に横方向、具体的には、タッチパネル式表示面132のX-Y座標系におけるX軸方向に対応する方向であって、最後に取得した軌跡ベクトルのX成分とは反対の方向に逐次移動させる。この際、表示制御部116は、画像の慣性スクロールのために、切り出し位置の移動量を徐々に小さくする。更に、表示制御部116は、逐次移動する切り出し位置毎に、その切り出し位置で切り出した画像をタッチパネル式表示面132に順次出力することで、画像を慣性スクロールさせる。
ステップS112又はステップS113において画像の慣性スクロールが開始された後、表示制御部116は、慣性スクロールの開始から、予め定められている慣性スクロールの時間(慣性スクロールが開始されてから自動的に終了するまでの時間)Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内に入ったか否かを判定する(ステップS114)。
ステップS114において、表示制御部116は、ステップS112又はステップS113における画像の慣性スクロールが開始されたタイミングでリセットされて計時を開始するタイマ(図示せず)が示す時間が、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内であるか否かを判定する。
タイマが示す時間が慣性スクロールの時間Taと猶予時間Tbとを加算した時間内である場合、更に、表示制御部116は、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内に入ったか否かを判定する。例えば、図9に示すように、タッチパネル式表示面132において、フリック操作の最初の接触位置Aを始点とする最後に取得した軌跡ベクトル210の延長線を中心とする所定範囲の帯状の領域が延長線領域212となる。
具体的には、表示制御部116は、慣性スクロールによる画像の移動量を示す画像移動ベクトルSを取得する。表示制御部116は、自身による慣性スクロールの表示制御に基づいて、画像移動ベクトルSを取得することができる。
更に、表示制御部116は、慣性スクロール終了後に、座標取得部112によって取得される接触位置座標に基づいて、慣性スクロール終了後の接触位置の変化を示す接触位置移動ベクトルTを取得する。ここで、慣性スクロールの終了とは、慣性スクロールが自動的に終了する場合と、慣性スクロール中にユーザがタッチパネル式表示面132に指等の接触させることによって慣性スクロールが強制的に終了する場合とがある。
そして、表示制御部116は、タッチパネル式表示面132におけるフリック操作の最初の接触位置(初期位置)を始点として画像移動ベクトルSと接触位置移動ベクトルTとを加算し、その加算結果のベクトルの終点が延長領域内であるか否かを判定する。加算結果のベクトルの終点が延長線領域内であれば、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内であることになる。
例えば、図9に示すように、フリック操作の最初の接触位置(初期位置)である位置Aの画像201が画像200の慣性スクロールによって位置Lに移動し、更に、慣性スクロール終了後のユーザによる接触操作によって位置Mに移動する場合を考える。この場合、表示制御部116は、フリック操作の最初の接触位置(初期位置)である位置Aを始点として画像移動ベクトルSと接触位置移動ベクトルT1とを加算することで、位置Mを終点とする加算結果のベクトルを取得する。加算結果のベクトルの終点である位置Mは、延長線領域212内であるので、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内であると判定される。
なお、接触位置移動ベクトルの取得においてユーザによる実際の接触位置は考慮する必要はない。例えば、図9における接触位置移動ベクトルT1とT2とは接触位置は異なるが、長さ及び方向が等しく、同一のベクトルである。従って、フリック操作の最初の接触位置(初期位置)である位置Aを始点として画像移動ベクトルSと接触位置移動ベクトルT2とを加算する場合も、位置Mを終点とする加算結果のベクトルが取得され、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内であると判定される。
慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内に入った場合(ステップS114;YES)には、本来、ユーザはフリックしたベクトルの方向へ画像を慣性スクロールさせたかった、例えば、図9において画像200内の画像201を位置Aから位置Mへ移動させたかったにも関わらず、表示制御部116が、ステップS112においてY軸方向へ慣性スクロールさせた、あるいは、ステップS113においてX軸方向へ慣性スクロールさせたために、ユーザの意図しない方向に画像が移動してしまった、例えば、図9において、画像200がY軸方向へ慣性スクロールして、画像201が位置Aから位置Lへ移動してしまったとみなすことができる。
この場合には、速度閾値が低いためにステップS112やステップS113の処理が実行されてしまったことになるので、表示制御部116は、現在の速度閾値を増加させる(ステップS115)。増加後の新たな速度閾値はメモリ120に記憶される。なお、例えば、フリック操作の際の軌跡ベクトルが示す速度の履歴をメモリ120に記憶させておき、表示制御部116は、そのフリック操作の際の軌跡ベクトルが示す速度の履歴の平均値を速度閾値としてもよい。
一方、慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、最後に取得した軌跡ベクトルに対応する延長線領域内に入っていない場合(ステップS114;NO)には、一連の動作が終了する。
また、最後に取得したベクトルが示す速度が速度閾値以上でない場合(図3のステップS107;NO)、画像の位置の微修正等であるとみなされ、図5に示す動作に移行し、表示制御部116は、最後に取得した軌跡ベクトルの方向へ慣性スクロールさせる表示制御を行う(ステップS121)。
具体的には、表示制御部116は、ベクトル取得部114が取得した軌跡ベクトルとは長さが同一で方向が逆方向であるベクトルの長さ及び方向に応じて、VRAM内の画像の切り出し位置を逐次移動させる。この際、表示制御部116は、画像の慣性スクロールのために、切り出し位置の移動量を徐々に小さくする。更に、表示制御部116は、逐次移動する切り出し位置毎に、その切り出し位置で切り出した画像をタッチパネル式表示面132に順次出力することで、画像を慣性スクロールさせる。
これにより、例えば、図10に示すようにタッチパネル式表示面132において画像が最後に取得した軌跡ベクトルの方向へ画像200が慣性スクロールされ、画像200の一部である画像201が位置Aから位置N移動する。
次に、表示制御部116は、最後に取得した軌跡ベクトルにおけるY成分(タッチパネル式表示面132のX-Y座標系におけるY軸方向の成分)がX成分(タッチパネル式表示面132のX-Y座標系におけるX軸方向の成分)より大きいか否かを判定する(ステップS122)。
最後に取得した軌跡ベクトルにおけるY成分がX成分より大きい場合(ステップS122;YES)、表示制御部116は、慣性スクロールの開始から、予め定められている慣性スクロールの時間(慣性スクロールが開始されてから自動的に終了するまでの時間)Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻ったか否かを判定する(ステップS123)。
ステップS123において、表示制御部116は、ステップS121における画像の慣性スクロールが開始されたタイミングでリセットされて計時を開始するタイマ(図示せず)が示す時間が、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内であるか否かを判定する。
タイマが示す時間が慣性スクロールの時間Taと猶予時間Tbとを加算した時間内である場合、更に、表示制御部116は、フリック操作の最初の接触位置に対応する初期位置の画像が、当該初期位置のX座標上の位置に戻ったか否かを判定する。例えば、図11に示すように、タッチパネル式表示面132において、フリック操作の最初の接触位置AのX座標(Xa)を中心としてY軸方向に延在する所定範囲の帯状の領域(初期領域)214が設定される。
具体的には、表示制御部116は、慣性スクロールによる画像の移動量を示す画像移動ベクトルUを取得する。表示制御部116は、自身による慣性スクロールの表示制御に基づいて、画像移動ベクトルUを取得することができる。
更に、表示制御部116は、慣性スクロール終了後に、座標取得部112によって取得される接触位置座標に基づいて、慣性スクロール終了後の接触位置の変化を示す接触位置移動ベクトルVを取得する。ここで、慣性スクロールの終了とは、慣性スクロールが自動的に終了する場合と、慣性スクロール中にユーザがタッチパネル式表示面132に指等の接触させることによって慣性スクロールが強制的に終了する場合とがある。
そして、表示制御部116は、タッチパネル式表示面132におけるフリック操作の最初の接触位置(初期位置)を始点として画像移動ベクトルUと接触位置移動ベクトルVとを加算し、その加算結果のベクトルの終点が初期領域内であるか否かを判定する。加算結果のベクトルの終点が初期領域内であれば、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻ったことになる。
例えば、図11に示すように、フリック操作の最初の接触位置(初期位置)である位置Aの画像201が画像200の慣性スクロールによって位置Nに移動し、更に、慣性スクロール終了後のユーザによる接触操作によって位置Pに移動する場合を考える。この場合、表示制御部116は、フリック操作の最初の接触位置(初期位置)である位置Aを始点として画像移動ベクトルUと接触位置移動ベクトルV1とを加算することで、位置Pを終点とする加算結果のベクトルを取得する。加算結果のベクトルの終点である位置Pは、初期領域214内であるので、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻ったと判定される。
なお、接触位置移動ベクトルの取得においてユーザによる実際の接触位置は考慮する必要はない。例えば、図11における接触位置移動ベクトルV1とV2とは接触位置は異なるが、長さ及び方向が等しく、同一のベクトルである。従って、フリック操作の最初の接触位置(初期位置)である位置Aを始点として画像移動ベクトルUと接触位置移動ベクトルV2とを加算する場合も、位置Pを終点とする加算結果のベクトルが取得され、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻ったと判定される。
慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻った場合(ステップS123;YES)には、本来、ユーザはタッチパネル式表示面132のY軸方向に沿って画像を慣性スクロールさせたかったにも関わらず、表示制御部116が、ステップS121において軌跡ベクトルの方向へ画像を慣性スクロールさせたために、ユーザのフリックした方向に画像が忠実に移動してしまった、例えば、図11において、画像200が軌跡ベクトルの方向へ慣性スクロールして、画像201が位置Aから位置Nへ移動してしまったとみなすことができる。この場合には、速度閾値が高いためにステップS107において、ステップS111ではなく、ステップS121の処理が選択されてしまったことになるので、表示制御部116は、現在の速度閾値を減少させる(ステップS124)。減少後の新たな速度閾値はメモリ120に記憶される。なお、例えば、フリック操作の際の軌跡ベクトルが示す速度の履歴をメモリ120に記憶させておき、表示制御部116は、そのフリック操作の際の軌跡ベクトルが示す速度の履歴の平均値を速度閾値としてもよい。
一方、慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻っていない場合(ステップS123;NO)には、一連の動作が終了する。
一方、最後に取得した軌跡ベクトルにおけるY成分がX成分より大きくない場合(ステップS122;NO)、表示制御部116は、慣性スクロールの開始から、予め定められている慣性スクロールの時間(慣性スクロールが開始されてから自動的に終了するまでの時間)Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのY座標上に戻ったか否かを判定する(ステップS125)。
具体的な処理は、ステップS123と同様である。すなわち、ステップS125において、表示制御部116は、ステップS121における画像の慣性スクロールが開始されたタイミングでリセットされて計時を開始するタイマ(図示せず)が示す時間が、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内であるか否かを判定する。
タイマが示す時間が慣性スクロールの時間Taと猶予時間Tbとを加算した時間内である場合、更に、表示制御部116は、フリック操作の最初の接触位置に対応する初期位置の画像が、当該初期位置のY座標上の位置に戻ったか否かを判定する。
具体的には、表示制御部116は、慣性スクロールによる画像の移動量を示す画像移動ベクトルUを取得する。表示制御部116は、自身による慣性スクロールの表示制御に基づいて、画像移動ベクトルUを取得することができる。
更に、表示制御部116は、慣性スクロール終了後に、座標取得部112によって取得される接触位置座標に基づいて、慣性スクロール終了後の接触位置の変化を示す接触位置移動ベクトルVを取得する。ここで、慣性スクロールの終了とは、慣性スクロールが自動的に終了する場合と、慣性スクロール中にユーザがタッチパネル式表示面132に指等の接触させることによって慣性スクロールが強制的に終了する場合とがある。
そして、表示制御部116は、タッチパネル式表示面132におけるフリック操作の最初の接触位置(初期位置)を始点として画像移動ベクトルUと接触位置移動ベクトルVとを加算し、その加算結果のベクトルの終点が初期領域内であるか否かを判定する。加算結果のベクトルの終点が初期領域内であれば、接触位置座標Aに対応する画像が、接触位置座標AのY座標上に戻ったことになる。
慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻った場合(ステップS125;YES)には、本来、ユーザはタッチパネル式表示面132のX軸方向に沿って画像を慣性スクロールさせたかったにも関わらず、表示制御部116が、ステップS121において軌跡ベクトルの方向へ画像を慣性スクロールさせたために、ユーザのフリックした方向に画像が忠実に移動してしまったとみなすことができる。この場合には、速度閾値が高いためにステップS107において、ステップS111ではなく、ステップS121の処理が選択されてしまったことになるので、表示制御部116は、現在の速度閾値を減少させる(ステップS126)。減少後の新たな速度閾値はメモリ120に記憶される。なお、例えば、フリック操作の際の軌跡ベクトルが示す速度の履歴をメモリ120に記憶させておき、表示制御部116は、そのフリック操作の際の軌跡ベクトルが示す速度の履歴の平均値を速度閾値としてもよい。
一方、慣性スクロールの開始から、慣性スクロールの時間Taと猶予時間Tbとを加算した時間内において、接触位置座標Aに対応する画像が、接触位置座標AのX座標上に戻っていない場合(ステップS125;NO)には、一連の動作が終了する。
このように、タブレット端末100では、制御部110内の座標取得部112は、タッチパネル式表示面132からの当該タッチパネル式表示面132のX-Y座標系における接触位置座標を取得し、ベクトル取得部114は、接触位置座標の軌跡に対応する軌跡ベクトルを取得する。更に、表示制御部116は、ユーザがフリック操作をした場合には、最後に取得した軌跡ベクトルの速度が速度閾値以上であれば、最後に取得した軌跡ベクトルにおけるX成分及びY成分のうち、大きい方の成分の方向へ画像を慣性スクロールさせる表示制御を行う。
フリック操作は、指で弾く操作であるために、ぶれが生じやすく、必ずしもユーザが意図した方向への操作とはならず、その結果、ユーザが意図しない方向へ画像が移動してしまうことがあるが、フリック操作における最後に取得した軌跡ベクトルの速度が大きい場合には、ユーザが意図した垂直又は水平方向へのフリック操作を行っていないと見なして、最後に取得したベクトルにおけるX成分及びY成分のうち、大きい方の成分の方向へ画像を慣性スクロールさせる表示制御が行われることで、ユーザが意図した垂直又は垂直方向へ画像を移動させることができる。例えば、図8に示すように、画像200がY軸方向に慣性スクロールされて、画像201が位置Aから位置Lへ移動する。
また、図13に示すように、フリック操作をしたとしても、それが高速のフリック操作であった場合、X軸方向の移動を元に戻した上でY軸方向のみに慣性スクロールする。
一方、本来、ユーザが最後に取得した軌跡ベクトルの方向へ画像を慣性スクロールさせたかった(例えば、ユーザが画像の位置を微修正等している)にも関わらず、上述した最後に取得した軌跡ベクトルにおけるX成分及びY成分のうち、大きい方の成分の方向へ画像を慣性スクロールさせる表示制御が行われてしまう場合、例えば、図9に示すように、画像200がY軸方向に慣性スクロールされて、画像201が位置Aから位置Lへ移動してしまう可能性がある。この場合には、延長線領域に戻す操作を検出することで(図4のステップS114;YES)、ユーザの画像の位置を微修正等したかった意図を把握し、速度閾値を増加させることで、その後の操作ではユーザが意図した方向へ画像を移動(微修正等)させることができる。
また、表示制御部116は、ユーザがフリック操作をした場合であって、最後に取得した軌跡ベクトルの速度が速度閾値未満であれば、最後に取得した軌跡ベクトルの方向へ画像を慣性スクロールさせる表示制御を行う。フリック操作における最後に取得した軌跡ベクトルの速度が小さい場合には、ユーザが意図した方向へのフリック操作(微修正のための操作等)を行っていると見なして、最後に取得した軌跡ベクトルの方向へ画像を慣性スクロールさせる表示制御が行われることで、ユーザが意図した方向へ画像を移動(微修正等)させることができる(図10)。
一方、本来、ユーザがタッチパネル式表示面132のX軸方向又はY軸方向に沿って画像を慣性スクロールさせたかったにも関わらず、上述した最後に取得した軌跡ベクトルの方向へ画像を慣性スクロールさせる表示制御が行われてしまう可能性がある。この場合には、初期領域に戻す操作を検出する(図5のステップS123;YES、ステップS125;YES)ことで、ユーザの意図を把握し、速度閾値を減少させることで、その後の操作ではユーザが意図した方向へ画像を移動させることができる。
フリック操作やスワイプ操作には同じ操作でありながら2種類の意味がある。
一つはユーザが現在表示させている画像から別の画像を表示させるための操作である。
もう一つはユーザが現在表示させている画像から垂直(水平)方向の遠距離に存在する別の画像を表示させたくフリック操作をしたものの、ユーザが無意識のうちに斜め方向にフリックしてしまったことから、装置がユーザの垂直(水平)方向へ移動させたかったという意図に反して斜め方向に画像を移動させてしまい、その結果ユーザが表示して欲しかった画像が表示されなかったことから、装置が表示させた画像をユーザが意図していた位置へやむなくユーザが修正するための操作である。本願発明ではこの2種類の操作の違い(やむなくの有無)を見分けることができる。
なお、本発明は、上記実施形態の説明及び図面によって限定されるものではなく、上記実施形態及び図面に適宜変更等を加えることは可能である。
上述した実施形態では、タッチパネル式表示面132がユーザによる画像移動の操作を検出したが、ユーザによる画像移動の操作は接触操作に限定されず、その画像移動の操作に応じた検出手段が備えられていればよい。
また、上述した実施形態では、情報処理装置としてタブレット端末100が用いられる場合について説明したが、スマートフォンなどの携帯電話機、タブレット型パーソナルコンピュータ、ノート型パーソナルコンピュータ等のユーザによる画像移動の操作が可能な情報処理装置であれば、本発明を適用することができる。
また、例えば、コンピュータがプログラムを実行することで、タブレット端末100の機能を実現してもよい。また、タブレット端末100の機能を実現するためのプログラムは、CD-ROM(Compact Disc Read Only Memory)等の記憶媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。
100…タブレット端末、110…制御部、112…座標取得部、114…ベクトル取得部、116…表示制御部、120…メモリ、130…表示部、132…タッチパネル式表示面、140…操作ボタン、150…フリック操作による指の軌跡、152…フリック操作中の追従スクロールの軌跡、154…フリック操作後の慣性スクロールの軌跡

Claims (13)

  1. 画像を表示する表示手段と、
    入力座標を取得する入力座標取得手段と、
    前記入力座標取得手段により取得された入力座標の軌跡に対応するベクトルを取得するベクトル取得手段と、
    前記ベクトル取得手段により最後に取得されたベクトルが示す速度が第1の所定値以上となる第1の操作が行われた場合に、前記入力座標取得手段により最初に入力座標が取得されたときに前記表示手段に表示されている画像を、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち大きい成分の方向へ移動させる表示制御手段と、
    を備える情報処理装置。
  2. 前記表示制御手段は、前記方向への画像の移動開始から第1の所定時間内に、前記第1の操作において前記入力座標取得手段により最初に取得された入力座標である初期位置に対応する画像が、前記最初に取得されたベクトルの延長線を含む第1所定範囲へ移動した場合に、前記第1の所定値を増加させる請求項1に記載の情報処理装置。
  3. 前記表示制御手段は、前記最後に取得されたベクトルが示す速度が第1の所定値未満である場合に、前記表示手段に表示されている画像を、前記最後に取得されたベクトルが示す方向へ移動させる請求項1又は2に記載の情報処理装置。
  4. 前記表示制御手段は、前記最後に取得されたベクトルが示す方向への画像の移動開始から第2の所定時間内において、前記第1の操作において前記入力座標取得手段により最初に取得された入力座標である初期位置に対応する画像が、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち小さい成分の軸の初期位置を含む第2の所定範囲へ移動した場合に、前記第1の所定値を減少させる請求項3に記載の情報処理装置。
  5. 前記表示制御手段は、前記画像を、慣性スクロールにより移動させる請求項1~4の何れか1項に記載の情報処理装置。
  6. 前記入力座標取得手段は、ユーザの操作に対応する入力座標を取得する請求項1~5の何れか1項に記載の情報処理装置。
  7. 前記ユーザの操作は、フリック操作である請求項6に記載の情報処理装置。
  8. 画像を表示する表示手段と、
    フリック操作に対応する入力座標を取得する入力座標取得手段と、
    前記入力座標取得手段により取得された前記入力座標の軌跡に対応するベクトルを取得するベクトル取得手段と、
    最後に取得された前記ベクトルが所定値以上の速度であった場合、前記フリック操作の開始時点に表示されていた前記画像を該ベクトルのX軸成分とY軸成分とのうち大きい成分の方向に慣性スクロールさせる表示制御手段と、
    を備える情報処理装置。
  9. 前記表示制御手段は、前記慣性スクロールの開始から第1の所定時間以内に、前記慣性スクロールさせた画像を、最後に取得された前記ベクトルの延長線から所定の範囲以内に移動させるスクロール操作がされた場合、前記所定値を増加させる請求項8に記載の情報処理装置。
  10. 前記表示制御手段は、最後に算出された前記ベクトルが前記所定値未満の速度であって、かつ、該ベクトル方向への慣性スクロールの開始から第2の所定時間以内に、前記フリック操作の開始時点から前記慣性スクロールの終了時点までの前記画像の移動を示す移動ベクトルのX軸成分とY軸成分とのうち小さい成分の移動量を0に近づける画像スクロール操作がされた場合、前記所定値を減少させる請求項9に記載の情報処理装置。
  11. 画像を表示する表示ステップと、
    入力座標を取得する入力座標取得ステップと、
    前記入力座標取得ステップにおいて取得された入力座標の軌跡に対応するベクトルを取得するベクトル取得ステップと、
    前記ベクトル取得ステップにおいて最後に取得されたベクトルが示す速度が第1の所定値以上である場合に、表示されている画像を、前記最後に取得されたベクトルのX軸成分とY軸成分とのうち大きい成分の方向へ移動させる表示制御ステップと、
    を含む情報処理方法。
  12. 画像を表示する表示ステップと、
    フリック操作に対応する入力座標を取得する入力座標取得ステップと、
    前記入力座標取得ステップにより取得された前記入力座標の軌跡に対応するベクトルを取得するベクトル取得ステップと、
    最後に取得された前記ベクトルが所定値以上の速度であった場合、前記フリック操作の開始時点に表示されていた前記画像を該ベクトルのX軸成分とY軸成分とのうち大きい成分の方向に慣性スクロールさせる表示制御ステップと、
    を含む情報処理方法。
  13. コンピュータを、請求項1~10の何れか1項に記載の情報処理装置として機能させるためのプログラム。
PCT/JP2015/072590 2014-09-02 2015-08-09 情報処理装置、情報処理方法及び情報処理プログラム WO2016035512A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014178599A JP5790963B1 (ja) 2014-09-02 2014-09-02 情報処理装置、情報処理方法及び情報処理プログラム
JP2014-178599 2014-09-02

Publications (1)

Publication Number Publication Date
WO2016035512A1 true WO2016035512A1 (ja) 2016-03-10

Family

ID=54346132

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/072590 WO2016035512A1 (ja) 2014-09-02 2015-08-09 情報処理装置、情報処理方法及び情報処理プログラム

Country Status (2)

Country Link
JP (1) JP5790963B1 (ja)
WO (1) WO2016035512A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6967751B2 (ja) * 2018-01-19 2021-11-17 パナソニックIpマネジメント株式会社 入力装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080835A (ja) * 2003-06-25 2009-04-16 Nec Corp ポインティングデバイス制御システム、電子機器及びポインティングデバイス制御方法
JP2010182029A (ja) * 2009-02-04 2010-08-19 Zenrin Datacom Co Ltd 画像表示装置、画像表示方法、およびコンピュータプログラム
JP2013054467A (ja) * 2011-09-01 2013-03-21 Sony Computer Entertainment Inc 情報処理装置および情報処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044036A (ja) * 2003-07-24 2005-02-17 Ricoh Co Ltd スクロール制御方法、その方法をコンピュータに実行させるプログラム
JP5806799B2 (ja) * 2009-01-26 2015-11-10 任天堂株式会社 情報処理装置、情報処理プログラム、情報処理システムおよび情報処理方法
JP5553812B2 (ja) * 2011-10-26 2014-07-16 株式会社ソニー・コンピュータエンタテインメント スクロール制御装置、端末装置およびスクロール制御方法
JP5772802B2 (ja) * 2012-11-29 2015-09-02 コニカミノルタ株式会社 情報処理装置、情報処理装置の制御方法、及び情報処理装置の制御プログラム
JP5852592B2 (ja) * 2013-01-07 2016-02-03 株式会社東海理化電機製作所 タッチ操作型入力装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080835A (ja) * 2003-06-25 2009-04-16 Nec Corp ポインティングデバイス制御システム、電子機器及びポインティングデバイス制御方法
JP2010182029A (ja) * 2009-02-04 2010-08-19 Zenrin Datacom Co Ltd 画像表示装置、画像表示方法、およびコンピュータプログラム
JP2013054467A (ja) * 2011-09-01 2013-03-21 Sony Computer Entertainment Inc 情報処理装置および情報処理方法

Also Published As

Publication number Publication date
JP2016053770A (ja) 2016-04-14
JP5790963B1 (ja) 2015-10-07

Similar Documents

Publication Publication Date Title
JP5970086B2 (ja) タッチスクリーンホバリング入力処理
EP2631767B1 (en) Method, computer readable medium and portable apparatus for scrolling a screen in a touch screen display apparatus
US9658764B2 (en) Information processing apparatus and control method thereof
CN105359083B (zh) 对于用户在触摸设备上的边缘输入的动态管理
JP6272502B2 (ja) 携帯型デバイス上のユーザ操作モードを識別する方法及び携帯型デバイス
US20150268789A1 (en) Method for preventing accidentally triggering edge swipe gesture and gesture triggering
JP5999830B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法
US20130227464A1 (en) Screen change method of touch screen portable terminal and apparatus therefor
JP2013510348A (ja) デバイス動作による携帯機器ディスプレイのスクロール及びズーム
US11086496B2 (en) Approach for selecting a desired object on a small touch screen
US9389781B2 (en) Information processing apparatus, method for controlling same, and recording medium
CN108874284B (zh) 手势触发方法
US10318056B2 (en) Electronic apparatus and method for controlling the same
KR20150071130A (ko) 휴대단말기에서 스크롤을 제어하는 방법 및 장치
JP5628991B2 (ja) 表示装置、表示方法、及び表示プログラム
JP5835240B2 (ja) 情報処理装置、情報処理方法及びプログラム
US10599326B2 (en) Eye motion and touchscreen gestures
JP5790963B1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP2016053948A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
EP2750016A1 (en) Method of operating a graphical user interface and graphical user interface
US10481778B2 (en) Display device
JP6940172B2 (ja) 情報端末、表示制御方法、及びプログラム
WO2017197848A1 (zh) 一种图像浏览的方法和装置
KR20140070264A (ko) 터치 스크린 디스플레이 입력을 통한 객체 스크롤 방법 및 장치
JP7272832B2 (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: 15838149

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: 15838149

Country of ref document: EP

Kind code of ref document: A1