способ и устройство для просмотра информации на дисплее
Классы МПК: | G09G5/34 для "прокрутки" информации или перемещения изображения G09G5/38 со средствами для управления положением изображения G06F3/147 на панели индикации |
Автор(ы): | ВААНАНЕН Йоханнес (FI), ХАННУЛА Манне (FI) |
Патентообладатель(и): | Миориго С.а.р.л. (LU) |
Приоритеты: |
подача заявки:
2002-02-08 публикация патента:
27.11.2006 |
Изобретение относится к ручным устройствам с дисплеем и предназначено для просмотра информации. Техническим результатом является улучшение регулировки изображения. Согласно заявленному способу в ответ на изменение угла наклона устройства изменяют часть страницы, содержащей информацию, причем упомянутая страница лежит на виртуальной поверхности в системе координат и каждая точка страницы имеет четкое положение в системе координат, при этом первоначально ориентируют поверхность дисплея по отношению к виртуальной поверхности таким образом, что опорная линия, перпендикулярная опорной точке на поверхности дисплея и проходящая из какой-нибудь опорной точки, касается страницы, содержащей информацию, в заданной точке, отображают на дисплее часть страницы, находящейся вокруг заданной точки, и в ответ на наклон ручного устройства создают зеркальную линию путем зеркального отражения опорной линии по отношению к линии, перпендикулярной поверхности дисплея и проходящей через опорную точку, определяют точку касания зеркальной линии виртуальной поверхности, отображают на дисплее часть страницы вокруг точки касания. Также заявлено ручное устройство для просмотра информации. 3 н. и 21 з.п. ф-лы, 10 ил.
Формула изобретения
1. Способ просмотра информации на ручном устройстве, имеющем дисплей и средство детектирования текущего угла наклона упомянутого ручного устройства, согласно которому в ответ на изменение в угле наклона часть страницы, содержащей информацию, отображаемую на дисплее, изменяется, причем упомянутая страница лежит на виртуальной поверхности в системе координат, и согласно которому каждая точка страницы имеет четкое положение в упомянутой системе координат, отличающийся этапами заблаговременной установки ориентации поверхности дисплея по отношению к виртуальной поверхности, причем упомянутая ориентация находится в пространственном начальном состоянии, так что опорная линия, перпендикулярная опорной точке на поверхности дисплея и проходящая из какой-то опорной точки, касается страницы, содержащей информацию, в заданной точке, отображения на дисплее части страницы, находящейся вокруг заданной точки и имеющей форму, сходную с формой дисплея, и в ответ на наклон ручного устройства по отношению к пространственному начальному состоянию создания зеркальной линии путем зеркального отражения опорной линии по отношению к линии, которая перпендикулярна поверхности дисплея и проходит через упомянутую опорную точку, определения точки касания (xn, yn), в которой зеркальная линия касается виртуальной поверхности и страницы, содержащей упомянутую информацию, и отображения на дисплее части страницы вокруг точки касания, причем упомянутая часть страницы имеет форму, сходную с формой дисплея, и положение точки касания на странице соответствует положению опорной точки на дисплее.
2. Способ по п.1, отличающийся тем, что начальное состояние устанавливается под определенным заданным углом к поверхности земли.
3. Способ по п.2, отличающийся тем, что заданный угол равен 20-30°.
4. Способ по п.1, отличающийся тем, что скорость просмотра отображаемой информации зависит от местоположения и ориентации поверхности дисплея по отношению к виртуальной поверхности.
5. Способ по п.1, отличающийся тем, что в способе используется этап поддержания ориентации отображаемой информации в неизменном состоянии при повороте ручного устройства вокруг оси, причем упомянутая ось в сущности перпендикулярна поверхности дисплея.
6. Способ по п.1, отличающийся тем, что в определенной ориентации ручного устройства всегда отображается одна и та же часть текущей страницы.
7. Способ по п.1, отличающийся тем, что отображаемая часть страницы блокируется/разблокируется в ответ на нажатие/отпускание кнопки.
8. Способ по п.1, отличающийся тем, что в способе используются этапы установки ручного устройства в режим изменения масштаба изображения и увеличения или уменьшения масштаба отображаемой информации при повороте ручного устройства вокруг оси, причем упомянутая ось в сущности перпендикулярна поверхности дисплея.
9. Способ по п.1, отличающийся тем, что в способе используются этапы установки ручного устройства в режим изменения масштаба изображения и увеличения или уменьшения отображаемой информации в зависимости от угла наклона ручного устройства.
10. Способ по п.1, отличающийся тем, что в способе используются этапы определения с помощью камеры расстояния между поверхностью дисплея и глазами пользователя, увеличения или уменьшения отображаемой информации в зависимости от упомянутого расстояния.
11. Способ по п.1, отличающийся тем, что в способе используются этапы измерения с помощью видеокамеры ориентации и местоположения ручного устройства по отношению к пользователю упомянутого ручного устройства, поиск определенной точки на видеоизображении, которая будет задана в качестве опорной точки, и изменение масштаба информации в зависимости от перемещений опорной точки по отношению к ручному устройству.
12. Ручное устройство для просмотра информации, которое содержит дисплей и средство для детектирования текущего угла наклона ручного устройства, которое в ответ на изменение угла наклона изменяет часть страницы, содержащую информацию, отображенную на дисплее, причем упомянутая страница лежит на виртуальной поверхности в системе координат, на которой каждая точка страницы имеет четкое положение в упомянутой системе координат, отличающееся тем, что ручное устройство адаптировано для предварительной установки ориентации поверхности дисплея по отношению к виртуальной поверхности, причем упомянутая ориентация находится в пространственном начальном состоянии, так что опорная линия, перпендикулярная опорной точке на поверхности дисплея и проходящая из такой опорной точки, касается страницы, содержащей информации, в заданной точке, отображения на дисплее части страницы, находящейся вокруг заданной точки и имеющей форму, сходную с формой дисплея, и в ответ на наклон ручного устройство по отношению к пространственному начальному состоянию создания зеркальной линии путем зеркального отражения опорной линии по отношению к линии, которая перпендикулярна поверхности дисплея и проходит через опорную точку, определения точки касания (xn, yn) в месте соприкосновения зеркальной линии с виртуальной поверхностью и страницей, содержащей информацию, и отображения на дисплее части страницы вокруг точки касания, причем упомянутая часть имеет форму, сходную с формой дисплея, а положение точки касания на странице соответствует положению опорной точки на дисплее.
13. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для установки начального состояния под определенным заданным углом к поверхности земли.
14. Ручное устройство по п.13, отличающееся тем, что заданный угол равен 20-30°.
15. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для просмотра информации на дисплее со скоростью, которая зависит от местоположения и ориентации поверхности дисплея по отношению к виртуальной поверхности.
16. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для поддержания ориентации отображаемой информации в неизменном состоянии при повороте ручного устройства вокруг оси, причем упомянутая ось, в сущности, перпендикулярна поверхности дисплея.
17. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для отображения одной и той же части текущей страницы всегда в определенной ориентации ручного устройства.
18. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для блокировки/разблокировки отображаемой части страницы в ответ на нажатие кнопки.
19. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для установки ручного устройства в режим изменения масштаба изображения и увеличения или уменьшения масштаба отображаемой информации при повороте ручного устройства вокруг оси, причем упомянутая ось, в сущности, перпендикулярна поверхности дисплея.
20. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для определения с помощью камеры расстояния между поверхностью дисплея и глазами пользователя и увеличения или уменьшения масштаба отображаемой информации на основании такого расстояния.
21. Ручное устройство по п.12, отличающееся тем, что ручное устройство, кроме того, адаптировано для измерения ориентации и местоположения ручного устройства по отношению к пользователю ручного устройства с помощью видеокамеры, поиска определенной точки на видеоизображении для задания ее в качестве опорной точки и изменения объема информации в соответствии с перемещениями опорной точки по отношению к ручному устройству.
22. Способ просмотра информации на ручном устройстве, в котором использована компьютерная программа, реализованная в машиночитаемой среде, в которой упомянутая компьютерная программа выполняет программные операции, записанные в машиночитаемой среде, для осуществления способа просмотра информации на дисплее ручного устройства, имеющего дисплей и средство для детектирования текущего угла наклона ручного устройства, в котором в ответ на изменение в угле наклона часть страницы, содержащей информацию, отображаемую на дисплее, изменяется, причем упомянутая страница лежит на виртуальной поверхности в какой-то системе координат, и в котором каждая точка страницы имеет четкое положение в упомянутой системе координат, отличающийся тем, что упомянутая компьютерная программа выполняет операции заблаговременной установки ориентации поверхности дисплея по отношению к виртуальной поверхности, причем упомянутая ориентация находится в пространственном начальном состоянии, так что опорная линия, перпендикулярная опорной точке на поверхности дисплея и проходящая из какой-то опорной точки, касается страницы, содержащей информацию, в заданной точке, отображения на дисплее части страницы, находящейся вокруг заданной точки и имеющей форму, сходную с формой дисплея, и в ответ на наклон ручного устройства по отношению к пространственному начальному состоянию создания зеркальной линии путем зеркального отражения опорной линии по отношению к линии, которая перпендикулярна поверхности дисплея и проходит через упомянутую опорную точку, определения точки касания (xn, yn), в которой зеркальная линия касается виртуальной поверхности и страницы, содержащей упомянутую информацию, и отображения на дисплее части страницы вокруг точки касания, причем упомянутая часть страницы имеет форму, сходную с формой дисплея, и положение точки касания на странице соответствует положению опорной точки на дисплее.
23. Способ просмотра информации на ручном устройстве по п.22, отличающийся тем, что упомянутая компьютерная программа выполняет операцию установки начального состояния под определенным заданным углом к поверхности земли.
24. Способ просмотра информации на ручном устройстве по п.22, отличающийся тем, что в определенной ориентации ручного устройства всегда отображается одна и та же часть текущей страницы.
Описание изобретения к патенту
ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к дисплеям, на которых можно просматривать информацию. В частности, настоящее изобретение относится к новому и улучшенному способу и системе просмотра информации на ручных устройствах с дисплеем.
УРОВЕНЬ ТЕХНИКИ
Различные электронные переносные устройства, такие как мобильные телефоны, переносные компьютеры, цифровые секретари, содержат дисплеи. Передача информации для просмотра на дисплее осуществляется, по меньшей мере частично, процессором. Устройство обычно также содержит клавиатуру, с помощью которой пользователь устройства вводит различные команды. Также существуют сенсорные дисплеи (сенсорные экраны). Управление таким устройством осуществляется путем касания экрана пальцем.
Дисплей мобильного устройства способен отображать лишь ограниченный объем информации в определенный момент времени. Из-за размера дисплея крупное изображение, например, можно просматривать только частями. Для того чтобы рассмотреть такое изображение, пользователь устройства работает с дисплеем путем, например, прокрутки дисплея с помощью мыши и т.д.
Устройства, оснащенные дисплеями, имеют различные типы пользовательских интерфейсов, посредством которых пользователи работают с устройством. Существуют графические пользовательские интерфейсы и речевые пользовательские интерфейсы. Графический пользовательский интерфейс управляется различными устройствами управления, включая, например, клавиатуру, сенсорную панель, различные способы управления курсором и т.д.
Существуют, однако, недостатки известных устройств, связанные с возможностью использования устройства, особенно при просмотре информации с помощью устройства. Когда информация, отображаемая на дисплее, должна просматриваться частями, трудно быстро просмотреть всю информацию часть за частью. Трудно, например, отобразить на дисплее панорамную картинку, в то же время быстро и легко просматривая ее.
Пользователю мобильного ручного устройства трудно воспринимать визуальные объекты в целом, которые не могут быть отображены на дисплее в определенный момент времени. Поэтому просмотр информации должен осуществляться максимально возможным естественным и логичным образом. Пользователь мобильного ручного устройства должен иметь возможность изучить и использовать устройство легко и эффективно.
Из уровня техники известно использование локационных детекторов для просмотра информации с помощью устройства. В опубликованной международной заявке WO 9918495 (Telefbnaktiebolaget LM Ericsson) описан способ, когда устройство отображения перемещается в сущности в плоскости устройства отображения, посредством чего различные части полноэкранного изображения отображаются на упомянутом дисплее. Если устройство отображения перемещается по существу в направлении, перпендикулярном плоскости устройства отображения, коэффициент увеличения изображения меняется. Перемещение в плоскости является отчасти проблематичным. При плоскостном перемещении необходимые движения могут быть весьма заметными/крупными, и может быть трудно поддерживать устройство с дисплеем в необходимом для чтения или просмотра положении.
Еще одно известное решение заключается в использовании детекторов наклона для перемещения или, более точно, прокрутки изображения на дисплее. Одно решение такого типа описано в опубликованной международной заявке WO 9814863 (Philips). Когда изображение на экране перемещается путем прокрутки (наклона устройства с дисплеем), результат лучше, чем при перемещении устройства с дисплеем в плоскости устройства с дисплеем, как сказано выше. Однако быстро перемещать изображение на экране и возвращаться из какой-либо точки в начальную точку просмотра трудно, поскольку управление прерывистым перемещением требует постоянного и точного управления устройством с дисплеем. Управление движением прокрутки можно сравнить с движением шарика по плоской поверхности в результате наклона плоскости. Для того чтобы остановить шарик, плоская поверхность должна снова стать перпендикулярной к силе притяжения Земли. Другими словами, управление движениями и возможность использования не находятся на приемлемом уровне, который обеспечивает естественное и логичное использование такого устройства.
Существуют также различные типы устройств отображения с управляемым перемещением и/или локацией, использующиеся, например, в шлемах виртуальной реальности. Там устройство отображения фокусируется наподобие виртуальной камеры. Устройство отображения воспроизводит объект, на который это устройство (камера) направлено в моделируемой виртуальной среде. Использовать модель виртуальной камеры в ручном устройстве не так просто, поскольку отображение периферийных участков полноэкранного изображения дает неудобный угол просмотра. Поэтому регулировка и увеличение/уменьшение изображения на дисплее должны осуществляться наиболее естественным и логичным путем. В известных решениях просмотр информации на устройстве отображения происходит медленно и с затруднениями, поскольку эти технические решения основаны на искусственной логике.
РЕШАЕМАЯ ИЗОБРЕТЕНИЕМ ЗАДАЧА И ТЕХНИЧЕСКИЙ РЕЗУЛЬТАТ
Цель настоящего изобретения заключается в регулировке изображения на устройстве отображения максимально естественным образом, чтобы пользователь ручного устройства мог концентрироваться на информации, отображаемой на устройстве отображения, а не на регулировке отображаемой информации.
КРАТКОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Настоящее изобретение описывает способ, ручное устройство и компьютерную программу для просмотра информации на дисплее ручного устройства. В настоящем изобретении дисплей связан с процессором, отображающим информационное содержание, преобразуемое процессором в виртуальный объект, подходящий для передачи информации пользователю ручного устройства. Дисплей отображает часть виртуального объекта в какой-то момент времени на дисплее. Виртуальный объект содержит, например, символы, картинки, линии, ссылки, видеоданные или пиксели, которые могут быть удобно отображены на дисплее в какой-то момент времени.
Идея настоящего изобретения заключается в просмотре информации на дисплее ручного устройства естественным и логичным путем. Изобретение отличается тем, что просмотр информации на дисплее осуществляется в сущности зеркальным путем. Другими словами, часть виртуального объекта, отображаемого на дисплее, перемещается в направлении наклона ручного устройства. Говоря по другому, перемещения части виртуального объекта, отображаемого на дисплее, зависит от ориентации ручного устройства. Важным отличительным признаком изобретения также является то, что определенная ориентация ручного устройства всегда отображает на дисплее одну и ту же часть виртуального объекта. Вышеописанный способ просмотра является исключительно логичным, а перемещения и реакции на перемещения являются естественными.
Основные функции просмотра можно объяснить на следующем примере. Информация просматривается на ручном устройстве в сущности таким же образом, как рассматриваемая в ручном зеркале. Ручное зеркало обычно держат в руке в непосредственной близости к пользователю. При наклоне ручного зеркала вид за пользователем перемещается в ответ на изменения в ориентации ручного зеркала.
При приближении к функциональным возможностям ручного зеркала просмотр информации на дисплее ручного устройства становится естественным и логичным.
Настоящее изобретение наиболее применимо в ручных устройствах с дисплеем при отображении на дисплее крупных объектов частями. При использовании настоящего изобретения крупный объект может быть просмотрен естественно и логично с точки зрения пользователя. Позиционная память мышц человеческого тела облегчает возврат к точкам, просмотренным раньше, и к исходной точке.
Настоящее изобретение также уменьшает необходимость использования внешних механических переключателей, клавиатуры или других известных механизмов управления для просмотра информации на дисплее. Поэтому использование ручного устройства становится более легким и простым. Основные функциональные возможности настоящего изобретения могут быть осуществлены с помощью узлов и деталей массового производства при умеренной мощности процессора. Таким образом, основные признаки настоящего изобретения могут быть приняты для использования в потребительских товарах без заметного увеличения их стоимости.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Прилагаемые чертежи, которые предназначены для облегчения понимания изобретения, являются частью настоящего описания изобретения, иллюстрируя варианты осуществления изобретения, и вместе с описанием помогают объяснить принципы изобретения.
Фиг.1 иллюстрирует как работает ручное устройство согласно настоящему изобретению;
Фиг.2а, 2b и 2с иллюстрируют более специфические примеры того, как обращаться с ручным устройством, показанным на Фиг.1;
на Фиг.3 показана типичная настройка просмотра согласно настоящему изобретению;
на Фиг.4 показан пример того, как может быть образовано и рассчитано изображение на дисплее согласно настройке просмотра по Фиг.3;
Фиг.5 является блок-схемой, иллюстрирующей один вариант осуществления ручного устройства в соответствии с настоящим изобретением;
Фиг.6 является блок-схемой, иллюстрирующей еще один вариант осуществления ручного устройства в соответствии с настоящим изобретением;
на Фиг.7а, 7b, 7 с и 7d показаны изменения изображения на дисплее ручного устройства как реакции на действия пользователя;
на Фиг.8а, 8b и 8с показаны различные способы присмотра информации;
Фиг.9 является схемой, иллюстрирующей работу предпочтительного варианта осуществления настоящего изобретения;
На Фиг.10а - d показан еще один пример формирования и вычисления изображения на дисплее в соответствии с настройкой просмотра согласно Фиг.4.
Перечень позиций на фиг.1-10: направления - 2, 3, 4 и 5, оси - 6 и 7, горизонтальная плоскость 8, дисплей 10, устройство 20 локации, графические изображения 21, 22 и 23, процессор 30, ручное устройство 40, средство 50 для измерения ускорения (датчик 50 или датчики 50), оперативная память 60, постоянная память 70, блокировка 80 просмотра, адаптер 90, виртуальная поверхность 200, ориентация области (формы) 201 дисплея, страница 202 дисплея, опорная линия 203, нормаль 204 дисплея, зеркальная линия 205.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
На Фиг.1 показано упрощенное переносное ручное устройство согласно настоящему изобретению. Данное ручное устройство может являться, например, мобильным телефоном или цифровым секретарем. На дисплее ручного устройства отображается информация, хранящаяся в памяти ручного устройства. Более подробно ручное устройство объяснено в последующих примерах. На Фиг.1 представлены базовые функции просмотра. Информация просматривается на дисплее путем наклона (поворота) ручного устройства 40 в направлениях 2, 3, 4 и 5 по осям 6 и 7. В памяти ручного устройства 40 содержится виртуальный объект, состоящий из символов, картинок, линий, ссылок, видеоданных или пикселей, которые могут быть удовлетворительно отображены на дисплее в какой-то момент времени. Часть виртуального объекта, отображаемого на дисплее, перемещается в том же направлении, в котором наклоняется ручное устройство. Более того, при определенной ориентации ручного устройства 40 на дисплее всегда отображается одна и та же часть виртуального объекта.
На Фиг.2а, 2b и 2с представлен более конкретный пример наклона ручного устройства 40. Можно сказать, что в типичном исходном положении ручное устройство 40 находится под углом 20-30° к горизонтальной плоскости 8. Эта плоскость в одном варианте осуществления установлена как стандартная плоскость "х-у", от которой измеряются углы поворота ручного устройства 40. Также можно сказать, что эта исходная точка является наиболее подходящей для просмотра информации на дисплее. Поэтому когда пользователь наклоняет ручное устройство 40, угол просмотра изменяется. Изображение на дисплее изменяется в реальном времени для того, чтобы соответствовать новому углу просмотра. Одним весьма важным отличительным признаком настоящего изобретения является то, что изображение на дисплее зависит от угла просмотра, и один и тот же угол просмотра всегда дает одно и то же изображение на дисплее. Этот отличительный признак является весьма естественным и логичным.
На Фиг.2а угол соответствует вышеуказанным 20-30°. Фиг.2а считается исходным положением при начале просмотра. На Фиг.2b ручное устройство 40 было наклонено до угла 1, который меньше угла . Изображение на дисплее меняется в зависимости от движений наклона в сущности в реальном времени, и перемещение информации на дисплее происходит в том же направлении, в котором наклоняется ручное устройство 40. На Фиг.2с ручное устройство 40 наклонено до угла 2, который больше угла .
В одном варианте осуществления угол является заданным и определяется изготовителем ручного устройства 40. В процессе определения устанавливается, что плоскость просмотра дисплея основывается на осях x_VD и y_VD, которые перпендикулярны друг другу (где VD - виртуальный дисплей). Затем ручное устройство устанавливается в определенное положение ( ), и это положение задается как стандартная плоскость "х-у". На Фиг.2а, 2b и 2с стандартная плоскость определена на основании угла . В еще одном варианте осуществления стандартная плоскость может быть свободно определена на основании любой оси х, оси у и/или оси z.
Начиная с этого момента, ручное устройство 40 наклоняется по отношению к этой плоскости. Когда стандартная плоскость "х-у" зафиксирована, пользователь ручного устройства всегда может вернуться к определенному изображению, наклоняя устройство в первоначальную ориентацию, в которой датчики, измеряющие ориентацию ручного устройства, не вносят никаких ограничений в измеряемое положение. В еще одном варианте осуществления угол можно корректировать до требуемого значения.
На Фиг.3 и 4 представлен типичный вариант настройки "зеркальной системы". Она содержит точку просмотра VP, виртуальный экран VS и виртуальный дисплей VD. Точка просмотра VP представляет местоположение для пользователя ручного устройства. VD представляет дисплей ручного устройства. Виртуальный экран VS представляет реальную информацию, просматриваемую на дисплее.
Точка просмотра VP определяется для простоты в последующем описании как точка [0 0 0]. Кроме того, средняя точка виртуального дисплея VD определяется как точка P_xyz, где P_xyz=[P_xyz1 P_xyz2 P_xyz3]T, и виртуальный экран VS лежит в плоскости x=kuva_shift.
Ориентация виртуального дисплея VD определяется углами наклона х у z, указывающими угол поворота по каждой оси координат. На Фиг.4 виртуальный дисплей VD является плоскостью и имеет некоторый размер. Каждая координата в этой плоскости VD определяется с использованием нотации Р=[P_xyz2 +peili_y P_xyz3+peili_Z], когда ориентация VD определена как параллельная плоскости х.
Необходимо отметить, что Фиг.3 и Фиг.4 представляют только один вариант возможных положений VS, VP и VD и использованных осей.
Для того чтобы определить ориентацию VD, два ортогональных вектора (в плоскости х) определяются следующим образом:
L=[0,1,-1]T
M=[0,1,1] T
Эти векторы представляют векторы ортогонального направления VD. Далее, ориентация виртуального дисплея VD определяется с использованием углов поворота:
После этого вычисляется единичный вектор нормали VD:
РТ1=RxRyRz L
РТ1=RxRyRz M
PNT=PT1 × PT2 (векторное произведение)
где PN является единичным вектором нормали плоскости VD. PN определяет применимую ориентацию VD, которая будет использоваться в вычислении проекции.
После этого вычисляется "изображение" на виртуальном дисплее VD. Предположим, что существует вектор, начинающийся от VP и отражающийся через VD. Точка, в которой отражаемый вектор сталкивается с плоскостью VS, определяет проекцию точки на VS на точке на плоскости VD. Отсюда, если все точки на VD обрабатываются, как сказано выше, можно определить изображение на VD.
Идея вычисления представлена с использованием векторов, показанных на Фиг.4. При использовании этих векторов алгоритм работает следующим образом.
1. Точки Р и VP определяют вектор А.
2. Вычисляется проекция proj вектора А на вектор нормали PN.
3. Сумма вектора А и proj*PN определяет точку Q.
4. Точки Q и VP определяют вектор В.
5. Точка, определенная как сумма VP и 2*В, определяет точку R.
6. Вектор направления, который проходит через Р и R, определяет вектор направления, который сталкивается с плоскостью VS в точке S.
7. Результат этого процесса заключается в том, что изображение точки Р на VD является изображением точки S на VS.
Путем повторения операций 1-7 для всех точек на плоскости VD определяется полное изображение на виртуальном дисплее VD. Используя векторное вычисление, то же самое можно представить следующим образом.
Сначала определяется точка Р:
Р=P_xyz+RхR yRz[0 peili_y peili_z]T,
где P_xyz является координатой средней точки VD, peili_y является y-координатой в системе координат плоскости VD и peili_z является z-координатой в системе координат плоскости VD.
После этого определяется проекция на вектор нормали:
А=Р-VP
Исходя из этого, можно определить точку Q:
Q=P-proj*PN.
Далее можно определить точку R (причина использования коэффициента 2 заключается в том, что в зеркале приходящий и уходящий лучи света имеют равные углы по сравнению с вектором нормали поверхности).
B=Q-VP
R=VP+2*В
И в заключение вектор направления С определяется следующим образом:
С=R-P.
Так как VS расположен на плоскости х=kuva_shift, вектор С сталкивается с этой плоскостью в точке
S=k*C+Р
где:
где Pi является х-компонентом точки Р, и С 1 является х-компонентом вектора С. Можно заметить, что в данном вычислении VP была определена как исходная точка для упрощения представления алгоритма. Однако на практике точка VP может быть расположена в любом месте координатной плоскости. Необходимо отметить, что изображение на виртуальном экране VS является горизонтально обратным при рассмотрении виртуального экрана VS с направления точки просмотра VP.
Система, показанная на Фиг.4, имеет несколько характеристик:
1. Изображение на дисплее перемещается в направлении его наклона. В одном варианте осуществления перемещение части виртуального объекта, отображаемого на дисплее, пропорционально величине изменения и/или скорости вращательного движения.
2. При увеличении расстояния между VP и VD один и тот же угол наклона приводит к большему перемещению на виртуальном экране VS. Другими словами, скорость просмотра информации на дисплее увеличивается с увеличением расстояния между VP и VD. В одном варианте осуществления этот фактор перемещения может корректироваться пользователем ручного устройства.
3. При вращении дисплея изображение на дисплее останется неизменным для пользователя.
4. Изображение на дисплее зависит от положения и ориентации VS, VP и VD.
5. Определенное сочетание положения/ориентации VS-VP-VD всегда составляет одно и то же изображение на дисплее.
6. При изменении положения VD угол обзора между VP и VD изменяется.
7. Путем изменения положения VS, VP и VD можно осуществлять изменения масштаба изображения.
8. Изменение масштаба изображения можно осуществлять путем увеличения объекта на VS или путем изменения радиуса кривизны зеркала (VD).
9. Если фигура на VS находится справа, если смотреть с VP, изображение на VD будет зеркальным (горизонтально инвертированным).
Настоящее изобретение не должно включать в себя все вышеизложенные отличительные признаки, но для него могут быть выбраны наиболее подходящие из них. Идеальная зеркальная функциональная способность означает, что информации на дисплее изменяется когда:
a) местоположение или ориентация ручного устройства, пропорциональные координатам, связаны с изменениями в физическом окружении;
b) местоположение пользователя (VP) пропорционально координатам, связанным с изменениями в положении ручного устройства;
c) виртуальное местоположение данных (виртуальный экран), отображаемых на дисплее, пропорционально координатам, связанным с изменениями в физическом окружении.
Для того чтобы моделировать функцию зеркала для пользователя, информация на дисплее изменяется по меньшей мере в соответствии с условием а) или b). Если во внимание принимается только условие а) или условие b), действие дисплея не такое зеркальное, как при выполнении совместно условий а) и b). В одном варианте осуществления дисплей работает в соответствии со всеми условиями а), b) и с).
На Фиг.10а-d показан еще один пример вычислений, который объяснен со ссылкой на Фиг.4. Фиг.10 является боковой проекцией Фиг.10а, и Фиг.10d является боковой проекцией Фиг.10b. В данном примере виртуальный экран назван виртуальной поверхностью.
На Фиг.10а и Фиг.10с стандартная ориентация дисплея 201 определена как параллельная плоскости "y-z". Виртуальная поверхность VS находится выше плоскости дисплея и также параллельна плоскости "y-z". Страница с информацией для просмотра лежит на виртуальной поверхности, и ее размер больше размера дисплея. Опорная точка VP находится на виртуальной поверхности. Ось х (не показана) проходит через опорную точку VP и среднюю точку Р дисплея. После вычисления точки S способом, представленным со ссылкой на Фиг.4, результатом является то, что точка S будет равна точке VP. Конечно, соотношение между каждой отдельно взятой точкой в области дисплея (2а*2b) и соответствующей областью (2а*2b) на виртуальной поверхности может быть вычислено аналогичным способом. Часть страницы (2а*2b), которая должна быть отображена, имеет форму, сходную с формой дисплея (2а*2b). Другими словами, на виртуальной поверхности точка S является средней точкой определенного прямоугольника (2а*2b), и все другие точки, находящиеся вокруг точки S в пределах этого прямоугольника, соотносятся с соответствующими точками, находящимися вокруг точки Р на дисплее. На виртуальной поверхности отображается та часть страницы.
На Фиг.10b и Фиг.10d дисплей наклонен вокруг оси у, причем часть страницы, показанной на дисплее, изменилась следующим образом.
Первоначально (т.е. когда виртуальная поверхность и поверхность дисплея параллельны друг другу) опорная линия 203, проведенная в точке Р, соответствует оси х, т.е. параллельна оси х. Также, нормаль дисплея, проходящая из точки Р, параллельна оси х и опорной линии. Если дисплей наклонить под углом к виртуальной поверхности, нормаль дисплея также должна быть наклонена под углом к оси х или опорной линии. В ответ на наклон устройства опорная линия 203 зеркальна по отношению к нормали 204 дисплея, посредством чего создается зеркальная линия 205. Точка касания S' является точкой, в которой зеркальная линия 205 касается виртуальной поверхности 200. Таким же образом, как сказано выше, определяется область (форма) 201, соответствующая области (форме) 202 дисплея. Затем на дисплее отображается часть страницы 202 вокруг точки касания S', которая имеет форму, сходную с формой дисплея.
На Фиг.5 представлен один пример предпочтительного ручного устройства 40. Ручное устройство 40 является, например, мобильным телефоном. Ручное устройство содержит процессор 30 и дисплей 10, соединенный с процессором 30. Оперативная память 60 и постоянная память 70 также соединены с процессором 30. Постоянная память 70 содержит, например, операционную систему. Объемы памяти и мощность процессора 30 зависят от конкретного устройства и выполняемых операций.
Постоянная память 70 может также содержать различные виды прикладных программ для выполнения различных заданий. Прикладные программы включают, например, программное обеспечение для работы с текстом, графикой и таблицами. Прикладные программы и используемые ими данные загружаются в оперативную память 60 для работы программного обеспечения.
Адаптер 90 дисплея используется вместе с процессором 30 для управления дисплеем 10. Для того чтобы не использовать оперативную память 60 для хранения информации о дисплее, адаптер 90 дисплея содержит буфер обмена данными, в котором хранится информация для отображения на дисплее 10.
Ручное устройство 40 содержит средство измерения, которым в предпочтительном варианте осуществления настоящего изобретения является датчик (или датчики) 50 ускорения. С помощью датчика (или датчиков) 50 можно измерять движения наклона ручного устройства 40. Процессор 30 получает результаты измерений и интерпретирует их. Датчик (или датчики) 50 ускорения может быть, например, пьезоэлектрическим или емкостным, выдающим аналоговый сигнал напряжения, который пропорционален коэффициенту ускорения.
С помощью датчика (или датчиков) 50 можно измерять одно-, двух- или трехмерное ускорение. Измерение движений наклона основано на том, что самое большое ускорение параллельно силе тяжести Земли. Поэтому ориентация ручного устройства 40 может быть определена по отношению к Земле. Также можно использовать гироскопы в различных формах для измерения ориентации ручного устройства 40. Измеряемыми величинами являются, например, угол наклона и ускорение.
Информация об отношении между углом вращения ручного устройства и адресом памяти, соответствующим отображаемому изображению, хранится, например, в оперативной памяти 60. Процессор 30 определяет ориентацию ручного устройства 40 по отношению к пользователю или эталонному положению. Процессор 30 может также определять расстояние между пользователем и ручным устройством 40 или ориентацию пользователя по отношению к ручному устройству 40.
Наиболее важным является не способ выполнения вышеуказанных определений, а то, что ориентация ручного устройства 40 влияет на информацию, отображаемую на дисплее 10. Область памяти может быть определена логически, например, как двухмерная область памяти. В начале просмотра процессор 30 начинает процесс определения нового адреса памяти из текущего адреса памяти, так что смещение в области памяти соответствует направлению и величине изменения в ориентации согласно информации об отношении.
Ручное устройство 40 также содержит блокировку 80 просмотра, с помощью которой ему подается сигнал о том, что просмотр завершен. Ориентация ручного устройства 40 должна оставаться такой же для того, чтобы сохранять изображение на дисплее неизменным. В предпочтительном варианте осуществления ручное устройство 40 содержит средство блокировки, например кнопку, с помощью которой можно блокировать просмотр. Пользователь может наклонить ручное устройство обратно до соответствующей ориентации изображения для того, чтобы хорошо видеть информацию на дисплее 10. После отпускания кнопки просмотр может продолжиться.
Ручное устройство 40 на Фиг.6 является почти таким же, как ручное устройство 40 на Фиг.5. Ручное устройство на Фиг.5 также содержит устройство 20 локации. Можно управлять изображением на дисплее 10 также с помощью других, чем датчик (или датчики) ускорения, средств. Ручное устройство 40 может содержать, например, видеокамеру, измеряющую ориентацию и местоположение ручного устройства 40 до его пользователя или до другой опорной точки вокруг пользователя. Устройство 20 локации 20 (камера) может быть настроено на распознавание и измерение расстояния до определенной опорной точки, например до глаз пользователя. Поэтому, когда ориентация и/или положение ручного устройства 40 изменится, угол просмотра, измеряемый камерой, также изменится. Таким образом, можно сделать вывод о том, что ручное устройство 40 было наклонено и/или перемещено в некотором направлении.
Путем анализа видеоизображения можно определять ориентацию ручного устройства 40 относительно опорной точки и расстояние ручного устройства 40 до эталонной точки десятки раз в секунду. Функциональные возможности просмотра могут быть осуществлены с использованием только видеокамеры, поэтому дополнительный датчик (или датчики) ускорения не потребуется. Измерение расстояния также может осуществляться с помощью ультразвукового радиолокатора, подсоединенного через аналого-цифровой преобразователь к процессору 30 ручного устройства 40. В одном варианте осуществления, с точки зрения пользователя, информация на дисплее 10 просматривается таким же образом, как при взгляде в зеркало. Другими словами, изображение на дисплее 10 также зависит от угла просмотра в отношении к плоскости дисплея, как изображение в зеркале зависит от угла взгляда в зеркало.
В варианте осуществления, показанном на Фиг.5, устройство 20 локации содержит видеокамеру, определяющую местоположение головы и глаз пользователя. Для определения местоположения головы и глаз могут использоваться эвристические алгоритмы и нейтральная сеть. Датчики ускорения больше подходят для использования в ручных устройствах, чем видеокамера, поскольку они дешевле. Датчики ускорения также могут представлять более приемлемое решение для устройств, которые не имеют встроенной видеокамеры в стандартной комплектации, как, например, мобильные телефоны третьего поколения. Преимущество использования видеокамеры заключается в том, что использование ручного устройства не будет ограничено определенным положением ручного устройства, например, ручное устройство может без проблем использоваться, когда пользователь лежит на спине. Кроме того, выбор исходной точки для просмотра осуществляется более свободно, и выбранная исходная точка может быть сообщена пользователю данного ручного устройства. В варианте осуществления, показанном на Фиг.5, уровень поверхности дисплея установлен как плоскость "х-у". Было установлено определенное отношение между перемещением ручного устройства по оси х и/или оси у и величина смещения части виртуального объекта, отображаемого на дисплее в какой-то момент времени. Поэтому, когда ручное устройство 40 перемещается по оси х и/или оси у, часть виртуального объекта, отображаемого на дисплее, перемещается в том же направлении, в котором ручное устройство перемещается в плоскости "х-у", в соответствии с информацией об отношении.
В предпочтительном варианте осуществления, показанном на Фиг.5 и Фиг.6, процессор 30 также содержит средство для фильтрации перемещений по оси х, оси у и наклона перед отображением перемещений на дисплее. Поэтому небольшие непреднамеренные перемещения могут быть отфильтрованы.
В варианте осуществления, показанном на Фиг.5 и Фиг.6, отношение между перемещениями наклона и величиной смещения части виртуального объекта, отображаемого на дисплее в какой-то момент времени, может быть изменено. Поэтому пользователь может определить, например, чтобы с определенного момента наклон на 10° приводил к такому же действию на дисплей, как и наклон на 15° до этого момента. В одном варианте осуществления это отношение линейное. Другими словами, отношение между перемещениями наклона и величиной смещения части виртуального объекта, отображаемого на дисплее в какой-то момент времени, не зависит от величины наклона. В другом варианте осуществления это отношение линейное, но, например, экспоненциальное. Другими словами, величина смещения части виртуального объекта, отображаемого на дисплее в какой-то момент времени, зависит от величины наклона. Например, значение коэффициента отношения изменяется (например, экспоненциально) с увеличением величины наклона.
На Фиг.7а-7d показана ситуация, когда объем информации на дисплее зависит от коэффициента изменения масштаба изображения в дополнение к ориентации ручного устройства. Коэффициентом изменения масштаба можно управлять различными способами. В одном варианте осуществления коэффициент изменения масштаба зависит от расстояния между пользователем и ручным устройством. На Фиг.7а показано ручное устройство 40, на котором видны графические изображения 21, 22 и 23. Изображение на дисплее 10 зависит от ориентации ручного устройства или от угла просмотра, под которым пользователь ручного устройства смотрит на дисплей. Если пользователь ручного устройства установит фигуру 21 в середину дисплея и увеличит коэффициент изменения масштаба, размер фигуры 21 увеличится, как показано на Фиг.7b и Фиг.7с. На Фиг.7d коэффициент изменения масштаба был уменьшен, и угол просмотра между пользователем и ручным устройством был изменен.
Коэффициент изменения масштаба может быть изменен несколькими способами. В одном варианте осуществления коэффициент изменения масштаба изображения зависит от расстояния между опорной точкой (например, глазами пользователя) и ручным устройством. При уменьшении расстояния фигура 21 увеличивается и наоборот. Дисплей 10 придется установить в режим изменения масштаба изображения перед изменением коэффициента изменения масштаба. Если бы коэффициент изменения масштаба постоянно зависел от расстояния между опорной точкой и ручным устройством, операция просмотра необязательно была бы осуществимой на практике, так как изображение на дисплее 10 изменялось бы при любом изменении вышеуказанного расстояния.
В еще одном варианте осуществления коэффициент изменения масштаба изображения изменяется при повороте ручного устройства вокруг оси, в сущности перпендикулярной к заданной плоскости "х-у". Плоскостью "х-у" может являться текущая плоскость дисплея 10 или какая-то другая заданная плоскость. Еще в одном варианте осуществления коэффициент изменения масштаба изображения изменяется путем наклона ручного устройства. Перед этим необходимо установить ручное устройство в режим изменения масштаба изображения. При наклоне ручного устройства, например, вправо коэффициент изменения масштаба увеличивается, а при наклоне влево уменьшается. Не важно, какие заданные направления наклона используются, главное, чтобы эти два направления могли быть достаточно отделены друг от друга. Вышеупомянутый режим изменения масштаба изображения включается и выключается, например, определенной кнопкой на ручном устройстве.
На Фиг.8а-8с представлены различные способы осуществления пользовательского интерфейса. На Фиг.8а дисплей 10 ручного устройства 40 содержит информацию для просмотра пользователем. На Фиг.8а на дисплее 10 показана буква "А". В одном варианте осуществления информация на дисплее 10 остается в одном и том же положении в отношении пользователя, когда ручное устройство 40 поворачивается вокруг оси, перпендикулярной к плоскости поверхности дисплея, как показано на Фиг.8b. Другими словами, информация на дисплее 10 остается в одном и том же положении, так как эта информация привязана к реальным физическим координатам.
В другом варианте осуществления информация на дисплее 10 остается в одном и том же положении по отношению к ручному устройству 40, когда ручное устройство 40 поворачивается вокруг оси, перпендикулярной к плоскости поверхности дисплея, как показано на Фиг.8с. Другими словами, ориентация информации на дисплее 10 изменяется по отношению к пользователю ручного устройства 40, так как информация привязана не к реальным физическим координатам, а к дисплею.
На Фиг.9 представлена схема, иллюстрирующая функциональные возможности способа по настоящему изобретению. На Фиг.9 показано ручное устройство 40, содержащее средство 50 для измерения ускорения и процессор 30. Средством 50 для измерения ускорения может являться, например, многокоординатный датчик ускорения, подходящий для измерения изменений в ориентации ручного устройства 40.
После включения ручного устройство оно готово к просмотру информации на дисплее, как показано на этапе 100. Когда ручное устройство работает, датчик 50 ускорения постоянно измеряет величину ускорения. Процессор 30 принимает данные по ускорению и определяет ориентацию ручного устройства, а также изменение в ориентации по сравнению с предыдущим результатом измерения, как показано на этапах 101 и 102. На этапе 103 проверяется, включен просмотр или выключен. Если просмотр выключен, процессор 30 проверяет, выполнено ли заданное условие начала просмотра (этап 104). Если оно не выполнено, процесс возвращается обратно к этапу 101. Это означает, что ориентация ручного устройства не изменилась в достаточной мере, что показало бы, что пользователь хочет просматривать информацию на дисплее ручного устройства.
В том случае, если заданное условие начала просмотра выполнено, процессор 30 устанавливает просмотр как начавшийся (этап 106) и определяет скорость просмотра на основании текущего значения ускорения (этап 108). Процессор 30 также изменяет информацию, представленную на дисплее в соответствии с отношением между углом вращения и величиной смещения части виртуального объекта, хранящегося в оперативной памяти 60, а также установленную скорость просмотра (этап 108). Определенная ориентация ручного устройства всегда дает одно и то же изображение (одну и ту же часть виртуального объекта, хранящегося в памяти) на дисплее. Если на этапе 103 определено, что просмотр уже включен, и условие остановки просмотра выполнено (этап 105), процессор 30 останавливает просмотр и устанавливает просмотр как остановленный (этапы 107 и 109). Если определено, что условие остановки просмотра не выполнено (этап 105), процессор 30 возвращается на этап 101.
Специалисту в данной области техники понятно, что с совершенствованием технологии основная идея настоящего изобретения может быть реализована различными способами. Настоящее изобретение и варианты его осуществления таким образом не ограничиваются вышеприведенными примерами и могут изменяться в рамках объема формулы изобретения.
Наиболее успешно заявленные способ и устройство просмотра информации на дисплее промышленно применимы в ручных устройствах с дисплеем, например таких, как мобильные телефоны, переносные компьютеры, цифровые секретари.
Класс G09G5/34 для "прокрутки" информации или перемещения изображения
Класс G09G5/38 со средствами для управления положением изображения
Класс G06F3/147 на панели индикации