УСТРОЙСТВО ОБРАБОТКИ ИНФОРМАЦИИ, СПОСОБ УПРАВЛЕНИЯ ИМ И ЗАПОМИНАЮЩИЙ НОСИТЕЛЬ
DATA PROCESSING DEVICE, METHOD OF ITS CONTROL AND MEMORISING CARRIER

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к технологии для исправления ложных операций в устройстве, в отношении которого возможна операция многоточечного касания.
ОПИСАНИЕ ПРЕДШЕСТВУЮЩЕГО УРОВНЯ ТЕХНИКИ
В последнее время широко используются устройства сенсорного ввода, которые принимают, в ответ на касание пользователем экрана пальцем или пером, значения координат X, Y положения касания в качестве входных значений для выполнения различной обработки на основании входных значений.
Кроме того, в последнее время, развивается технология многоточечного касания, в которой операция выполняется посредством касания множества точек на экране. Обычно, в качестве операции многоточечного касания в отношении сенсорной панели, операция перемещения двух точек, где касается пользователь, ближе или дальше упоминается как «щипковая» операция. В числе операций, операция перемещения двух точек ближе названа операцией «щипкового стягивания» и, при этой операции, отображаемое изображение уменьшается. С другой стороны, операция перемещения двух точек дальше упоминается как операция «щипкового растягивания», а при этой операции, отображаемое изображение увеличивается.
В технологии, обсужденной в выложенной патентной заявке Японии № 2011-059952, когда по меньшей мере один из двух пальцев, касающихся экрана, перемещается, операция касания распознается согласно изменению расстояния между двумя пальцами, и изменяется коэффициент увеличения изображения и, одновременно, отображаемое изображение прокручивается согласно направлению перемещения пальца.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Настоящее изобретение относится к устройству обработки информации, в котором возможна операция многоточечного касания, допускающему сокращение ложных операций, выполняемых вопреки намерению пользователя на устройстве обработки информации.
Дополнительные признаки и аспекты настоящего изобретения станут очевидными из последующего подробного описания примерных вариантов осуществления со ссылкой на прилагаемые чертежи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Прилагаемые чертежи, которые включены в состав и составляют часть описания изобретения, иллюстрируют примерные варианты осуществления, признаки и аспекты изобретения и, вместе с описанием, служат для разъяснения принципов изобретения.
Фиг. 1A - структурная схема, иллюстрирующая примерную конфигурацию аппаратных средств устройства обработки информации. Фиг. 1B - структурная схема, иллюстрирующая примерную функциональную конфигурацию устройства обработки информации.
Фиг. 2 - блок-схема последовательности операций способа, иллюстрирующая процесс обработки, выполняемый устройством обработки информации для распознавания операции многоточечного касания.
Фиг. 3A - блок-схема последовательности операций способа, иллюстрирующая примерную обработку обнаружения касания, выполняемую устройством обработки информации. Фиг. 3B - блок-схема последовательности операций способа, иллюстрирующая примерную обработку вывода, выполняемую устройством обработки информации.
Фиг. 4A - схема, иллюстрирующая примерную операцию многоточечного перетаскивания, выполняемую пользователем. Фиг. 4B - схема, иллюстрирующая примерное распределение точек касания, обнаруживаемых, когда пользователь выполняет операцию многоточечного перетаскивания.
Фиг. 5A-5F - таблицы, иллюстрирующие примеры информации, хранимой для обнаруженных точек касания.
Фиг. 6 - блок-схема последовательности операций способа, иллюстрирующая процесс для распознавания операции многоточечного касания посредством устройства обработки информации.
Фиг. 7A - схема, иллюстрирующая примерное распределение точек касания, обнаруживаемых, когда пользователь выполняет щипковую операцию. Фиг. 7B-7E - таблицы, иллюстрирующие примеры информации, хранимой для обнаруженных точек касания.
Фиг. 8 - структурная схема, иллюстрирующая примерную функциональную конфигурацию устройства обработки информации.
Фиг. 9 - блок-схема последовательности операций способа, иллюстрирующая процесс для распознавания операции многоточечного касания посредством устройства обработки информации.
Фиг. 10 - блок-схема последовательности операций способа, иллюстрирующая примерный процесс обработки формирования вектора перемещения, выполняемой устройством обработки информации.
Фиг. 11A-11F - схемы, иллюстрирующие примерные распределения точек касания, обнаруживаемых, когда пользователь выполняет операции касания.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Различные примерные варианты осуществления, признаки и аспекты изобретения будут подробно описаны ниже со ссылкой на чертежи.
Примерные варианты осуществления, описанные ниже, являются всего лишь примерами и не ограничены этим.
В первом примерном варианте осуществления, предполагается состояние многоточечного касания. В состоянии многоточечного касания, пользователь касается двух точек в некоторый момент времени. Описан пример, в котором суть операции, выполняемой пользователем в отношении устройства 100 обработки информации, определяется в ответ на завершение обновления информации о положении обеих двух точек, для того чтобы распознавать операцию многоточечного касания, отвечающую намерению пользователя.
Описан случай в качестве примерной операции многоточечного касания, где пользователь намеревается перемещать две точки касания в одном и том же направлении наряду с сохранением расстояния между ними (ниже упоминается как операция «многоточечного перетаскивания»).
До сих пор, для того чтобы распознавать операцию многоточечного касания, информация о точке касания, обнаруженной сенсорной панелью, сообщается одна за другой, и обработка выполняется на основании информации о положении, полученной для каждой точки. Соответственно, между двумя точками касания, перемещаемыми пользователем для выполнения операции многоточечного перетаскивания, в момент времени, когда получено положение после того, как перемещается первая точка, хранится положение второй точки касания до перемещения. Как результат, определяется, что «расстояние между двумя точками» увеличивается на расстояние, соответствующее величине перемещения пальца пользователя.
Затем, в момент времени, когда получается положение второй точки после перемещения, расстояние между двумя точкам возвращается к расстоянию до перемещения. Как результат, определяется, что «расстояние между двумя точками» уменьшается.
Поэтому, когда пользователь намеревается выполнить операцию многоточечного перетаскивания, щипковое растягивание и щипковое стягивание сообщаются поочередно на основании описанных выше результатов определения. Как результат, неестественное отображение, в котором отображаемое изображение поочередно увеличивается и уменьшается, выполняется на устройстве вопреки намерению пользователя.
В противоположность, в настоящем примерном варианте осуществления, получается информация о положении множества точек касания, конфигурирующих операцию многоточечного касания, и, в ответ на завершение обновления информации о положении всех полученных точек касания, определяется содержание операции выполняемой пользователем.
Фиг. 1A - схема, иллюстрирующая примерную конфигурацию аппаратных средств устройства 100 обработки информации согласно настоящему примерному варианту осуществления. Центральный процессорный блок 101 (ЦПУ, CPU) выполняет расчеты и логические определения для различных видов обработки и управляет каждым компонентом, присоединенным к системной шине 110.
Устройство 100 обработки информации снабжено памятью, включающей в себя память программ и память данных. Постоянное запоминающее устройство 102 (ПЗУ, ROM) является памятью программ, чтобы хранить программы для управления различными видами процедур обработки посредством ЦПУ 101, описанного ниже. Оперативное запоминающее устройство 103 (ОЗУ) включает в себя рабочую область под вышеописанные программы для ЦПУ 101, область сохранения данных для обработки ошибок и область загрузки для вышеописанной управляющей программы. Память программ может быть реализована посредством загрузки программ из внешнего запоминающего устройства 109 в ОЗУ 103.
Жесткий диск 104 (HD) хранит данные и программы согласно настоящему примерному варианту осуществления. В настоящем примерном варианте осуществления, HD 104 хранит множество данных изображения. Внешнее запоминающее устройство 109, присоединенное к нему через интерфейс 107 (I/F) ввода/вывода, может использоваться вместо HD 104.
Внешнее запоминающее устройство 109, например, может быть сконфигурировано носителем (носителем записи) и внешним приводом накопителя для осуществления доступа к носителю. Такой носитель, например, включает в себя гибкий диск (FD), ПЗУ на компакт-диске, цифровой многофункциональный диск (DVD), память с универсальной последовательной шиной, магнитооптический диск и флэш-память.
Кроме того, внешнее запоминающее устройство 109 может быть серверным устройством, присоединенным через сеть. В настоящем примерном варианте осуществления, необходимая информация хранится в ОЗУ 103, на HD 104 и внешнем запоминающем устройстве 109.
Интерфейс 105 (I/F) ввода управляет устройством ввода, таким как координатно-указательное устройство, для получения сигнала, веденного устройством ввода. I/F 106 вывода выводит сигнал управления для управления выводом результата различных видов обработки, описанной ниже, в устройство вывода, в том числе, блок отображения, такой как жидкокристаллический дисплей и телевизионный монитор.
В настоящем примерном варианте осуществления, сенсорный дисплей 108, встроенный в устройство 100 обработки информации, включает в себя сенсорную панель (устройство ввода) и устройство отображения (устройство вывода). Однако, может использоваться внешнее устройство, присоединенное к устройству 100 обработки информации, и могут использоваться независимые устройства также.
С сенсорной панели в качестве устройства ввода согласно настоящему примерному варианту осуществления, сигнал, указывающий обнаружение точки, подвергнутой касанию или снятию касания пользователем, сообщается в устройство 100 обработки информации в качестве события касания. В то время, I/F 105 ввода получает событие касания, последовательно обнаруживаемое одно за другим, сканированием области обнаружения касания.
В настоящем примерном варианте осуществления, используется сенсорная панель типа с емкостным обнаружением, и координаты точки задаются в качестве точки касания в области контакта между пользователем и поверхностью панели для сообщения события касания. Однако, тип сенсорной панели не ограничен типом с емкостным обнаружением.
Фиг. 1B - функциональная структурная схема, иллюстрирующая функциональную конфигурацию устройства 100 обработки информации согласно настоящему примерному варианту осуществления. Устройство 100 обработки информации включает в себя блок 111 обнаружения, первый блок 112 сбора данных, блок 114 определения, второй блок 115 сбора данных, блок 116 принятия решения и блок 118 управления отображением.
Эти функциональные блоки реализованы посредством ЦПУ 101, загружающим и выполняющим программу, хранимую в ПЗУ 102, в ОЗУ 103. Кроме того, в настоящем примерном варианте осуществления, блок 113 хранения сконфигурирован ОЗУ 103, а запоминающий блок 119 является функциональным блоком HD 104. Ниже, будет описан каждый компонент.
Блок 111 обнаружения последовательно выявляет информацию о событии касания, сообщенном с сенсорного дисплея 108 одно за другим и анализирует ее.
Первый блок 112 сбора данных получает информацию о точках касания, обнаруженных блоком 111 обнаружения. Затем, информация, указывающая положение точки касания, и время, когда обнаружено касания (время обнаружения), ассоциативно связывается с ID точки касания, а затем, сохраняется в блоке 113 хранения для каждой точки касания. С использованием ID, может идентифицироваться одна и та же точка касания.
Поэтому, первый блок 112 сбора данных обновляет информацию, хранимую блоком 113 хранения, каждый раз, когда первый блок 112 сбора данных получает информацию о точке касания с тем же самым ID. Посредством ассоциативного связывания порядка обнаружения точек касания с ID, становится более легким управление, когда обнаружено множество точек касания.
Блок 114 определения обращается к информации, хранимой в блоке 113 хранения, чтобы определять, была ли обновлена информация о положении всех обнаруженных точек касания.
Второй блок 115 сбора данных, на основании информации, полученной первым блоком 112 сбора данных, рассчитывает расстояние между точками касания и измененной величиной расстояния между ними до и после того, как обновлены положения точек касания, и его абсолютное значение.
Более точно, второй блок 115 сбора данных рассчитывает кратчайшее расстояние на основании координат двух точек касания, полученных первым блоком 112 сбора данных, и сохраняет его. Затем, второй блок 115 сбора данных выполняет операцию сравнения между расстоянием двух точек, рассчитанных вновь после обновления точек касания, и хранимым расстоянием для получения измененной величины расстояния и абсолютного ее значения.
Блок 116 принятия решения получает абсолютное значение измененной величины расстояния между двумя точками, полученными вторым блоком 115 сбора данных, чтобы сравнивать его с предопределенным пороговым значением. В настоящем примерном варианте осуществления, если полученная измененная величина является равной или большей, чем предопределенное пороговое значение, блок 116 принятия решения решает, что операция, выполненная пользователем, является щипковой операцией (первой операцией). С другой стороны, если полученная измененная величина является меньшей, чем предопределенное пороговое значение, блок 116 принятия решения решает, что операция, выполняемая пользователем, является операцией многоточечного перетаскивания (второй операцией).
Если блок 116 принятия решения решает, что вводится щипковая операция, блок 117 щипкового управления определяет, начата ли операция щипкового растягивания или щипкового стягивания, на основании измененной величины, полученной вторым блоком 115 сбора данных.
Блок 118 управления отображением получает информацию, обработанную блоком 116 принятия решения, и формирует изображение на экране дисплея для отображения на устройстве вывода, которое является сенсорным дисплее в настоящем примерном варианте осуществления. На дисплее, до того, как операция многоточечного касания выполнена пользователем, отображается по меньшей мере одно из множества данных изображения, хранимых в запоминающем блоке 119.
Если блок 116 принятия решения решает, что операция ввода является щипковой операцией, блок 116 принятия решения получает параметр из блока 117 щипкового управления и формирует изображение на экране дисплея, которое создано увеличением или уменьшением изображения, отображенного до того, как пользователь выполняет операцию. С другой стороны, если блок 116 принятия решения решает, что операция ввода является операцией многоточечного перетаскивания, в настоящем примерном варианте осуществления, на основании направления, в котором перемещается точка касания, блок 116 принятия решения формирует изображение на экране дисплея для отображения специфичного изображения из числа множества данных изображения, хранимых в запоминающем блоке 119.
Фиг. 2 - блок-схема последовательности операций способа, иллюстрирующая процесс для распознавания операции многоточечного касания устройством 100 обработки информации согласно настоящему примерному варианту осуществления.
Устройство 100 обработки информации согласно настоящему примерному варианту осуществления начинает обработку для распознавания операции многоточечного касания в ответ на отображение по меньшей мере одних данных изображения, хранимых в запоминающем блоке 119, на сенсорном дисплее 108.
Прежде всего, на этапе S201, получается точка касания. В настоящем примерном варианте осуществления, блок 111 обнаружения получает событие касания одно за другим, обнаруживаемое сканированием области 401 ввода сенсорной панели, и анализирует его.
Затем первый блок 112 сбора данных сохраняет в блоке 113 хранения информацию о точках касания, обнаруженных в области 401 ввода, для каждой точки касания. В настоящем примерном варианте осуществления, ID точки касания, информация, указывающая информацию о положении, выраженную координатами, и время получения сохраняются в блоке 113 хранения. Подробности обработки, выполняемой на этапе 201, будут описаны ниже.
На этапе S202 блок 114 определения определяет, обнаружено ли множество точек касания в области 401 ввода. В настоящем примерном варианте осуществления, поскольку каждая точка касания идентифицирована посредством ID, количество точек касания получается посредством обращения к количеству ID из числа фрагментов информации, хранимых в блоке 113 хранения.
В настоящем примерном варианте осуществления, устройство 100 обработки информации определяет, является ли операция многоточечного касания, полученная посредством использования двух точек касания, операцией многоточечного перетаскивания или щипковой операцией. Поэтому, описание будет приведено ниже при условии, что в области 401 ввода, обнаруживаются вплоть до двух точек касания.
Если определено, что обнаружены две или более точек касания (Да на этапе S202), обработка переходит на этап S203. С другой стороны, если определено, что две или более точек касания не обнаружены (Нет на этапе S202), обработка заканчивается.
На этапе S203 блок 114 определения определяет, обновлена ли информация о положении всех точек касания, чья информация хранится в блоке 113 хранения. В настоящем примерном варианте осуществления, на этапе S201 первый блок 112 сбора данных устанавливает флаг обновления, когда обновлена информация о точках касания, а на этапе S203 блок 114 определения выполняет определение на основании количества флагов обновления.
Результат первой обработки на этапе S203 всегда определен в качестве «Да». Если информация о положении всех точек касания определена как обновленная (Да на этапе S203), флаг обновления сбрасывается, и обработка переходит на этап S204. Если информация о положении всех точек касания определена как не обновленная (Нет на этапе S203), обработка заканчивается.
В дополнение, способ для определения, обновлены ли точки касания, не ограничен этим, и могут использоваться другие способы. Например, блок 114 определения может обращаться к времени обнаружения каждой точки касания, хранимой в блоке 113 хранения, и выполнять определение на основании того, обновлена ли информация всех точек касания, которые обнаружены после момента времени, когда обработка на этапе S203 определена имеющей значение «Да» в последний раз.
Как описано выше, в настоящем примерном варианте осуществления, самая последняя информация о положении всех точек касания задана посредством того обстоятельства, что обновляется информация о положении всех хранимых точек касания.
На этапе S204 блок 116 принятия решения решает, перемещена ли по меньшей мере одна точка касания. В настоящем примерном варианте осуществления, на этапе S201, когда получена новая информация о положении точки касания, имеющей такой же ID, как уже обнаруженный ID, флаг перемещения устанавливается и хранится в блоке 113 хранения.
Поэтому на этапе S204 блок 116 принятия решения может решать, перемещена ли точка касания, проверяя флаг перемещения в блоке 113 хранения. Если определено, что по меньшей мере одна точка касания перемещена (Да на этапе S204), флаг перемещения сбрасывается, и обработка переходит на этап S206. Если определено, что ни одна точка касания не перемещена (Нет на этапе S204), обработка переходит на этап S205.
В дополнение, способ для принятия решения, перемещается ли точка касания, не ограничен этим. Например, информация о положении до обновления сохраняется, когда обновляется информация блока 113 хранения, и блок 116 принятия решения может решать, перемещена ли точка касания, на основании того, является ли расстояние между информацией о положении до и после обновления большим, чем предопределенное расстояние.
На этапе S205 второй блок 115 сбора данных получает расстояние между двумя точками касания. Второй блок 115 сбора данных рассчитывает кратчайшее расстояние между двумя точками касания на основании информации, полученной первым блоком 112 сбора данных, и сохраняет ее.
С другой стороны, на этапе S206 второй блок 115 сбора данных получает измененную величину расстояния между двумя точками касания, обнаруженными в области 401 ввода. Второй блок 115 сбора данных рассчитывает кратчайшее расстояние между двумя точками касания на основании информации, полученной первым блоком 112 сбора данных, и сохраняет ее.
Затем вновь рассчитанное расстояние между двумя точками после обновления и расстояние между двумя точками, рассчитанное и сохраненное в последний раз на этапе S205 или этапе S206, сравниваются для получения измененной величины и абсолютного значения расстояния.
Затем на этапе S207 блок 116 принятия решения решает, является ли абсолютное значение измененной величины расстояния между двумя точками, полученное вторым блоком 115 сбора данных, меньшим, чем пороговое значение «a».
Здесь «a» является пороговым значением для расстояния, зарегистрированным заблаговременно в устройстве 100 обработки информации. Пороговое значение «a» устанавливается на основании измененной величины расстояния между двумя точками, требуемого, чтобы устройством 100 обработки информации распознавалось, что расстояние двух точек, подвергнутых касанию пользователем, расширено для щипковой операции или сужено.
Если определено, что измененная величина (абсолютное значение) является меньшей, чем пороговое значение «a» (Да на этапе S207), блок 116 принятия решения решает, что операция, введенная пользователем, является операцией многоточечного перетаскивания, и обработка переходит на этап S208. Если определено, что измененная величина (абсолютное значение) является равной или большей, чем пороговое значение «a» (Нет на этапе S207), блок 116 принятия решения решает, что операция, введенная пользователем, является щипковой операцией, и обработка переходит на этап S210.
На этапе S208 блок 116 принятия решения сообщает в блок 118 управления отображением, что введена операция многоточечного перетаскивания. На этапе S209 выполняется обработка, соответствующая операции многоточечного перетаскивания. В настоящем примерном варианте осуществления, выполняется обработка для отображения на сенсорном дисплее специфичных данных изображения из числа данных, хранимых в запоминающем блоке 119. Его подробности описаны ниже.
С другой стороны, на этапе S210 блок 117 щипкового управления определяет, начата ли входная операция щипкового растягивания или щипкового стягивания. В настоящем примерном варианте осуществления блок 117 щипкового управления определяет, расширяется или сужается расстояние между двумя точками касания, на основании измененной величины между двумя точками, полученной вторым блоком 115 сбора данных.
Затем подсчитывается количество раз выполнения расширения или сужения расстояния между двумя точками. На этапе S210, если количество непрерывно подсчитанных раз расширения расстояния между двумя точками касания равно двум или более, то определяется, что начата операция щипкового растягивания.
Если количество непрерывно подсчитанных раз сужения расстояния между двумя точками касания равно двум или более, то определяется, что начата операция щипкового стягивания. С другой стороны, если количество непрерывно подсчитанных раз растяжения или сужения расстояния между двумя точками касания равно одному, то не определяется, является ли это операцией щипкового растягивания или щипкового стягивания. В этом случае, определяется, что щипковая операция не начата.
Эта обработка выполняется для предотвращения ложных операций, даже когда возникает ошибка, при которой на этапе S207 ошибочно определяется, что измененная величина расстояния двух точек (абсолютное значение) является пороговым значением «a» или большим, вызванная состояниями сенсорной панели и пальцев пользователя. Таким образом, надежно отражается намерение пользователя выполнить щипковую операцию.
Если определено, что начата операция щипкового растягивания или щипкового стягивания (Да на этапе S210), обработка переходит на этап S211. С другой стороны, если определяется, что не выполняется ни операция щипкового растягивания, ни операция щипкового стягивания (Нет на этапе S210), обработка заканчивается.
На этапе S211 блок 117 щипкового управления сообщает в блок 118 управления отображением, что введена операция щипкового растягивания или щипкового стягивания. На этапе S212 блок 118 управления отображением выводит результат, вызванный вводом операции щипкового растягивания или щипкового стягивания.
В настоящем примерном варианте осуществления, когда вводится операция щипкового растягивания, выполняется обработка для отображения для увеличенного изображения на экране дисплея в дисплее согласно расстоянию, на которое пользователь перемещает точки касания. Кроме того, когда введена операция щипкового стягивания, выполняется обработка для отображения уменьшенного изображения на экране дисплея в дисплее согласно расстоянию, на которое пользователь перемещает точки касания.
Как описано выше, обработка для распознавания операции многоточечного касания выполняется устройством 100 обработки информации. После того, как последовательность обработки завершена, обработка возвращается на этап S201, и каждый раз, когда сообщено новое событие касания, выполняется описанная выше обработка.
Фиг. 3A - блок-схема последовательности операций способа, иллюстрирующая процесс обработки обнаружения точки касания, выполняемой на этапе S201.
На этапе S301, блок 111 обнаружения определяет, является ли событие касания, сообщенное из сенсорной панели, значением «КАСАНИЕ» («TOUCH»).
Из сенсорной панели, используемой в настоящем примерном варианте осуществления, «КАСАНИЕ» выводится в качестве события касания, когда область 401 ввода сканируется для обнаружения, что она подвергнута касанию. Когда выявленное касание отпускается, «ОТПУСКАНИЕ» («RELEASE») сообщается в качестве события касания.
Если сообщенное событие касания определено как имеющее значение «КАСАНИЕ» (Да на этапе S301), обработка переходит на этап S303. Если сообщенное событие касания не имеет значение «КАСАНИЕ» (то есть «ОТПУСКАНИЕ») (Нет на этапе S301), обработка переходит на этап S302.
На этапе S302 первый блок 112 сбора данных удаляет информацию, ассоциированную с ID, соответствующим точке касания, в которой обнаружено «ОТПУСКАНИЕ», из информации, хранимой в блоке 113 хранения, вместе с ID.
С другой стороны, на этапе S303 блок 111 обнаружения определяет, была ли обнаружена точка касания с тем же самым ID, что и точка касания, в которой обнаружено «КАСАНИЕ». Блок 111 обнаружения обращается к информации, хранимой в блоке 113 хранения, и определяет, включен ли в нее соответствующий ID.
Если определено, что точка касания с тем же самым ID уже была обнаружена (Да на этапе S303), обработка переходит на этап S305. С другой стороны, если определено, что точка касания с тем же самым ID не была обнаружена (Нет на этапе S303), обработка переходит на этап S304.
На этапе S304 первый блок 112 сбора данных вновь добавляет информацию, такую как ID точки касания, в которой обнаружено «КАСАНИЕ», координаты и время, в информацию, хранимую в блоке 113 хранения. Блок 113 хранения сохраняет информацию, указывающую, что точка касания обновлена. Например, устанавливается флаг обновления.
На этапе S305 обновляется информация о координатах с тем же ID, что и точка касания, где обнаружено «КАСАНИЕ», и время обнаружения, из информации, хранимой в блоке 113 хранения. Блок 113 хранения сохраняет информацию, указывающую, что точка касания обновлена. Например, устанавливается флаг обновления.
Кроме того, когда полученная информация о положении перемещается из положения точки касания с тем же самым ID до обновления на определенное расстояние или большее, сохраняется информация, указывающая, что точка касания перемещена. Например, устанавливается флаг перемещения.
В таком случае обработка переходит к основной обработке (фиг. 2), при которой распознается операция многоточечного касания. В настоящем примерном варианте осуществления, предопределенное расстояние устанавливается заблаговременно на основании кратчайшего расстояния, на которой необходимо переместиться точке касания, для выполнения операции касания пользователем.
Чтобы различать множество операций, может быть установлено множество ступенчатых пороговых значений. В настоящем примерном варианте осуществления, когда обнаружено перемещение в пределах предопределенного расстояния, точка касания обрабатывается как неперемещенная, то есть остановленная.
В настоящем примерном варианте осуществления, сенсорная панель, которая сообщает «КАСАНИЕ» в качестве события касания, когда область 401 ввода сканируется, и обнаруживается касание, и сообщает «ОТПУСКАНИЕ» в качестве события касания, когда обнаруженная точка касания отпускается. Однако данный вариант осуществления не ограничен этим.
Например, «НАЛОЖЕНИЕ КАСАНИЯ» («TOUCH_DOWN») «ПЕРЕМЕЩЕНИЕ» («MOVE») и «СНЯТИЕ КАСАНИЯ» («TOUCH_UP») сообщаются в качестве событий касания, соответственно, когда область 401 ввода подвергается касанию вновь, когда обнаружено перемещение точки касания с уже обнаруженным ID, и когда точка касания отпускается.
В этом случае, когда сообщается «НАЛОЖЕНИЕ КАСАНИЯ», информация, хранимая в блоке 113 хранения, вновь дополняется, и устанавливается флаг обновления. Когда сообщается «ПЕРЕМЕЩЕНИЕ», информация с тем же самым ID обновляется, и устанавливается флаг перемещения. Кроме того, если сообщено «СНЯТИЕ КАСАНИЯ», информация с тем же самым ID может удаляться.
Таким образом, устройство 100 обработки информации идентифицирует две или более точек касания, обнаруженных сенсорной панелью, то есть устройством ввода, с использованием ID и управляет информацией. Как результат, может обнаруживаться перемещение каждой из множества точек касания. Поэтому может распознаваться операция многоточечного касания, сконфигурированная в таких точках касания.
Фиг. 3B - блок-схема последовательности операций способа, иллюстрирующая процесс обработки вывода результата операции многоточечного перетаскивания, выполняемой на этапе S209. Выполняется примерное действие, требуемое операцией многоточечного перетаскивания, в настоящем примерном варианте осуществления, обработка для отображения специфичных данных изображения на сенсорном дисплее из числа данных изображения, хранимых в запоминающем блоке 119. Множество данных изображения, хранимых в запоминающем блоке 119, хранится в предопределенном порядке.
В настоящем примерном варианте осуществления, если направлением многоточечного перетаскивания является левое, отображается изображение, хранимое через десять листов после данных изображения, отображенных до операции пользователя. Если направление многоточечного перетаскивания является правым, отображается изображение, хранимое за десять листов до данных изображения, отображенных до операции пользователя.
На этапе S311 блок 118 управления отображением получает направление многоточечного перетаскивания, выполняемое пользователем. В настоящем примерном варианте осуществления, блок 118 управления отображением обнаруживает для по меньшей мере одной из точек касания, полученных первым блоком 112 сбора данных, является ли направление, в котором пользователь перемещает свой палец по координате X информации о положении до и после обновления, отрицательным направлением или положительным направлением оси X.
На этапе S312 блок 118 управления отображением задает данные изображения, которые должны отображаться на дисплее, на основании информации, указывающей направление, полученное на этапе S311. В настоящем примерном варианте осуществления, если полученное направление является отрицательным направлением оси X, из множества данных изображения, хранимых в запоминающем блоке 119, задаются данные изображения, соответствующие данным изображения через десять листов после данных отображения, отображенных до операции пользователя.
Подобным образом, если полученное направление является положительным направлением оси X, из множества данных изображения, хранимых в запоминающем блоке 119, задаются данные изображения, соответствующие данным изображения за десять листов до данных отображения, отображенных до операции пользователя.
На этапе S313 блок 118 управления отображением формирует изображение на экране дисплея для отображения заданных данных изображения. Затем на этапе S314 блок 118 управления отображением выводит сформированное изображение на экране дисплея на сенсорный дисплей 108 (устройство вывода). Затем обработка заканчивается, чтобы вернуться к основной обработке (то есть блок-схеме последовательности операций способа на фиг. 2) для распознавания операции многоточечного касания.
В дополнение, когда выполняется вывод изображения на экране дисплея на этапе S314, обработка может выполняться в ответ на отпускание точки касания пользователем. В таком случае после этапа S313 выполняется обработка обнаружения точки касания на фиг. 3A, и обработка переходит на этап S314 на основании завершения обработки удаления информации о точках касания на этапе S302 из блока 113 хранения для всех точек касания.
Таким образом, пользователь может назначать временные характеристики для отображения специфичного изображения для устройства 100 обработки информации посредством операции отпускания пальцев, используемых для ввода операции многоточечного перетаскивания от сенсорной панели.
Действие, запрошенное операцией многоточечного перетаскивания, не ограничено примером, описанным выше. Например, способ для конкретизации данных изображения, которые должны отображаться, не ограничен десятью листами после или десятью листами до и может быть произвольно установленным набором. Кроме того, относительно операции многоточечного перетаскивания в направлении оси Y, может задаваться определенная операция устройства 100 обработки информации.
Однако, вообще, продвижение изображения выполняется в многих случаях, соответствующих операции для перемещения отображенного изображения в направлении X посредством перетаскивания, чтобы отображать другие изображения, хранимые до и после изображения. Поэтому операция для отображения конкретного изображения посредством продвижения большего количества изображений сразу перемещением отображаемых изображений в направлении оси X с использованием многоточечного перетаскивания множеством пальцев интуитивно понятна и удобна для пользователей.
Пример 1 работы устройства 100 обработки информации согласно первому примерному варианту осуществления по отношению к пользователю подробно описан.
Фиг. 4A - схема, иллюстрирующая работу устройства 100 обработки информации согласно настоящему примерному варианту осуществления. Фиг. 4A иллюстрирует состояние, где пользователь вводит операцию в области 401 ввода устройства 100 обработки информации. Область 401 ввода сконфигурирована из сенсорного дисплея, включающего в себя сенсорную панель на дисплее. Область 401 ввода может выявлять касание пользователя на сенсорной панели.
В настоящем примерном варианте осуществления вся область 401 ввода используется в качестве координатной плоскости с точкой начала координат в ее нижнем левом положении, и сенсорная панель выявляет координаты положения, подвергнутого касанию пользователем. В настоящем примерном варианте осуществления, в качестве конкретного примера работы, операция многоточечного перетаскивания вводится посредством осуществления контакта пальцев 402 и 403 с областью 401 ввода и перемещения пальцев 402 и 403 в горизонтальном направлении.
Фиг. 4B - схема, иллюстрирующая примерное смещение положений точек касания, получаемое устройством 100 обработки информации, когда пользователь выполняет операцию многоточечного перетаскивания, как проиллюстрировано на фиг. 4A. Точки с A по F касания иллюстрируют координаты положений, подвергнутых касанию пальцами пользователя в области 401 ввода. Горизонтальное направление установлено, чтобы быть осью X, а вертикальное направление установлено осью Y.
Сначала пальцы 402 и 403 касаются положений, соответствующих точкам A и B в области 401 ввода. Левый палец 402 касается положения, соответствующего точки A касания, а правый палец 403 касается положения, соответствующего точке B касания.
Затем пользователь перемещает два пальца горизонтально. Положения касания после перемещения двух пальцев соответствуют точке C касания и точке D касания. Левый палец 402 касается положения, соответствующего точки C касания, а правый палец 403 касается положения, соответствующего точке D касания.
Далее пользователь перемещает два пальца горизонтально. Положения касания после перемещения двух пальцев являются точками E и F. Левый палец 402 касается положения, соответствующего точки E касания, а правый палец 403 касается положения, соответствующего точке F касания. Ниже, согласно последовательности операций, будет описана работа устройства 100 обработки информации согласно первому примерному варианту осуществления.
В примере 1 работы область 401 ввода сенсорной панели сканируется каждые 20 мс, и обнаруживаемые один за другим события касания сообщаются в блок 111 обнаружения. В дополнение, пороговое значение «a» заблаговременно установлено, чтобы иметь значение 10 точек разрешения.
Сначала начинается сканирование области 401 ввода в состоянии, где пользователь касается области 401 ввода, и событие касания точки A касания сообщается с сенсорной панели. На этапе S201 блок 111 обнаружения устройства 100 обработки информации обнаруживает, что точка A касания вновь подвергнута касанию. Затем первый блок 112 сбора данных получает информацию, что ID имеет значение 1, координатами положения являются (100, 50), и время обнаружения имеет значение 0 мс, для их сохранения в блоке 113 хранения.
Фиг. 5A - таблица, иллюстрирующая пример информации, хранимой в блоке 113 хранения. На этапе S202 блок 114 определения обращается к информации, хранимой в блоке 113 хранения, чтобы определить, обнаружены ли две или более точек касания в области 401 ввода, на основании количества ID. В этот момент времени, как проиллюстрировано на фиг. 5A, обнаружена только точка касания с ID 1, а не две или более точек касания (Нет на этапе S202), а потому, обработка заканчивается.
Затем от сенсорной панели сообщается событие касания точки B касания. В устройстве 100 обработки информации на этапе S201 подобным образом первый блок 112 сбора данных получает информацию, что ID имеет значение 2, координаты положения имеют значение (110, 40), а время обнаружения имеет значение 5 мс. При этом таблица, хранимая в блоке 113 хранения, обновляется, как проиллюстрировано на фиг. 5B.
На этапе S202 блок 114 определения определяет, что количество точек касания имеет значение два или более (Да на этапе S202). На этапе S203 блок 114 определения определяет, что информация обо всех обнаруженных точках касания обновлена (Да на этапе S203), так как обработка выполняется в первый раз. На этапе S204 блок 116 принятия решения решает, что по меньшей мере одна точка касания не перемещена (Нет на этапе S204). Затем на этапе S205 расстояние B на фиг. 4B рассчитывается на основании координат положения соответственных двух точек касания. Расстояние B является кратчайшим среди других расстояний между соответственными двумя точками.
В настоящем примерном варианте осуществления на основании координат точки A (100, 50) касания и точки B (110, 40) касания расстояние между двумя точками имеет значение 14 точек разрешения. Второй блок 115 сбора данных сохраняет 14 точек разрешения в ОЗУ 103 в качестве расстояния между двумя точками в начальный момент обнаружения. Затем обработка заканчивается.
Затем область 401 ввода сканируется каждые 20 мс, событие касания точки C касания сообщается из сенсорной панели. На этапе S201 первый блок 112 сбора данных устройства 100 обработки информации получает информацию, что ID имеет значение 1, координатами положения являются значения (200, 50), и время обнаружения имеет значение 20 мс, и информация, хранимая в блоке 113 хранения обновляется, как проиллюстрировано на фиг. 5C. При этом ID точки C касания имеет значение 1, идентично таковому у точки A касания, поэтому обновляется информация, ассоциированная с таковой для ID 1.
Кроме того, координаты положения отличны от обнаруженных в последний раз, устанавливается флаг перемещения. На этапе S202 количество точек касания определяется имеющим значение двух или более. На этапе S203, поскольку информация точки касания с ID 1 обновлена, но точки касания с ID 2 не обновлена, блок 114 определения определяет, что обновлена информация не всех точек касания (Нет на этапе S203), обработка заканчивается.
Затем событие касания точки D касания сообщается с сенсорной панели. На этапе S201 устройство 100 обработки информации, подобным образом, получает информацию, что ID имеет значение 2, координатами положения являются значения (210, 40), время обнаружения имеет значение 25 мс, и информация, хранимая в блоке 113 хранения обновляется, как проиллюстрировано на фиг. 5D. При этом, поскольку ID точки D касания имеет значение 2 и идентичен таковому для точки B касания, обновляется информация, ассоциированная с ID 2.
Кроме того, поскольку координаты положения отличны от последнего раза обнаружения, устанавливается флаг перемещения. На этапе S202 количество точек касания определено как два или более (Да на этапе S202). Поэтому на этапе S203, поскольку точки касания с ID 1 и ID 2 были обновлены, определяется, что обновлена информация о положении всех точек касания (Да на этапе S203). На этапе S204 на основании флага перемещения определяется, что перемещена по меньшей мере одна точка касания (Да на этапе S204).
На этапе S206 второй блок 115 сбора данных получает измененную величину расстояния между двумя точками касания и ее абсолютное значение. Прежде всего, на основании координат точки C (200, 50) касания и координат точки D (210, 40) касания, расстояние между двумя точками (расстояние B на фиг. 4A) вычисляется как равное 14 точкам разрешения.
Затем измененная величина (абсолютное значение) по расстоянию между двумя точками, полученному вторым блоком 115 сбора данных в последний раз и хранимая в ОЗУ 113, вычисляется как равная 0 точек разрешения (=14-14).
Далее, поскольку пороговое значение «a» имеет значение 10 точек разрешения, на этапе S207 блок 116 принятия решения решает, что измененная величина расстояния между двумя точками является меньшей, чем пороговое значение «a» (Да на этапе S207). Поэтому на этапе S208 сообщается операция многоточечного перетаскивания и на этапе S209 выполняется вывод.
Согласно примеру 1 работы, операция многоточечного перетаскивания выполняется в положительном направлении оси X, из множества данных изображения, хранимых в запоминающем блоке 119, отображаются данные, соответствующие изображению за десять листов до изображения, отображенного до операции пользователя.
Кроме того, поскольку область 401 ввода сканируется каждые 20 мс, событие касания точки E касания сообщается с сенсорной панели.
На этапе S201 первый блок 112 сбора данных устройства 100 обработки информации получает информацию, что ID имеет значение 1, координатами положения являются значения (300, 50), и время обнаружения имеет значение 40 мс, и информация, хранимая в блоке 113 хранения обновляется, как проиллюстрировано на фиг. 5E. При этом ID точки E касания имеет значение 1, то есть идентично таковому для точки C касания, потому обновляется информация, ассоциированная с таковой для ID 1.
Кроме того, перемещается положение. На этапе S202 определяется, что количество точек касания равно двум или более. На этапе S203, поскольку информация точки касания с ID 1 обновлена, а точки касания с ID 2 не обновлена, блок 114 определения определяет, что обновлена информация не всех точек касания (Нет на этапе S203), и обработка заканчивается.
Затем от сенсорной панели сообщается событие касания точки F касания. На этапе S201 первый блок 112 сбора данных устройства 100 обработки информации подобным образом получает информацию, что ID имеет значение 2, координатами положения являются значения (310, 40), и время обнаружения имеет значение 45 мс, и информация, хранимая в блоке 113 хранения, обновляется, как проиллюстрировано на фиг. 5F. При этом ID точки F касания имеет значение 2, то есть идентично таковому для точки D касания, потому обновляется информация, ассоциированная с таковой для ID 2.
Кроме того, координаты положения отличны от обнаруженных в последний раз, устанавливается флаг перемещения. На этапе S202 количество точек касания определено как два или более (Да на этапе S202). Поэтому на этапе S203, поскольку точки касания с ID 1 и ID 2 обновлены, определяется, что обновлена информация о положении всех точек касания (Да на этапе S203). На этапе S204 определяется, что перемещена по меньшей мере одна точка касания (Да на этапе S204).
На этапе S206 второй блок 115 сбора данных получает измененную величину расстояния между двумя точками касания и ее абсолютное значение. Прежде всего, на основании координат точки E (300, 50) касания и координат точки F (310, 40) касания, расстояние между двумя точками (расстояние F на фиг. 4B) вычисляется как 14 точек разрешения. Затем измененная величина (абсолютное значение) расстояния между двумя точками, полученная вторым блоком 115 сбора данных в последний раз и хранимая в ОЗУ 113, вычисляется как 0 точек разрешения (=14-14).
Далее, поскольку пороговое значение «a» имеет значение 10 точек разрешения, на этапе S207 блок 116 принятия решения решает, что измененная величина расстояния между двумя точками меньше, чем пороговое значение «a» (Да на этапе S207). Поэтому на этапе S208 сообщается операция многоточечного перетаскивания, и на этапе S209 выполняется вывод.
Согласно примеру 1 работы, операция многоточечного перетаскивания выполняется в положительном направлении оси X, из множества данных изображения, хранимых в запоминающем блоке 119, отображаются данные, соответствующие изображению еще за десять листов до изображения, отображенного на этапе S209.
Когда отображаются данные изображения, определенные в ответ на отпускание точки касания, даже если операция многоточечного перетаскивания сообщена более чем один раз, сохраняется в силе изображение на экране дисплея для отображения данных изображения, определенных в первый раз.
Поэтому, в ответ на отпускание всех касаний точек касания пользователем, отображаются данные изображения, соответствующие изображению за десять листов до изображения, отображенного до операции пользователя. Таким образом, пользователь может определенно отображать данные изображения, соответствующие изображению за десять листов до или после отображенного изображения, независимо от расстояния операции многоточечного перетаскивания.
Как описано выше, в настоящем примерном варианте осуществления, собирается информация о положении двух точек касания, подвергнутых касанию пользователем, и, в ответ на завершение обновления информации о положении, всех точек касания, выполняется обработка для определения операции многоточечного касания, введенной пользователем в устройство 100 обработки информации.
Посредством сравнения измененной величины расстояния между двумя точками и порогового значения, определяется, что операция ввода является операцией многоточечного перетаскивания либо щипковой операцией. Таким образом, когда пользователь перемещает две точки касания в одном и том же направлении наряду с сохранением расстояния между двумя точками касания, щипковая операция не сообщается ошибочно. Как результат, предотвращается ложная операция, в которой размер изображения на экране дисплея изменяется вопреки намерению пользователя.
Подобным образом, когда пользователь вводит еще одну операцию многоточечного ввода с использованием множества пальцев, такую как прокручивание или поворачивание изображения, применяя настоящий примерный вариант осуществления, может не допускаться ошибочное распознавание щипковой операции.
В этом случае, посредством определения операции многоточечного касания, введенной пользователем после того, как обновлена информация о положении всех точек касания, составляющих операцию многоточечного касания, можно уменьшать ложные операции, выполняемые вопреки намерению пользователя.
В настоящем примерном варианте осуществления, после того, как блок 116 принятия решения решает, что операция, введенная пользователем, является щипковой операцией, на этапе S210 блок 117 щипкового управления определяет, была ли начата операция щипкового растягивания или операция щипкового стягивания. Обработка, выполняемая на этапе S210, может быть опущена.
В таком случае на этапе S211 блок 116 принятия решения сообщает в блок 118 щипкового управления, что была введена щипковая операция. Затем на этапе S212 блок 118 управления отображением выполняет обработку для изменения размера отображенного изображения согласно расстоянию, на которое пользователь перемещает точку касания, на основании измененной величины между двумя точками, полученной вторым блоком 115 сбора данных.
Однако на этапе S210 посредством определения, начата ли операция, на основании измененных направлений и количества измененных направлений расстояния между двумя точками, изображение на экране дисплея может изменяться корректнее до определения операции, подразумеваемой пользователем.
Например, если возникает ошибка по той причине, что измененная величина (абсолютное значение) расстояния между двумя точками определена имеющей пороговое значение «a» или большее, вызванная состоянием сенсорной панели или пальцев пользователя, сообщение, что введена щипковая операция, не выполняется. Соответственно, может быть получено действие для предотвращения ложной операции, при которой увеличение отображения отображенного изображения изменяется вопреки намерению пользователя.
В настоящем примерном варианте осуществления, описана обработка двух точек касания, но даже если обнаружены точки касания более чем двух точек, может выполняться подобная обработка.
В этом случае, например, только две точки касания выбираются согласно выявленному порядку, начиная с первой точки касания, и выполняется та же самая обработка, описанная выше. В качестве альтернативы, если обнаружены N (более двух) точек касания, собирается информация обо всех N точках касания, и на этапе S203 выполняются следующие этапы обработки в ответ на завершение обновления информации всех N точек касания.
В первом примерном варианте осуществления сенсорная панель в качестве устройства ввода сообщает в устройство 100 обработки информации событие касания каждый раз, когда сенсорная панель обнаруживает точку касания или отпущенную точку касания пользователем. В сравнении, в примере 1 модификации, сенсорная панель сообщает событие касания каждый раз, когда сенсорная панель обнаруживает точку касания пользователем в новом положении, и точку касания, отпускаемую пользователем, в устройство 100 обработки информации. Такой случай будет описан ниже.
Сенсорная панель, используемая в примере 1 модификации первого примерного варианта осуществления, не сообщает событие касания, когда точка касания неизменна. Поэтому информация о точке касания, хранимая устройством 100 обработки информации, не переписывается.
Соответственно, когда выполняется обработка для распознавания операции многоточечного касания согласно первому примерному варианту осуществления и, например, в случае, где пользователь фиксирует одну точку касания из двух точек касания и перемещает другую точку касания для выполнения щипковой операции, часть информации о точках касания хранится, как есть.
Поэтому, если определение выполняется на основании завершения обновления всей информации, хранимой устройством 100 обработки информации, как в первом примерном варианте осуществления, операция многоточечного касания может не выполняться. Соответственно, в примере 1 модификации первого примерного варианта осуществления, определяется, что задана информация обо всех точках касания, на основании истечения предопределенного времени от самого раннего времени обнаружения, хранимого в блоке 113 хранения.
Конфигурация аппаратных средств и функциональная конфигурация устройства 100 обработки информации согласно примеру 1 модификации являются такими же, как по первому примерному варианту осуществления. Однако блок 114 определения по примеру 1 модификации первого примерного варианта осуществления обращается к часам, включенным в устройство 100 обработки информации, и информации, хранимой в блоке 113 хранения, и определяет, что информация о положении всех точек касания была обновлена, согласно истечению предопределенного времени после того, как было выполнено самое раннее обновление.
Фиг. 6 - блок-схема последовательности операций способа, иллюстрирующая процесс обработки, который выполняется устройством 100 обработки информации в примере 1 модификации первого варианта осуществления, для распознавания операции многоточечного касания. На тех же этапах, что и на фиг. 2, выполняется та же самая обработка. Поэтому они подробно не описываются, а описываются отличия от первого примерного варианта осуществления.
В примере 1 модификации первого примерного варианта осуществления на этапе S202, если определено, что есть две или более точек касания (Да на этапе S202), то на этапе S601 блок 114 определения определяет, обновлена ли информация о положении всех точек касания, хранимая в блоке 113 хранения. При обработке в первый раз это всегда определяется как «Да».
Затем, если определено, что вся информация, хранимая блоком 113 хранения, обновлена (Да на этапе S601), обработка переходит на этап S204. С другой стороны, если определено, что не вся информация, хранимая блоком 113 хранения, обновлена (Нет на этапе S601), обработка переходит на этап S602.
На этапе S602 блок 114 определения определяет, истекло ли предопределенное время после завершения обновления самой ранней точки касания из точек касания, обнаруженных в данный момент. Здесь предопределенное время устанавливается заблаговременно, чтобы быть достаточно длительным для завершения сканирования всей области 401 ввода сенсорной панелью.
Например, устанавливается время такой же длительности, как период сканирования сенсорной панели. Если обнаруженных точек касания две или более, и истекло время, достаточное для завершения сканирования всей сенсорной панели после самой ранней информации о положении из обнаруженной в настоящее время информации о положении, принимается решение, что перемещение точки касания, событие касания которой не сообщено, не обнаруживается. Поэтому считается, что информация о положении всех точек касания, хранимая в блоке 113 хранения в данный момент времени, сохраняется в силе.
Если блок 114 определения определяет, что истекло предопределенное время после выполнения самого раннего обновления информации о положении точек касания (Да на этапе S602), обработка переходит на этап S204. С другой стороны, если блок 114 определения определяет, что предопределенное время не истекло после выполнения самого раннего обновления информации положения точек касания (Нет на этапе S602), обработка заканчивается.
Обработка иная, чем описанная выше, выполняется подобно обработке для распознавания операции многоточечного касания устройством 100 обработки информации, проиллюстрированным на фиг. 2.
Пример 2 работы устройства 100 обработки информации согласно примеру 1 модификации первого примерного варианта осуществления, задействованного пользователем, подробно описан со ссылкой на фиг. 7A-7E.
Фиг. 7A - схема, иллюстрирующая пример смещений положения точек касания, полученных устройством 100 обработки информации, когда пользователь выполняет щипковую операцию. Фиг. 7A соответствует фиг. 4B в первом примерном варианте осуществления. Однако пользователь удерживает точку A касания левым пальцем 402 на фиг. 4A и перемещает только правый палец 403 для выполнения щипковой операции в правом направлении (положительном направлении оси X). Как результат, последовательно обнаруживаются точка B касания, точка D касания и точка F касания.
Фиг. 7B-7E являются примером таблицы, иллюстрирующим информацию, хранимую в блоке 113 хранения, собранную в ответ на обнаружение каждой точки касания. Фиг. 7B-7E соответствуют фиг. 5A-5F в первом примерном варианте осуществления.
В примере 2 работы область 401 ввода сенсорной панели сканируется каждые 20 мс, и обнаруженные события касания сообщаются в блок 111 обнаружения. Предопределенное время для определения, обновлена ли информация о положении всех точек касания, установлено в 20 мс, а пороговое значение «a» установлено как 10 точек разрешения. Они устанавливаются заблаговременно.
Сначала начинается сканирование области 401 ввода в состоянии, где пользователь касается области 401 ввода, и событие касания точки A касания сообщается с сенсорной панели. На этапе S201 блок 111 обнаружения устройства 100 обработки информации обнаруживает, что точка A касания вновь подвергнута касанию. Затем, как проиллюстрировано на фиг. 7B, первый блок 112 сбора данных получает информацию, что ID имеет значение 1, координатами положения являются (100, 50), и время обнаружения имеет значение 0 мс, и сохраняет информацию в блоке 113 хранения.
На этапе S202 блок 114 определения обращается к хранимой информации для определения, равно ли количество точек касания в области 401 ввода двум или более, по количеству ID. В этот момент времени, как проиллюстрировано на фиг. 7B, поскольку обнаружена только точка касания с ID 1 (то есть не две или более точек касания) (Нет на этапе S202), обработка заканчивается.
Затем событие касания точки B касания сообщается с сенсорной панели. На этапе S201 первый блок 112 сбора данных устройства 100 обработки информации подобным образом получает информацию, что ID имеет значение 2, координаты положения имеют значение (110, 40), а время обнаружения - 5 мс. В это время таблица, хранимая в блоке 113 хранения, обновляется, как проиллюстрировано на фиг. 7C.
На этапе S202 блок 114 определения определяет, что количество точек касания равно двум или более. На этапе S601 блок 114 определения определяет, так как обработка происходит первый раз, что обновлена информация всех обнаруженных точек касания (Да на этапе S601).
На этапе S204 блок 116 принятия решения решает, что по меньшей мере одна точка касания не перемещена (Нет на этапе S204). Затем на этапе S205 по координатам положения точек касания рассчитывается кратчайшее расстояние между двумя точками (расстояние, проиллюстрированное на фиг. 7A).
Здесь на основании координат (100, 50) точки A касания и координат (110, 40) точки B касания расстояние между двумя точками вычисляется как 14 точек разрешения. Второй блок 115 сбора данных запоминает 14 точек разрешения в качестве расстояния между двумя точками со временем начала обнаружения в ОЗУ 103, и обработка заканчивается.
Затем область 401 ввода сканируется каждые 20 мс, событие касания точки D касания сообщается из сенсорной панели. Это происходит потому, что в сенсорной панели примера 1 модификации новое событие касания неизменной точки A касания не сообщается.
Поэтому на этапе S201 первый блок 112 сбора данных устройства 100 обработки информации получает информацию, что ID имеет значение 2, координатами положения являются (210, 40), а время обнаружения равно 25 мс. Затем информация, хранимая в блоке 113 хранения, обновляется, как проиллюстрировано на фиг. 7D.
В это время ID точки D касания имеет значение 2. Поскольку он является таким же, как для точки B касания, обновляется только информация, ассоциированная с ID 2. В дополнение, поскольку координаты положения отличны от предыдущего времени обнаружения, устанавливается флаг перемещения. На этапе S202, поскольку количество точек касания имеет значение 2, определяется, что обнаружены две или более точек касания (Да на этапе S202).
Затем на этапе S601, поскольку точка касания с ID 2 обновлена, но точка касания с ID 1 не обновлена, определяется, что информация о положении всех точек касания не обновлена (Нет на этапе S601).
Затем на этапе S602 определяется, истекли ли 20 мс после выполнения самого раннего обновления информации хранимых точек касания. При этом время, истекшее после выполнения самого раннего обновления (то есть после момента времени, когда обнаружена точка A касания), имеет значение 25 мс, и истекшее время превышает предопределенное время (Да на этапе S602). Поэтому может определяться, что обновлена информация о положении всех точек касания.
На этапе S204 на основании флага перемещения определяется, что перемещена по меньшей мере одна точка касания (Да на этапе S204). На этапе S206 второй блок 115 сбора данных получает измененную величину расстояния между двумя точками касания и ее абсолютное значение.
Здесь на основании координат точки A (100, 50) касания и координат точки D (210, 40) касания расстояние между двумя точками (расстояние D на фиг. 7A) вычисляется как 110 точек разрешения. Измененная величина (абсолютное значение) расстояния между двумя точками, полученного ранее вторым блоком 115 сбора данных и хранимая в ОЗУ 103, вычисляется как 96 точек разрешения (=110-14).
В настоящем примерном варианте осуществления, поскольку пороговое значение «a» имеет значение 10 точек разрешения, на этапе S207 блок 116 принятия решения решает, что измененная величина расстояния между двумя точками является пороговым значением «a» или большим (Нет на этапе S207). Поэтому на этапе S210 определяется, была ли начата операция щипкового растягивания или щипкового стягивания.
Теперь измененная величина расстояния между двумя точками, полученная вторым блоком 115 сбора данных, имеет значение 96 точек. Поэтому количество раз расширения расстояния между двумя точками вычисляется как один. Однако рассчитанное количество меньше, чем 2, поэтому не определяется, что начата операция щипкового растягивания (Нет на этапе S210), и обработка заканчивается.
Затем область 401 ввода сканируется каждые 20 мс, событие касания точки F касания сообщается из сенсорной панели. Это объясняется тем, что в сенсорной панели примера 1 модификации новое событие касания неизменной точки A касания не сообщается. Поэтому на этапе S201 первый блок 112 сбора данных устройства 100 обработки информации получает информацию, что ID имеет значение 2, координатами положения являются (310, 40), а время обнаружения имеет значение 45 мс. Затем информация, хранимая в блоке 113 хранения, обновляется, как проиллюстрировано на фиг. 7E. При этом ID точки C касания имеет значение 2, то есть идентично таковому для точки B касания, а потому обновляется информация, ассоциированная с таковой для ID 2. В дополнение, поскольку координаты положения отличны от предыдущего времени обнаружения, устанавливается флаг перемещения.
На этапе S202 количество точек касания определено как две или более (Да на этапе S202). Затем на этапе S601, поскольку точка касания с ID 2 обновлена, но точка касания с ID 1 не обновлена, определяется, что информация о положении всех точек касания не обновлена (Нет на этапе S601).
Затем на этапе S602 определяется, истекли ли 20 мс после выполнения самого раннего обновления информации хранимых точек касания. При этом время, истекшее после выполнения самого раннего обновления (то есть после момента времени, когда обнаружена точка A касания), имеет значение 45 мс, и истекшее время превышает предопределенное время (Да на этапе S602). Поэтому может определяться, что обновлена информация о положении всех точек касания.
На этапе S204 на основании флага перемещения определяется, что перемещена по меньшей мере одна точка касания (Да на этапе S204). На этапе S206 второй блок 115 сбора данных получает измененную величину расстояния между двумя точками касания и ее абсолютное значение.
Здесь на основании координат точки A (100, 50) касания и координат точки D (310, 40) касания расстояние между двумя точками (расстояние F на фиг. 7A) вычисляется как 210 точек разрешения. Затем измененная величина (абсолютное значение) расстояния между двумя точками, полученная вторым блоком 115 сбора данных в последний раз и хранимая в ОЗУ 113, вычисляется как 100 точек разрешения (=210-110).
В настоящем примерном варианте осуществления, поскольку пороговое значение «a» имеет значение 10 точек разрешения, на этапе S207 блок 116 принятия решения решает, что измененная величина расстояния между двумя точками является пороговым значением «a» или больше (Нет на этапе S207). Поэтому на этапе S210 блок 117 щипкового управления определяет, начата ли операция щипкового растягивания или щипкового стягивания.
Теперь измененная величина расстояния между двумя точками, полученная вторым блоком 115 сбора данных, имеет значение 100 точек. Поэтому количество раз расширения расстояния между двумя точками вычисляется как 2. На этапе S210, поскольку количество раз расширения расстояния между двумя точками касания рано двум или более, блок 117 щипкового управления определяет, что начата операция щипкового растягивания (Да на этапе S210).
На этапе S211 блок 117 щипкового управления сообщает в блок 118 управления отображением, что введена операция щипкового растягивания. Затем на этапе S212 выводится результат щипковой операции. Блок 118 управления отображением выполняет обработку для отображения увеличенного изображения на экране дисплея на основании результата, что расстояние между двумя точками расширено с 14 точек разрешения расстояния до 210 точек разрешения расстояния F.
Как описано выше, согласно примеру 1 модификации первого примерного варианта осуществления, когда пользователь касается двух точек, операция многоточечного касания, которая введена пользователем в устройство 100 обработки информации, определяется в ответ на истечение предопределенного времени после того как обновлена самая ранняя информация о положении.
Соответственно, даже если используется сенсорная панель, которая не сообщает новое событие касания, когда обнаруженная точка касания неизменна, можно определять, что обновлена информация о положении всех обнаруженных точек касания.
Поэтому, даже когда щипковая операция выполняется перемещением одной точки касания из двух точек касания при удерживании пользователем другой точки неподвижной, пользователь может изменять размер изображения на экране дисплея для удовлетворения его намерения.
Во втором примерном варианте осуществления, примерная операция многоточечного перетаскивания, введенная пользователем, описана в качестве примера операции многоточечного касания, введенной пользователем. В первом примерном варианте осуществления определяется, введена ли операция многоточечного перетаскивания или щипковая операция, на основании того, является измененная величина расстояния между двумя точками, измененная посредством перемещения по меньшей мере одной точки касания, меньшей, чем предопределенное пороговое значение, в результате обновления информации о положении обнаруженных двух точек.
С другой стороны, во втором примерном варианте осуществления, введена ли операция многоточечного перетаскивания или щипковая операция, определяется на основании того, является ли угловая разница направлений перемещения, измененных перемещением по меньшей мере одной точки касания, меньшей, чем предопределенное пороговое значение, в результате обновления информации о положении обнаруженных двух точек.
Когда угловая разница мала и предполагается, что точки касания двух пальцев должны были перемещаться почти в одном и том же направлении, определяется, что введена операция многоточечного перетаскивания. С другой стороны, когда угловая разница велика, определяется, что введена щипковая операция.
Фиг. 8 - функциональная структурная схема, иллюстрирующая функциональную конфигурацию устройства 100 обработки информации согласно примеру 1 модификации. Фиг. 8 отличается от фиг. 1B тем, что добавлены блок 801 формирования и третий блок 802 сбора данных.
Блок 801 формирования хранит информацию, необходимую для формирования векторов между информацией точек касания, полученных первым блоком 112 сбора данных. Блок 801 формирования формирует вектор перемещения, указывающий направление перемещения и величину перемещения каждой точки касания, на основании смещения информации о положении точки касания.
Третий блок 802 сбора данных сравнивает составляющие направления каждого из векторов перемещения для каждой точки касания, сформированных блоком 801 формирования, для получения угловой разницы. Затем блок 116 принятия решения согласно настоящему примерному варианту осуществления принимает решение, что операция, выполненная пользователем, является щипковой операцией (первой операцией), если угловая разница векторов перемещения, полученная третьим блоком 802 формирования, является предопределенным пороговым значением или большим.
С другой стороны, если полученная угловая разница является меньшей, чем предопределенное пороговое значение, определяется, что операция, выполняемая пользователем, является операцией многоточечного перетаскивания (второй операцией).
Фиг. 9 - блок-схема последовательности операций способа, иллюстрирующая процесс, который выполняется устройством 100 обработки информации во втором примерном варианте осуществления для распознавания операции многоточечного касания. На тех же этапах, что и на фиг. 2, выполняется та же самая обработка, поэтому они подробно не описываются, а описываются части, отличные от первого примерного варианта осуществления.
Во втором примерном варианте осуществления на этапе S204, если блок 116 принятия решения принимает решение, что перемещена по меньшей мере одна точка касания (Да на этапе S204), обработка переходит на этап S901. На этапе S901 третий блок 802 сбора данных получает угловую разницу векторов перемещения. Подробности обработки, выполняемой на этапе 901, описаны ниже.
Затем на этапе S902 блок 116 принятия решения принимает решение, является ли угловая разница двух векторов перемещения, сформированных блоком 801 формирования, меньшей, чем пороговое значение «b». В настоящем примерном варианте осуществления, пороговое значение «b» является пороговым значением для величины угла, заблаговременно зарегистрированным в устройстве 100 обработки информации. Он установлен на минимальное значение, требуемое для принятия решения, что две точки касания перемещены в разных направлениях.
Если угловая разница равна пороговому значению «b» или больше (Нет на этапе S902), блок 116 принятия решения принимает решение, что операция, введенная пользователем, является щипковой операцией, и обработка переходит на этап S210.
Если угловая разница меньше, чем пороговое значение «b» (Да на этапе S902), блок 116 принятия решения принимает решение, что операция, введенная пользователем, является операцией многоточечного перетаскивания, и обработка переходит на этап S208.
На этапе S902 второго примерного варианта осуществления, если определяется, что пользователь вводит щипковую операцию, то на этапе S210 второй блок 115 сбора данных получает расстояние между двумя точками касания и сравнивает его с хранимым расстоянием. Затем на основании того, расширено или сужено расстояние между двумя точками, выполняется обработка, подобная таковой по первому примерному варианту осуществления.
Фиг. 10 - блок-схема последовательности операций способа, иллюстрирующая примерный процесс обработки для получения угловой разницы векторов перемещения точек касания, выполняемый на этапе S901. Сначала на этапе S1001 блок 801 формирования выбирает ID точки касания, чтобы конкретизировать одну точку касания из обнаруженного множества точек касания.
На этапе S1002 блок 801 формирования определяет координаты, которые должны быть начальной точкой вектора положения. В настоящем примерном варианте осуществления блок 801 формирования определяет положение точки касания с выбранным ID, выявленное первый раз, или положение, выявленное последний раз, на основании информации о положении хранимой точки касания, в качестве координат начальной точки вектора положения.
На этапе S1003 блок 801 формирования определяет координаты конечной точки вектора перемещения. В настоящем примерном варианте осуществления блок 801 формирования определяет самую последнюю информацию о положении точки касания с выбранным ID в качестве координат конечной точки вектора перемещения на основании информации, полученной первым блоком 112 сбора данных.
Затем на этапе S1004 блок 801 формирования получает информацию, указывающую направление вектора перемещения, указывающего из определенной начальной точки в определенную конечную точку. Блок 801 формирования формирует вектор перемещения посредством соединения определенных начальной точки и конечной точки. Однако вектор перемещения, когда значение начальной точки и конечной точки имеют одинаковые координаты, определяется как 0.
Затем блок 801 формирования рассчитывает угол в направлении по часовой стрелке, указывающий направление сформированного вектора перемещения, с использованием оси Y области 401 ввода в качестве начала отсчета. Расчет угла может выполняться, например, посредством использования тригонометрической функции, такой как тангенс. Блок 801 формирования хранит полученную информацию об угле посредством ее ассоциирования с ID точки касания.
На этапе S1005 третий блок 802 сбора данных определяет, сформированы ли векторы перемещения всех точек касания. Третий блок 802 сбора данных выполняет определение на основании количества ID, хранимых в блоке 801 формирования.
Если третий блок 802 сбора данных определяет, что сформированы векторы всех точек касания (Да на этапе S1005), обработка переходит на этап S1006. С другой стороны, если третий блок 802 сбора данных определяет, что векторы всех точек касания не сформированы (Нет на этапе S1005), обработка возвращается на этап S1001. На этапе S1001 выбирается ID точки касания, которая должна обрабатываться следующей.
На этапе S1006 третий блок 802 сбора данных получает угловую разницу векторов перемещения для каждой точки касания. Третий блок 802 сбора данных рассчитывает разницу углов векторов. Углы, хранимые в блоке 801 формирования, указывают направления векторов. Полученная угловая разница является абсолютным значением. Затем обработка вычисления угловой разницы векторов перемещения заканчивается, и обработка переходит на этап S902. Последующая обработка выполняется подобно таковой по первому примерному варианту осуществления.
Фиг. 11A-11F - схемы, иллюстрирующие примерный способ формирования векторов перемещения точек касания, выполняемый на этапе S901. Со ссылкой на фиг. 11A описан конкретный пример векторов перемещения, сформированных в настоящем примерном варианте осуществления.
На фиг. 11A-11F, p1-p8 являются точками касания области 401 ввода, и палец пользователя обеспечивает выборку с постоянными временными интервалами координат положений, в которых палец пользователя касается области 401 ввода. p1 соответствует положению, обнаруженному впервые.
В настоящем примерном варианте осуществления сенсорная панель сканирует область 401 ввода каждые 20 мс. Поэтому точка касания может получаться приблизительно с интервалами 20 мс. Блок 801 формирования формирует вектор V1a перемещения, когда обнаружена p2. Подобным образом, вектор V2a перемещения формируется, когда обнаружена p3, и вектор V3a перемещения формируется, когда обнаружена p4.
Способ формирования векторов перемещения не ограничен способом, используемым в настоящем примерном варианте осуществления. Со ссылкой на фиг. 11B-11D другие примерные способы формирования описаны ниже.
Со ссылкой на фиг. 11B описан способ, в котором, когда длина сформированного вектора перемещения превышает опорное расстояние L, выявленное положение точки касания, которая является конечной точкой вектора перемещения, устанавливается начальной точкой вектора перемещения, который должен формироваться следующей обработкой.
Здесь, p1-p4 являются точками касания, подвергаемыми выборке с постоянными интервалами времени, и p1 соответствует положению точки касания, обнаруженной первой. Блок 801 формирования определяет координаты p1, обнаруженной первой, в качестве начальной точки вектора перемещения, когда обнаружены p1 и p2. Когда обнаружена p2, блок 801 формирования формирует вектор перемещения, указывающий из p1 в качестве начальной точки в p2 в качестве конечной точки, и определяет, превышает ли длина сформированного вектора перемещения (длина перемещения из p1 в p2) опорное расстояние L.
Когда длина сформированного вектора перемещения превышает опорное расстояние L, самое последнее обнаруженное положение точки касания определяется имеющим значения координат начальной точки, когда вектор перемещения формируется в следующий раз. Так как длина сформированного вектора перемещения (длина перемещения из p1 в p2) не превышает опорного расстояния L, когда обнаруживается p3, формируется вектор V1b перемещения. Затем, когда обнаружена p3, блок 801 формирования определяет, превышает ли длина вектора V1b перемещения опорное расстояние L.
Так как длина вектора V1b перемещения превышает опорное расстояние L, блок 801 формирования определяет p3 в качестве начальной точки вектора перемещения, когда вектор перемещения формируется в следующий раз.
Затем, когда обнаружена p4, блок 801 формирования формирует вектор V2b перемещения, направленный из p3 в качестве начальной точки в p4 в качестве конечной точки. Таким образом, блок 801 формирования формирует вектор перемещения для каждой точки касания, а третий блок 802 сбора данных получает угловую разницу с использованием самого последнего вектора перемещения, сформированного для каждой точки касания. Блок 801 формирования может отбрасывать информацию о точках касания, которые не требуются для формирования векторов, и информацию о векторах перемещения, которая не является самой последней.
Фиг. 11C иллюстрирует пример, в котором блок 801 формирования определяет точку, в которой скорость перемещения точки касания является локальным минимумом, в качестве координат начальной точки для формирования вектора перемещения.
Здесь p1-p8 являются точками касания, подвергаемыми выборке с постоянными временными интервалами. Поскольку временные интервалы выборки постоянны, расстояние между точками касания на фиг. 11C пропорционально скорости перемещения точки касания. Поэтому можно видеть, что в p6 скорость перемещения становится локальным минимумом, из смещений точек касания p1-p8.
Поэтому блок 801 формирования определяет p1 в качестве начальной точки вектора перемещения при обработке, когда обнаружены p1-p6, и, например, когда обнаружена p6, блок 801 формирования формирует вектор V1c перемещения. Затем, в обработке, выполняемой, когда обнаружены точки, следующие за p7, блок 801 формирования определяет p6 в качестве начальной точки и, например, когда обнаружена p8, блок 801 формирования формирует вектор V2c перемещения.
Однако, координаты положения точек касания, полученных с датчика сенсорной панели, могут включать в себя отклонения. Например, область контакта между пальцем пользователя и сенсорной панелью может изменяться во время работы, и может изменяться относительное положение координат одной точки, заданной в качестве точки касания. Когда вектор перемещения формируется без учета таких отклонений, направление вектора перемещения может зависеть от отклонения обнаружений, и может ухудшаться точность обработки для сравнения угловой разницы и порогового значения «b».
Для решения этой проблемы, со ссылкой на фиг. 11D, описан пример, в котором вектор перемещения формируется с учетом координат всех смещений точек касания между координатами, определенными в качестве начальной точки и самым последним выявленным положением в качестве конечной точки.
В настоящем примерном варианте осуществления координаты p1, которая обнаружена первой, определяются в качестве начальной точки. В качестве координаты как конечной точки, координата X определяется имеющей значение координаты X самого последнего выявленного положения точки касания, а координата Y определяется имеющей среднее значение координат оси Y положений точек касания с одним и тем же ID, обнаруженных до сих пор.
Таким образом, точность обработки сравнения угловой разницы векторов перемещения и порогового значения «b» может улучшаться формированием векторов перемещения с использованием среднего значения координат выявленной точки касания. Таким образом, можно правильно распознавать операцию многоточечного касания.
Описанный выше способ формирования векторов перемещения является просто примером. Например, также можно определять координаты начальной точки вектора перемещения, который должен формироваться следующим, на основании того, что угловая разница направлений сформированных векторов перемещения становится предопределенным пороговым значением или большим, либо точка касания не переместилась за предопределенный период времени или дольше. Таким образом, среди различных способов, можно выбирать надлежащий способ согласно вычислительным возможностям устройства 100 обработки информации и т.п., который может использоваться для настоящего примерного варианта осуществления.
Описан пример 3 работы, в котором пользователь задействует устройство 100 обработки информации согласно второму примерному варианту осуществления.
В примере 3 работы, подобно примеру 1 работы, пользователь касается области 401 ввода двумя пальцами 402 и 403 и перемещает их вместе в правом направлении (операция многоточечного перетаскивания), как проиллюстрировано на фиг. 4A. Затем, точка касания каждого пальца смещается, как проиллюстрировано на фиг. 4B.
При этом информация о каждой точке касания, полученная первым блоком 112 сбора данных, хранится в блоке 113 хранения в качестве таблиц, проиллюстрированных на фиг. 5A-5F. В примере 3 работы, пороговое значение «b» угла установлено в 45 градусов.
Отличие примера 3 работы от примера 1 работы состоит в обработке, выполняемой после того, как на этапе S204 определено, что перемещена по меньшей мере одна точка касания (Да на этапе S204), в ответ на сообщение события касания точки D касания, принятое от сенсорной панели. На этапе S901 блок 801 формирования формирует, в отношении точки касания, чей ID имеет значение 1, вектор A перемещения с положением точки A касания в качестве координат начальной точки и с положением точки C касания в качестве координат конечной точки.
Направление вектора A перемещения имеет значение 90 градусов, когда угол рассчитывается в направлении по часовой стрелке от оси Y в качестве начала отсчета. Подобным образом на этапе S901 блок 801 формирования формирует, в отношении точки касания, чей ID имеет значение 2, вектор B перемещения с положением точки B касания в качестве координат начальной точки и с положением точки D касания в качестве координат конечной точки.
Направление вектора B перемещения также имеет значение 90 градусов в направлении по часовой стрелке от оси Y в качестве начала отсчета. Поэтому третий блок 802 сбора данных получает информацию, указывающую 0 градусов в качестве угловой разницы между вектором A перемещения и вектором B перемещения.
В настоящем примерном варианте осуществления, пороговое значение «b» имеет значение 45 градусов. Поэтому на этапе S902 блок 116 принятия решения решает, что угловая разница 0 градусов, полученная третьим блоком 802 сбора данных, меньше, чем пороговое значение «b» (Да на этапе S902). Другими словами, определяется, что пользователь вводит операцию многоточечного перетаскивания, так как две точки касания перемещаются в одном и том же направлении. Поэтому на этапе S208 и этапе S209 выполняется обработка, соответствующая операции многоточечного перетаскивания.
Подобным образом в обработке, выполняемой, когда событие касания точки F касания сообщается с сенсорной панели, блок 801 формирования формирует вектор C перемещения, проиллюстрированный на фиг. 4B, в отношении точки касания, чей ID имеет значение 1, и вектор D перемещения, проиллюстрированный на фиг. 4B, в отношении точки касания, чей ID имеет значение 2. Направление каждого вектора имеет значение 90 градусов, и угловая разница имеет значение 0 градусов. Поэтому блок 116 принятия решения решает, что вводится операция многоточечного перетаскивания.
При обработке для получения угловой разности, выполняемой на этапе S1006 по настоящему примерному варианту осуществления, результат расчета, желательно, может быть абсолютным значением. Посредством использования абсолютного значения, только уровень угловой разности принимается во внимание, а направление угловой разности не учитывается.
Кроме того, для вычисления угловой разницы в пределах острого угла, если результат вычисления больше, чем 180 градусов, желательно вычитать результат вычисления из 360 градусов, чтобы получать угловую разницу. Посредством унификации угловых разностей в пределах острого угла, можно сохранить единообразие обработки сравнения с пороговым значением и получить операцию, визуально легкую для понимания пользователем.
Кроме того, при сравнении между угловой разницей вектора перемещения и пороговым значением угла, может быть установлено множество пороговых значений. Например, согласно расстоянию между начальной точкой и конечной точкой, если расстояние мало, используется пороговое значение большого угла. Таким образом, даже если происходит изменение обнаруженного положения точки касания, как описано выше, можно предотвращать ухудшение точности определения, вызванное большой ошибкой угла, получаемого в качестве направления вектора перемещения.
Фиг. 11E иллюстрирует разницу направлений между векторами V1e и V1e' перемещения. Вектор V1e перемещения формируется, когда p2 обнаруживается после того, как обнаружена p1. Вектор Ve1' формируется, когда p2' выявляется вследствие изменения обнаруженного положения. С другой стороны, фиг. 11F иллюстрирует разницу направлений между векторами V2e и V2e' перемещения. Вектор V2e перемещения формируется, когда p3, которая отделена от p2, обнаруживается после того, как обнаружена p1. Вектор V2e' формируется, когда обнаружена p3'.
Изменение выявленного положения между p3 и p3' является таким же, как между p2 и p2'. Разница направлений V1e и V1e' является большей, чем для V2e и V2e'.
Таким образом, так как расстояние от начальной точки до конечной точки является меньшим, изменение выявленного положения сильно влияет на направление вектора перемещения. Соответственно, посредством установки множества пороговых значений согласно расстоянию от начальной точки до конечной точки, можно правильно определять входную операцию многоточечного касания.
Как описано выше, в настоящем примерном варианте осуществления, когда пользователь касается двух точек, операция многоточечного касания, введенная в устройство 100 обработки информации пользователем, определяется в ответ на завершение обновления информации о положении обеих двух точек касания. В этот момент определяется, введена ли операция многоточечного перетаскивания или щипковая операция, на основании того, является ли угловая разница направлений перемещения, измененных перемещением по меньшей мере одной точки касания, меньшей, чем предопределенное пороговое значение, в результате обновления информации о положении обнаруженных двух точек.
Таким образом, когда пользователь перемещает две точки касания в почти одном и том же направлении, щипковая операция не сообщается ошибочно. Как результат, предотвращается ложная операция, в которой размер изображения на экране дисплея изменяется вопреки намерению пользователя. В дополнение, первый примерный вариант осуществления и примеры модификаций, а также второй примерный вариант осуществления могут быть реализованы в комбинации.
Аспекты настоящего изобретения также могут быть осуществлены компьютером системы или устройства (или устройствами, такими как ЦПУ или МПУ (микропроцессорное устройство)), который считывает и выполняет программу, записанную на устройстве памяти, для выполнения функций вышеописанных вариантов осуществления, и способом, этапы которого выполняются компьютером системы или устройства, например, посредством считывания и выполнения программы, записанной на устройстве памяти, для выполнения функций вышеописанных вариантов осуществления. Для этой цели, программа предоставляется на компьютер, например, через сеть или с носителя записи различных типов, служащих в качестве устройства памяти (например, машиночитаемого носителя). В таком случае система или устройство и носитель записи, где хранится программа, включаются во объем настоящего изобретения.
Хотя настоящее изобретение описано со ссылкой на примерные варианты осуществления, понятно, что изобретение не ограничено раскрытыми примерными вариантами осуществления. Объем формулы изобретения должен соответствовать самому широкому толкованию, чтобы охватывать все такие модификации, эквивалентные структуры и функции.