ES2702718T3 - Interaction based on superposition with represented content - Google Patents

Interaction based on superposition with represented content Download PDF

Info

Publication number
ES2702718T3
ES2702718T3 ES15757043T ES15757043T ES2702718T3 ES 2702718 T3 ES2702718 T3 ES 2702718T3 ES 15757043 T ES15757043 T ES 15757043T ES 15757043 T ES15757043 T ES 15757043T ES 2702718 T3 ES2702718 T3 ES 2702718T3
Authority
ES
Spain
Prior art keywords
screen
content
enlarged window
location
contact
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES15757043T
Other languages
English (en)
Inventor
Himanshu Niranjani
Craig Lichtenstein
Shailendra Mittal
Devin Jensen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US14/458,136 priority Critical patent/US9594489B2/en
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to PCT/US2015/044406 priority patent/WO2016025356A1/en
Application granted granted Critical
Publication of ES2702718T3 publication Critical patent/ES2702718T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • G06F3/04186Touch location disambiguation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range
    • G06F3/04842Selection of a displayed object
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders, dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/041012.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04805Virtual magnifying lens, i.e. window or frame movable on top of displayed information to enlarge it for better reading or selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers

Abstract

Un procedimiento que comprende: representar (1202) un contenido en una pantalla; detectar (1204) un objeto delante de, pero no en contacto con, una superficie delantera de la pantalla; determinar (1206), al menos en parte en respuesta a la detección del objeto, una ubicación en la superficie delantera de la pantalla que está separada una distancia lo más corta con respecto al objeto en relación con las distancias desde el objeto hasta otras ubicaciones en la superficie delantera de la pantalla; determinar (1208) una porción del contenido que se representa en la ubicación o dentro de una distancia umbral con respecto a la ubicación; representar (1210), en una región de la pantalla, una ventana ampliada de la porción del contenido; y mover (1304) la ventana ampliada con el objeto a través de la superficie delantera de la pantalla a otra región de la pantalla, en el que la ventana ampliada, después del movimiento, contiene otra porción del contenido que se representa en, o dentro de una distancia umbral con respecto a, una ubicación nueva en la superficie delantera de la pantalla que se corresponde con una posición del objeto después de que el objeto se haya movido a través de la superficie delantera de la pantalla, caracterizado porque dicho movimiento (1304) de la ventana ampliada se lleva a cabo en respuesta a determinar (1302) que el objeto se ha movido por debajo de una velocidad previamente determinada a través de la superficie delantera de la pantalla al tiempo que mantiene la relación de separación con la superficie delantera de la pantalla.A method comprising: representing (1202) a content on a screen; detecting (1204) an object in front of, but not in contact with, a front surface of the screen; determine (1206), at least in part in response to the detection of the object, a location on the front surface of the screen that is separated a distance as short as the object in relation to the distances from the object to other locations in the front surface of the screen; determine (1208) a portion of the content that is represented at the location or within a threshold distance from the location; represent (1210), in a region of the screen, an enlarged window of the content portion; and moving (1304) the enlarged window with the object across the front surface of the screen to another region of the screen, in which the enlarged window, after movement, contains another portion of the content that is represented in, or within of a threshold distance with respect to a new location on the front surface of the screen corresponding to a position of the object after the object has moved through the front surface of the screen, characterized in that said movement (1304 ) of the enlarged window is carried out in response to determining (1302) that the object has moved below a predetermined speed through the front surface of the screen while maintaining the separation relationship with the front surface from the screen.

Description

DESCRIPCIÓNDESCRIPTION
Interacción basada en superposición con contenido representadoInteraction based on superposition with represented content
AntecedentesBackground
Los ordenadores de sobremesa eran predominantes hace tiempo como la configuración de ordenador personal más común, lo que llevaba a que los desarrolladores de soporte lógico crearan un contenido que se diseñaba para una representación óptima en una pantalla de sobremesa. Por ejemplo, a menudo los desarrolladores de sitios web favorecen un contenido rico y denso para una página web de tal modo que la representación “bienes inmuebles” en un dispositivo de visualización se puede aprovechar plenamente. Un factor que impulsa a los desarrolladores de sitios web hacia un contenido de página web rico y denso es el hecho de que terceras partes están dispuestas a pagar por que su contenido (por ejemplo, anuncios publicitarios) se proporcione en la página web de un proveedor de contenidos. Esto quiere decir que, en la práctica, los proveedores de contenidos pierden dinero cuando estos optan por dejar espacio vacío en una página web.Desktop computers were long dominant as the most common personal computer configuration, leading software developers to create content that was designed for optimal representation on a desktop screen. For example, often website developers favor a rich and dense content for a web page in such a way that the representation "real estate" in a visualization device can be fully exploited. One factor that drives website developers towards a rich and dense website content is the fact that third parties are willing to pay for their content (for example, advertisements) to be provided on a provider's website. of contents. This means that, in practice, content providers lose money when they choose to leave empty space on a web page.
En general, el diseño de un contenido que es rico y denso no supone un problema con las pantallas de sobremesa. Por ejemplo, un usuario promedio cuyos ojos están situados a aproximadamente 30,5 cm de una pantalla de sobremesa de 19 pulgadas (48,26 cm) es capaz de leer sin ayuda un contenido denso que se representa en la pantalla, y es capaz adicionalmente de navegar por y explorar el contenido mediante la manipulación de un cursor en la pantalla con un ratón o un dispositivo apuntador similar.In general, designing content that is rich and dense is not a problem with desktop displays. For example, an average user whose eyes are located approximately 30.5 cm from a 19-inch (48.26 cm) desk-top screen is able to read a dense content that is displayed on the screen without help, and is additionally capable of to browse and explore content by manipulating a cursor on the screen with a mouse or similar pointing device.
A medida que la tecnología informática ha ido progresando, no obstante, ciertos dispositivos informáticos que tienen un factor de forma pequeño se han vuelto ubicuos. Por ejemplo, muchos individuos poseen un teléfono inteligente (por lo general, con un tamaño de pantalla en el intervalo de aproximadamente 4 a 5 pulgadas (de 10,16 a 12,70 cm)) y lo llevan con ellos a donde quiera que vayan. Además, los consumidores se están familiarizando en la actualidad con la práctica de la navegación por Internet desde la comodidad de su propia sala de estar en una pantalla de televisión (TV) doméstica. En cualquiera de estos escenarios, al menos un cierto contenido que se representa en la pantalla del usuario puede ser difícil de leer y / o seleccionar cuando se intenta interaccionar con el contenido. Con respecto a los dispositivos con un factor de forma pequeño, algunos problemas de legibilidad y / o de susceptibilidad de selección tienen su origen en la representación de un contenido denso en una pantalla pequeña. Un problema similar surge en el escenario de una TV de sala de estar cuando un usuario está situado a una distancia sustancial con respecto a la pantalla que hace que sea difícil leer y /o seleccionar el contenido que se proporciona en un diseño rico y denso. Como consecuencia, los usuarios continúan experimentando frustración cuando navegan por y exploran un contenido en sus dispositivos de consumo.As computer technology has progressed, however, certain computing devices that have a small form factor have become ubiquitous. For example, many individuals own a smartphone (usually with a screen size in the range of approximately 4 to 5 inches (from 10.16 to 12.70 cm)) and carry it with them wherever they go. . In addition, consumers are now becoming familiar with the practice of Internet browsing from the comfort of their own living room on a domestic television (TV) screen. In any of these scenarios, at least some content that is represented on the user's screen may be difficult to read and / or select when attempting to interact with the content. With respect to devices with a small form factor, some problems of readability and / or susceptibility to selection have their origin in the representation of a dense content on a small screen. A similar problem arises in the scenario of a living room TV when a user is located at a substantial distance from the screen that makes it difficult to read and / or select the content that is provided in a rich and dense design. As a result, users continue to experience frustration when they browse and explore content on their consumer devices.
El documento US 2007/0268317 A1 divulga una interfaz de usuario para seleccionar una porción de una pantalla para su ampliación y representar entonces una representación ampliada de esa porción de la pantalla. La representación ampliada contiene los aspectos funcionales e interactivos del contenido de origen subyacente y sin ampliar. La selección de una porción para su ampliación se puede llevar a cabo mediante el uso de un ratón u otro dispositivo de entrada, y en el caso de una pantalla táctil, la ampliación se puede iniciar a través de un conjunto previamente definido de golpecitos en la pantalla u otros mecanismos de entrada.US 2007/0268317 A1 discloses a user interface for selecting a portion of a screen for enlargement and then representing an enlarged representation of that portion of the screen. The extended representation contains the functional and interactive aspects of the content of underlying and unexpanded origin. The selection of a portion for its extension can be carried out by the use of a mouse or other input device, and in the case of a touch screen, the enlargement can be initiated through a previously defined set of taps on the screen or other input mechanisms.
El documento US 2012/0120002 A1 divulga una interfaz de usuario de pantalla táctil para identificar un punto objetivo en la pantalla táctil de acuerdo con la trayectoria del objeto y una distancia del objeto con respecto a la pantalla, y llevar a cabo un evento de interfaz en ese punto objetivo. Los eventos de interfaz que se pueden llevar a cabo incluyen la totalidad de las funciones que se pueden llevar a cabo con unas interfaces de tipo bola de seguimiento o ratón convencionales. Además de los eventos de interfaz convencionales, la interfaz de usuario de pantalla táctil puede realizar un seguimiento de múltiples objetos de forma simultánea, y de forma sensible al movimiento de múltiples objetos, llevar a cabo una rotación o un acercamiento / alejamiento de la pantalla.US 2012/0120002 A1 discloses a touch screen user interface for identifying an objective point on the touch screen according to the object's trajectory and a distance from the object with respect to the screen, and carrying out an interface event at that objective point. The interface events that can be carried out include all the functions that can be carried out with conventional track or mouse ball-type interfaces. In addition to the conventional interface events, the touch screen user interface can track multiple objects simultaneously, and in a manner sensitive to the movement of multiple objects, perform a rotation or a zoom in / out of the screen.
El documento US 2010/0328351 A1 divulga una interfaz de usuario de pantalla táctil para detectar un evento de entrada que es realizado por un objeto puntual en las proximidades de la pantalla táctil, y llevar a cabo eventos de salida o eventos de ampliación basándose en parámetros de ese evento de entrada. Como eventos de ampliación únicos, se presentan el ajuste del tamaño del campo de visión para la ampliación y / o la escala de la ampliación, y la congelación / des congelación de un campo de visión ampliado.US 2010/0328351 A1 discloses a touch screen user interface for detecting an input event that is performed by a point object in the vicinity of the touch screen, and carrying out output events or extension events based on parameters of that entry event. As unique extension events, the adjustment of the size of the field of view for the enlargement and / or scale of the extension, and the freezing / freezing of an expanded field of view are presented.
El documento US 2010/0090964 A1 divulga una arquitectura de interfaz de usuario (UI, user interface) para monitorizar una posición de un objeto selector a medida que el objeto selector realiza un sobrevuelo, y modificar una porción de la representación de UI que sustancialmente está centrada en la coordenada que se determina basándose en la posición. La modificación de una porción de la representación de UI incluye poner en práctica una lupa virtual, o cambiar los atributos (por ejemplo, el color, el contraste, el brillo o RGB) en la porción de la representación de UI.US 2010/0090964 A1 discloses a user interface architecture (UI, user interface) for monitoring a position of a selector object as the selector object performs a flyby, and modifying a portion of the UI representation that is substantially centered on the coordinate that is determined based on the position. Modifying a portion of the UI representation includes implementing a virtual magnifying glass, or changing the attributes (e.g., color, contrast, brightness, or RGB) in the portion of the UI representation.
El documento US 2010/026723 A1 divulga un sistema de interfaz informática que comprende una pantalla de interfaz de usuario que está configurada para representar un contenido visual y un sistema de entrada que está configurado para detectar una presencia de un objeto de entrada dentro de una distancia umbral a lo largo de un eje normal de la pantalla de interfaz de usuario. El sistema comprende adicionalmente un controlador gráfico que está configurado para ampliar una porción del contenido visual que está ubicada en una ubicación aproximada de una base del eje normal en la pantalla de interfaz de usuario.US 2010/026723 A1 discloses a computer interface system comprising a user interface screen that is configured to represent a visual content and an input system that is configured to detect a presence of an input object within a distance threshold along a normal axis of the user interface screen. The system additionally comprises a graphic controller that is configured to extend a portion of the visual content that is located at an approximate location of a normal axis base on the user interface screen.
SumarioSummary
En el presente documento se describen técnicas y sistemas para habilitar una interacción “basada en sobrevuelo” con un contenido que se representa en una pantalla de un dispositivo de visualización. El término “sobrevuelo”, (que a veces se denomina toque “tridimensional (3D)”) se usa para describir una condición en la que un objeto está situado delante de, pero no en contacto con, la superficie delantera de la pantalla, y se encuentra dentro de un volumen o espacio en 3D previamente determinado delante de la pantalla. Por consiguiente, un objeto que está realizando un sobrevuelo se puede definir como un objeto que está situado delante de la pantalla del dispositivo informático dentro del espacio en 3D previamente determinado sin entrar en realidad en contacto con la superficie delantera de la pantalla. Las dimensiones del espacio en 3D en el que están restringidas las interacciones de sobrevuelo y, en particular, una dimensión que es perpendicular con respecto a la superficie delantera de la pantalla, puede depender del tamaño de la pantalla y /o el contexto en el que se usa la pantalla, tal como se describirá con más detalle en lo sucesivo.This document describes techniques and systems for enabling a "flyby-based" interaction with content that is represented on a screen of a display device. The term "overflight," (sometimes referred to as "three-dimensional (3D)" touch) is used to describe a condition in which an object is located in front of, but not in contact with, the front surface of the screen, and is located within a volume or 3D space previously determined in front of the screen. Accordingly, an object that is performing a flyby can be defined as an object that is located in front of the screen of the computing device within the previously determined 3D space without actually coming into contact with the front surface of the screen. The dimensions of the 3D space in which overflight interactions are restricted and, in particular, a dimension that is perpendicular to the front surface of the screen, may depend on the size of the screen and / or the context in which the screen is used, as will be described in more detail hereinafter.
En algunas formas de realización, un proceso de habilitación de una interacción basada en sobrevuelo con un contenido incluye representar el contenido en una pantalla, detectar un objeto delante de, pero no en contacto con, una superficie delantera de la pantalla, y en respuesta a detectar el objeto, determinar una ubicación en la superficie delantera de la pantalla que está separada una distancia lo más corta con respecto al objeto en relación con las distancias desde el objeto hasta otras ubicaciones en la superficie delantera. La ubicación determinada en la superficie delantera de la pantalla se puede usar entonces para determinar una porción del contenido que se representa en la ubicación o dentro de una distancia umbral con respecto a la ubicación, y una ventana ampliada de la porción del contenido se puede representar entonces en una región de la pantalla. El proceso de habilitación de una interacción basada en sobrevuelo con un contenido incluye adicionalmente determinar que el objeto se ha movido por debajo de una velocidad previamente determinada a través de la superficie delantera de la pantalla al tiempo que se mantiene la relación de separación con la superficie delantera de la pantalla y, en respuesta, mover la ventana ampliada con el objeto a través de la superficie delantera de la pantalla a otra región de la pantalla. La ventana ampliada, después del movimiento, contiene otra porción del contenido que se representa en, o dentro de una distancia umbral con respecto a, una ubicación nueva en la superficie delantera de la pantalla que se corresponde con una posición del objeto después de que el objeto se haya movido a través de la superficie delantera de la pantalla. En algunas formas de realización, la porción del contenido dentro de la ventana ampliada es accionable mediante la respuesta a una entrada de usuario cuando la entrada de usuario se proporciona dentro de la ventana ampliada. En el presente documento también se divulgan algunos sistemas y medios legibles por ordenador para poner en práctica el proceso que se ha mencionado en lo que antecede.In some embodiments, a process of enabling an overflight-based interaction with content includes representing the content on a screen, detecting an object in front of, but not in contact with, a front surface of the screen, and in response to detecting the object, determining a location on the front surface of the screen that is spaced a shortest distance from the object in relation to the distances from the object to other locations on the front surface. The determined location on the front surface of the screen can then be used to determine a portion of the content that is represented at the location or within a threshold distance with respect to the location, and an enlarged window of the content portion can be represented then in a region of the screen. The process of enabling an overflight-based interaction with a content further includes determining that the object has moved below a predetermined velocity through the front surface of the screen while maintaining the separation relationship with the surface front of the screen and, in response, move the magnified window with the object across the front surface of the screen to another region of the screen. The enlarged window, after the movement, contains another portion of the content that is represented at, or within a threshold distance with respect to, a new location on the front surface of the screen that corresponds to a position of the object after the object has moved through the front surface of the screen. In some embodiments, the portion of the content within the enlarged window is operable by response to a user input when the user input is provided within the enlarged window. Some computer-readable systems and media are also disclosed in this document to implement the process mentioned above.
Mediante la representación de una ventana ampliada en una región de la pantalla en respuesta a detectar un objeto que está realizando un sobrevuelo delante de la pantalla, un usuario puede experimentar una exploración y una navegación potenciadas de un contenido representado. En concreto, el contenido representado puede permanecer al nivel de acercamiento / alejamiento más bajo (es decir, con alejamiento), y el usuario puede identificar, de forma conveniente, porciones del contenido representado que son de interés para el usuario sin cambiar el nivel de acercamiento / alejamiento del contenido representado. Dicho de otra forma, la característica de ventana ampliada elimina las etapas que se requieren para realizar un movimiento de pinza sobre y acercar / alejar (y, potencialmente, realizar un movimiento panorámico de) el contenido con el fin de hallar, leer y /o seleccionar un contenido que se representa en la pantalla, ahorrar tiempo al usuario y eliminar la frustración cuando se está explorando un contenido. Tras el hallazgo de una porción interesante del contenido por medio de la ventana ampliada, el usuario puede entonces tener la capacidad de realizar un acercamiento / alejamiento hasta la porción de interés por medio de una orden de entrada de usuario. Además, la característica de ventana ampliada también posibilita que los proveedores de contenidos continúen diseñando un contenido que es rico y denso sin gastar recursos en versiones “móviles” de su contenido (por ejemplo, sitios móviles) que tienden a retirar de su sitio cierto contenido, lo que conduce, a su vez, a la pérdida de ingresos.By representing an enlarged window in a region of the screen in response to detecting an object that is performing a flyby in front of the screen, a user can experience enhanced scanning and navigation of a depicted content. In particular, the represented content can remain at the lowest approaching / departing level (ie, remoteness), and the user can conveniently identify portions of the represented content that are of interest to the user without changing the level of approach / withdrawal of the represented content. Stated another way, the extended window feature eliminates the steps required to perform a pincer movement on and zoom in / out (and, potentially, perform a panning of) the content in order to find, read and / or select a content that is represented on the screen, save the user time and eliminate frustration when a content is being scanned. After the discovery of an interesting portion of the content by means of the enlarged window, the user can then have the ability to zoom in / out to the interest portion by means of a user input command. In addition, the extended window feature also allows content providers to continue designing content that is rich and dense without spending resources on "mobile" versions of their content (for example, mobile sites) that tend to remove certain content from their site. , which leads, in turn, to the loss of income.
En algunas formas de realización, el contenido accionable que se representa en una pantalla de un dispositivo de visualización está configurado para responder a las interacciones de sobrevuelo recibidas mediante la modificación del contenido representado y /o la representación de un contenido adicional en respuesta a las interacciones de sobrevuelo detectadas. En este escenario, una interacción basada en sobrevuelo con el contenido representado se puede habilitar por medio de un proceso que incluye representar un contenido en una pantalla, detectar un objeto delante de, pero no en contacto con, una superficie delantera de la pantalla, y en respuesta a detectar el objeto, identificar un evento de puntero que está asociado con una porción del contenido debajo del objeto. Una función relacionada con la representación que está asociada con el evento de puntero identificado se puede determinar y llevar a cabo para modificar la porción representada del contenido y /o representar un contenido adicional en la pantalla. En algunas formas de realización, la interacción de sobrevuelo a partir del objeto se puede proporcionar dentro de la ventana ampliada de tal modo que la porción del contenido en la ventana ampliada se modifica y / o un contenido adicional se representa dentro de la ventana ampliada como la misma lo sería fuera de la ventana ampliada. In some embodiments, the actionable content that is represented on a display of a display device is configured to respond to the overflight interactions received by modifying the depicted content and / or representing additional content in response to the interactions overflight detected. In this scenario, an overflight based interaction with the represented content can be enabled by means of a process that includes representing a content on a screen, detecting an object in front of, but not in contact with, a front surface of the screen, and In response to detecting the object, identify a pointer event that is associated with a portion of the content below the object. A function related to the representation that is associated with the identified pointer event can be determined and carried out to modify the represented portion of the content and / or to represent additional content on the screen. In some embodiments, the overflight interaction from the object can be provided within the enlarged window such that the portion of the content in the enlarged window is modified and / or additional content is represented within the enlarged window as it would be the same outside the enlarged window.
El presente sumario se proporciona para presentar una selección de conceptos en una forma simplificada que se describe adicionalmente en lo sucesivo en la descripción detallada. El presente sumario no tiene por objeto identificar características clave o características esenciales de la materia objeto reivindicada, ni se tiene por objeto que se use para limitar el alcance de la materia objeto reivindicada.The present summary is provided to present a selection of concepts in a simplified form which is further described hereinafter in the detailed description. The present summary is not intended to identify key characteristics or essential characteristics of the subject matter claimed, nor is it intended to be used to limit the scope of the subject matter claimed.
Breve descripción de los dibujosBRIEF DESCRIPTION OF THE DRAWINGS
La descripción detallada se describe con referencia a las figuras adjuntas. En las figuras, el dígito o dígitos más a la izquierda de un número de referencia identifica o identifican la figura en la que aparece por primera vez el número de referencia. Los mismos números de referencia en diferentes figuras indican elementos similares o idénticos.The detailed description is described with reference to the attached figures. In the figures, the digit or digits to the left of a reference number identifies or identifies the figure in which the reference number appears for the first time. The same reference numbers in different figures indicate similar or identical elements.
La figura 1 ilustra un sistema informático a modo de ejemplo que comprende un dispositivo informático configurado para habilitar una interacción basada en sobrevuelo con un contenido representado.Figure 1 illustrates an exemplary computer system comprising a computing device configured to enable an overflight-based interaction with a depicted content.
La figura 2 ilustra un entorno de sistema informático a modo de ejemplo que muestra un dispositivo informático a modo de ejemplo que está configurado para recibir un contenido a partir de un proveedor o proveedores de contenidos ubicados de forma remota.Figure 2 illustrates an exemplary computer system environment showing an exemplary computing device that is configured to receive content from a remotely located content provider or providers.
La figura 3A ilustra una vista en alzado frontal de un dispositivo informático a modo de ejemplo que tiene una pantalla a modo de ejemplo que representa un contenido accionable, estando configurado el dispositivo informático para habilitar una interacción basada en sobrevuelo con el contenido representado.Figure 3A illustrates a front elevation view of an exemplary computer device having an exemplary screen representing an operable content, the computer device being configured to enable an overflight-based interaction with the displayed content.
La figura 3B ilustra una vista en alzado lateral del dispositivo informático a modo de ejemplo de la figura 3A. La figura 3C ilustra la vista en alzado frontal del dispositivo informático a modo de ejemplo de la figura 3A cuando un objeto está realizando un sobrevuelo delante de la pantalla del dispositivo informático.Figure 3B illustrates a side elevational view of the exemplary computer device of Figure 3A. Figure 3C illustrates the front elevational view of the exemplary computer device of Figure 3A when an object is performing a flyby in front of the screen of the computing device.
La figura 3D ilustra la vista en alzado lateral del dispositivo informático a modo de ejemplo de la figura 3B cuando el objeto de la figura 3C está realizando un sobrevuelo delante de la pantalla del dispositivo informático.Figure 3D illustrates the side elevational view of the exemplary computer device of Figure 3B when the object of Figure 3C is performing a flyby in front of the screen of the computing device.
La figura 3E ilustra la vista en alzado frontal del dispositivo informático a modo de ejemplo cuando se representa una ventana ampliada en una región de la pantalla en respuesta a una interacción de sobrevuelo detectada a partir del objeto.3E illustrates the front elevational view of the computing device by way of example when an enlarged window is represented in a region of the screen in response to a flyby interaction detected from the object.
La figura 4 ilustra una vista en alzado frontal del dispositivo informático a modo de ejemplo de las figuras 3A - 3E que muestra una entrada de usuario que es proporcionada por el objeto dentro de la ventana ampliada.Figure 4 illustrates a front elevation view of the exemplary computer device of Figures 3A-3E showing a user input that is provided by the object within the enlarged window.
La figura 5A ilustra una vista en alzado frontal del dispositivo informático a modo de ejemplo de las figuras 3 -4 que muestra el objeto moviéndose a través de una superficie delantera de la pantalla y la ventana ampliada moviéndose con el objeto.Figure 5A illustrates a front elevational view of the exemplary computer device of Figures 3-4 showing the object moving across a front surface of the screen and the enlarged window moving with the object.
La figura 5B ilustra una vista en alzado lateral parcial del dispositivo informático a modo de ejemplo y el objeto en movimiento de la figura 5A.Figure 5B illustrates a partial side elevation view of the exemplary computer device and the moving object of Figure 5A.
La figura 6 ilustra una vista en alzado frontal del dispositivo informático a modo de ejemplo que muestra una entrada de usuario que es proporcionada por el objeto dentro de la ventana ampliada.Figure 6 illustrates a front elevational view of the exemplary computer device showing a user input that is provided by the object within the enlarged window.
La figura 7A ilustra una vista en alzado lateral parcial y una vista en alzado frontal parcial del dispositivo informático a modo de ejemplo que muestra un objeto que está realizando un sobrevuelo a una primera distancia con respecto a la superficie delantera de la pantalla, así como un primer nivel de ampliación de la ventana ampliada.Figure 7A illustrates a partial side elevation view and a partial front elevation view of the exemplary computer device showing an object that is performing a flyby at a first distance from the front surface of the screen, as well as a first level of enlargement of the enlarged window.
La figura 7B ilustra las vistas en alzado frontal y lateral parcial del dispositivo informático a modo de ejemplo que muestra el objeto que está realizando un sobrevuelo a una segunda distancia con respecto a la superficie delantera de la pantalla, así como un segundo nivel de ampliación de la ventana ampliada.Figure 7B illustrates the partial front and side elevational views of the exemplary computer device showing the object that is performing a flyby at a second distance from the front surface of the screen, as well as a second level of magnification of the the enlarged window.
La figura 8A ilustra una vista en alzado frontal del dispositivo informático a modo de ejemplo que muestra el objeto moviéndose desde el interior de un área de control de un explorador hasta una posición fuera de un límite del área de control, dando lugar a que la ventana ampliada desaparezca de la pantalla.Fig. 8A illustrates a front elevational view of the exemplary computing device showing the object moving from inside a control area of a scanner to a position outside a boundary of the control area, resulting in the window expanded disappears from the screen.
La figura 8B ilustra una vista en alzado lateral del dispositivo informático a modo de ejemplo y el objeto en movimiento de la figura 8A.Figure 8B illustrates a side elevational view of the exemplary computer device and the moving object of Figure 8A.
La figura 9 ilustra una vista en alzado frontal del dispositivo informático a modo de ejemplo que muestra el objeto moviéndose desde una posición cerca del límite de un área de control en la pantalla hasta una posición más cercana al límite, dando lugar a que el contenido dentro de la ventana ampliada realice un movimiento panorámico mientras la ventana ampliada permanece estacionaria dentro de una región en la pantalla.Figure 9 illustrates a front elevation view of the exemplary computing device showing the object moving from a position near the boundary of a control area on the screen to a position closer to the boundary, resulting in the content within from the enlarged window, perform a panoramic movement while the enlarged window remains stationary within a region on the screen.
La figura 10A ilustra una vista en alzado frontal parcial del dispositivo informático a modo de ejemplo que muestra el objeto proporcionando una entrada basada en toque en una ubicación en la pantalla.Fig. 10A illustrates a partial front elevation view of the exemplary computing device showing the object providing a touch-based entry to a location on the screen.
La figura 10B ilustra una vista en alzado lateral parcial del dispositivo informático a modo de ejemplo y el objeto de la figura 10A que muestra el objeto proporcionando la entrada basada en toque en la ubicación.Fig. 10B illustrates a partial side elevation view of the exemplary computing device and the object of Fig. 10A showing the object providing touch-based input to the location.
La figura 10C ilustra una vista en alzado frontal parcial del dispositivo informático a modo de ejemplo de las figuras 10A y 10B después de la recepción de la entrada basada en toque que muestra una porción acercada del contenido que se corresponde con la ubicación en la que se recibió la entrada basada en toque.Fig. 10C illustrates a partial front elevational view of the exemplary computing device of Figs. 10A and 10B after receipt of the touch-based input showing an approximate portion of the content corresponding to the location in which it is placed; He received the touch-based entry.
La figura 11 ilustra una vista en alzado frontal parcial del dispositivo informático a modo de ejemplo que muestra el objeto que sobrevuela por encima de un elemento interactivo en la pantalla para dar lugar a que se lleve a cabo una función relacionada con la representación en respuesta al objeto que está realizando un sobrevuelo. La figura 12 es un diagrama de flujo de un proceso ilustrativo para detectar un objeto que está realizando un sobrevuelo y, en respuesta, representar una ventana ampliada con un contenido accionable en la misma.Fig. 11 illustrates a partial front elevational view of the exemplary computing device showing the object hovering above an interactive element on the screen to cause a performance-related function to be performed in response to the object that is making an overflight. Figure 12 is a flow diagram of an illustrative process for detecting an object that is performing a flyby and, in response, representing an enlarged window with an actuatable content therein.
La figura 13 es un diagrama de flujo de un proceso ilustrativo para detectar el movimiento de un objeto que está realizando un sobrevuelo y, en respuesta, mover una ventana ampliada en una pantalla con el objeto que está realizando un sobrevuelo.Figure 13 is a flow diagram of an illustrative process for detecting the movement of an object that is performing a flyby and, in response, moving an enlarged window on a screen with the object that is making a flyby.
La figura 14 es un diagrama de flujo de un proceso ilustrativo para cambiar un nivel de ampliación del contenido dentro de una ventana ampliada en respuesta al movimiento de un objeto en una dirección perpendicular con respecto a una superficie delantera de una pantalla.Figure 14 is a flowchart of an illustrative process for changing a level of content expansion within an enlarged window in response to movement of an object in a direction perpendicular to a front surface of a screen.
Descripción detalladaDetailed description
Algunas formas de realización de la presente divulgación se dirigen, entre otras cosas, a técnicas y sistemas para habilitar una interacción “basada en sobrevuelo” con un contenido que se representa en una pantalla de un dispositivo de visualización. A pesar de que en el presente documento se proporcionan ejemplos, predominantemente con referencia a un dispositivo informático móvil (por ejemplo, un teléfono inteligente), se ha de apreciar que las técnicas y sistemas no se limitan a los dispositivos móviles. Por ejemplo, los dispositivos de visualización que se pueden beneficiar de las técnicas que se divulgan en el presente documento pueden incluir, sin limitación, dispositivos móviles (por ejemplo, teléfonos inteligentes, ordenadores de tipo tableta, reproductores de medios portátiles, ordenadores ponibles, etc.), así como pantallas de televisión (TV), pantallas que se ponen en práctica dentro de vehículos en movimiento (por ejemplo, pantallas de navegación en automóviles, aeronaves, etc.), y similares. En este sentido, las pantallas que se describen en el presente documento, sobre los cuales se pueden detectar interacciones de sobrevuelo, pueden ser móviles (por ejemplo, integradas en un dispositivo informático móvil, un vehículo, etc.) o estar situados (por ejemplo, pantallas montadas en pared).Some embodiments of the present disclosure are directed, inter alia, to techniques and systems for enabling a "flyby-based" interaction with content that is displayed on a display of a display device. Although examples are provided herein, predominantly with reference to a mobile computing device (e.g., a smartphone), it is to be appreciated that the techniques and systems are not limited to mobile devices. For example, display devices that can benefit from the techniques disclosed herein may include, without limitation, mobile devices (e.g., smart phones, tablet-type computers, portable media players, wearable computers, etc.). .), as well as television screens (TV), screens that are implemented within moving vehicles (for example, navigation screens in automobiles, aircraft, etc.), and the like. In this sense, the screens described in this document, on which overflight interactions can be detected, can be mobile (for example, integrated in a mobile computing device, a vehicle, etc.) or be located (for example , wall mounted screens).
Las características de la entrada basada en sobrevuelo que se pueden proporcionar a la diversidad de dispositivos que se contemplan en el presente documento puede variar con el tamaño del dispositivo, el contexto del uso del dispositivo, y /o el soporte físico (por ejemplo, unos sensores) que habilita tal entrada basada en sobrevuelo. Por ejemplo, una pantalla de TV en una sala de estar puede tener un tamaño de pantalla grande, puede ser estacionario, y puede utilizar un dispositivo de captación de imagen (por ejemplo, una cámara de profundidad) para detectar interacciones de sobrevuelo. En contraposición, un dispositivo móvil y pequeño, tal como un teléfono inteligente, puede utilizar un sensor o una matriz de sensores que se incrusta en la propia pantalla (por ejemplo, un sensor de pantalla táctil basado en el efecto capacitivo con unas capacidades de detección de proximidad). Se ha de apreciar que, sin importar el tipo de dispositivo, los sensores o el contexto de uso, “sobrevuelo”, tal como se usa en el presente documento, puede hacer referencia a un estado físico de un objeto que está situado dentro de un espacio en 3D previamente determinado delante de la pantalla sin entrar en realidad en contacto con la superficie delantera de la pantalla. Las dimensiones del espacio en 3D previamente determinado se pueden definir por medio de un área bidimensional (2D) en la pantalla y una distancia en una dirección perpendicular con respecto a la superficie delantera de la pantalla. En este sentido, se puede considerar que los objetos que están situados fuera del área en 2D en la pantalla, en contacto con la pantalla, o más allá de una distancia umbral en una dirección perpendicular con respecto a la superficie delantera de la pantalla, no se encuentran en un estado de sobrevuelo.The characteristics of the overflight-based entry that can be provided to the diversity of devices contemplated herein may vary with the size of the device, the context of the use of the device, and / or the physical support (e.g. sensors) that enables such entry based on overflight. For example, a TV screen in a living room may have a large screen size, may be stationary, and may use an image capture device (eg, a depth camera) to detect overflight interactions. In contrast, a small mobile device, such as a smartphone, can use a sensor or a sensor array that is embedded in the screen itself (eg, a touch screen sensor based on the capacitive effect with detection capabilities). of proximity). It should be appreciated that, regardless of the type of device, the sensors or the context of use, "overflight", as used herein, may refer to a physical state of an object that is located within a 3D space previously determined in front of the screen without actually coming into contact with the front surface of the screen. The dimensions of the previously determined 3D space can be defined by means of a two-dimensional area (2D) on the screen and a distance in a direction perpendicular to the front surface of the screen. In this sense, it can be considered that objects that are located outside the 2D area on the screen, in contact with the screen, or beyond a threshold distance in a direction perpendicular to the front surface of the screen, do not they are in a state of overflight.
Las técnicas y sistemas que se describen en el presente documento se pueden poner en práctica de una serie de formas. En lo sucesivo se proporcionan unas puestas en práctica a modo de ejemplo con referencia a las siguientes figuras.The techniques and systems described in this document can be implemented in a number of ways. In the following, implementations are provided by way of example with reference to the following figures.
Sistema informático a modo de ejemploComputer system as an example
La figura 1 ilustra un sistema informático 100 a modo de ejemplo. El sistema 100 puede incluir un dispositivo informático 102 configurado para habilitar una interacción basada en sobrevuelo con un contenido representado. El sistema 100 es meramente un sistema a modo de ejemplo para poner en práctica las técnicas que se describen en el presente documento de tal modo que las técnicas que se describen en el presente documento no se limitan a una puesta en práctica usando el sistema de la figura 1.Figure 1 illustrates a computer system 100 by way of example. The system 100 may include a computing device 102 configured to enable an overflight-based interaction with a depicted content. The system 100 is merely an exemplary system for practicing the techniques described herein in such a way that the techniques described herein are not limited to an implementation using the system of the invention. Figure 1.
El dispositivo informático 102 se puede poner en práctica como cualquier número de dispositivos informáticos (ejemplos no limitantes de los cuales se muestran en la figura 2) incluyendo un teléfono móvil (un teléfono inteligente), un ordenador de tipo tableta, un lector de libros electrónicos (e-book), un ordenador portátil, un ordenador miniportátil, una televisión, una unidad de adaptación multimedios que está acoplado a una pantalla, una consola de juegos que está acoplada con una pantalla, un dispositivo de navegación (por ejemplo, un dispositivo de sistema global de determinación de posición (GPS, global positioning system)), una pantalla montada en un vehículo, un ordenador ponible (por ejemplo, un reloj inteligente), un dispositivo médico de formación de imágenes, una cámara digital y /o un aparato de grabación de vídeo, y así sucesivamente.The computing device 102 can be implemented as any number of computing devices (non-limiting examples of which are shown in Figure 2) including a mobile phone (a smartphone), a tablet-type computer, an e-book reader (e-book), a laptop, a mini-laptop, a television, a multimedia adaptation unit that is coupled to a screen, a game console that is coupled with a screen, a navigation device (for example, a device) of a global positioning system (GPS ), a vehicle mounted display, a wearable computer (for example, a smart watch), a medical imaging device, a digital camera and / or a video recording apparatus, and so on.
El dispositivo informático 102 se puede equipar con uno o más procesadores 104 y una memoria de sistema 106. Dependiendo de la configuración y el tipo exactos de dispositivo informático, la memoria de sistema 106 puede ser volátil (por ejemplo, memoria de acceso aleatorio (RAM, random access memory)), no volátil (por ejemplo, memoria de solo lectura (ROM, read only memory), memoria flash, etc.), o una cierta combinación de las dos. La memoria de sistema 106 puede incluir, sin limitación, un sistema operativo 108, un módulo de explorador 110, unos datos de programa 112 y un almacén de contenidos local 114 a los que puede acceder el procesador o procesadores 104. El sistema operativo 108 puede incluir un marco de trabajo basado en componentes 116 que soporta componentes (incluyendo propiedades y eventos), objetos, herencia, polimorfismo, reflexión, y proporciona una interfaz de programación de aplicaciones (API, application programming interface) basada en componentes y orientada a objetos, tal como la del modelo de programación para Win32 ™ y el Marco de Trabajo .NET ™ facilitado comercialmente por la Corporación Microsoft® de Redmond, WA. La API que es proporcionada por el marco de trabajo basado en componentes 116 puede comprender un conjunto de rutinas, protocolos y /o herramientas que está asociado con el sistema operativo 108 y /o un programa de aplicación del sistema operativo 108 que proporciona una interfaz con el sistema operativo 108 y / o los programas de aplicación asociados.The computing device 102 can be equipped with one or more processors 104 and a system memory 106. Depending on the exact configuration and type of computing device, the system memory 106 can be volatile (eg, random access memory (RAM) , random access memory)), non-volatile (for example, read-only memory, flash memory, etc.), or a certain combination of the two. System memory 106 may include, without limitation, an operating system 108, a browser module 110, program data 112, and a local content store 114 that can be accessed by processor or processors 104. Operating system 108 may include a component-based framework 116 that supports components (including properties and events), objects, inheritance, polymorphism, reflection, and provides an interface for component-based, object-oriented application programming interface (API ) , such as the programming model for Win32 ™ and the .NET ™ Framework, commercially facilitated by the Microsoft® Corporation of Redmond, WA. The API that is provided by the component-based framework 116 may comprise a set of routines, protocols and / or tools that is associated with the operating system 108 and / or an application program of the operating system 108 that provides an interface with the operating system 108 and / or the associated application programs.
El sistema operativo 108 puede incluir adicionalmente un módulo de interfaz de sobrevuelo 118 configurado para habilitar una interacción basada en sobrevuelo con una pantalla del dispositivo informático 102 y el contenido que se representa en el mismo. En general, el sistema operativo 108 se puede configurar con una o más pilas para accionar una clase convencional de dispositivos de interfaz humana (HID, human interface device) (por ejemplo, teclados, ratones, etc.) así como habilitar una entrada de pantalla táctil (es decir, una entrada basada en contacto con una pantalla asociada). El módulo de interfaz de sobrevuelo 118 posibilita adicionalmente que el dispositivo informático 102 determine e interprete una entrada basada en sobrevuelo que se recibe a partir de objetos (por ejemplo, el dedo o la mano de un usuario, un lápiz, un bolígrafo, una varita, etc.) que realizan un sobrevuelo delante de una pantalla asociada, y que lleve a cabo unas funciones relacionadas con la representación que están relacionadas con la entrada basada en sobrevuelo. Con el fin de determinar e interpretar una entrada basada en sobrevuelo a partir de un objeto, el módulo de interfaz de sobrevuelo 118 se puede basar en uno o más componentes de soporte físico y / o de soporte lógico adicionales del dispositivo informático 102, tal como el módulo de explorador 110 y uno o más sensores de soporte físico del dispositivo informático 102 que están configurados para detectar un objeto que está realizando un sobrevuelo (es decir, un objeto delante de, pero sin entrar en contacto con, la pantalla del dispositivo informático 102).The operating system 108 may additionally include a flyover interface module 118 configured to enable an overflight-based interaction with a screen of the computing device 102 and the content that is depicted therein. In general, operating system 108 can be configured with one or more batteries to drive a conventional class of human interface device (HID ) (eg, keyboards, mice, etc.) as well as enabling a screen input touch (that is, an entry based on contact with an associated screen). The overflight interface module 118 further enables the computing device 102 to determine and interpret an entry based on an overflight that is received from objects (e.g., a user's finger or hand, a pencil, a pen, a wand). , etc.) that perform a flyby in front of an associated screen, and carry out functions related to the representation that are related to the entry based on overflight. In order to determine and interpret an overflight-based entry from an object, the overflight interface module 118 may be based on one or more additional hardware and / or software components of the computing device 102, such as the browser module 110 and one or more hardware sensors of the computing device 102 that are configured to detect an object that is performing a flyby (i.e., an object in front of, but without coming into contact with, the screen of the computing device) 102).
El módulo de explorador 110 se puede configurar para recibir un contenido, y para representar el contenido recibido por medio de un explorador (por ejemplo, un explorador web) en una pantalla del dispositivo informático 102. La ejecución del módulo de explorador 110 puede, por ejemplo, proporcionar acceso a un sitio web mediante la representación de páginas web que son atendidas por el sitio web en una pantalla asociada. El módulo de explorador 110 se puede configurar adicionalmente para interaccionar con el módulo de interfaz de sobrevuelo 118 por medio de la API del sistema operativo 108 para habilitar una interacción basada en sobrevuelo con un contenido que se representa por medio del explorador. El contenido que se va a representar puede comprender documentos, aplicaciones, contenido web, y similares, que se pueden recibir / a los que se puede acceder a partir del almacén de contenidos local 114 cuando el contenido se almacena de forma local en el dispositivo informático 102, o a partir de fuentes remotas, tal como a partir de los otros dispositivos informáticos 120 que se muestran en la figura 1 (por ejemplo, servidores de proveedores de contenidos).The browser module 110 may be configured to receive content, and to represent the content received by means of a browser (e.g., a web browser) on a screen of the computing device 102. The execution of the browser module 110 may, for example, provide access to a website through the representation of web pages that are served by the website in an associated screen. The browser module 110 can be further configured to interact with the overflight interface module 118 by means of the operating system API 108 to enable an overflight-based interaction with content that is represented by the browser. The content to be represented may comprise documents, applications, web content, and the like, which can be received / accessed from the local content store 114 when the content is stored locally on the computing device 102, or from remote sources, such as from the other computing devices 120 shown in Figure 1 (for example, content provider servers).
En algunas formas de realización, el contenido que es recibido por el módulo de explorador 110 puede comprender un contenido de página web basándose en código de lenguaje de marcado de hipertexto (HTML, hyper text markup language) que configura el contenido para que sea “accionable” en que el contenido sea sensible a una entrada de usuario. Cualquier lenguaje de secuencias de comandos (por ejemplo, JavaScript, Jscript, una secuencia de comandos de la Asociación Europea de Fabricantes de Ordenadores (ECMAScript, European Computer Manufacturers Association script), etc.) o programa (por ejemplo, un subprograma de Java) que sea adecuado se puede utilizar para habilitar un contenido accionable, incluyendo un contenido que se puede vincular con una funcionalidad de sobrevuelo. En este sentido, el contenido que es recibido por el módulo de explorador 110 se puede codificar con lenguajes de programación accionados por eventos para registrar unidades de escucha / manejadores de eventos en los nodos de elemento en el interior de un árbol de modelo de objetos de documento (DOM, document object model) para cualquier tipo de contenido. Un modelo de evento adecuado que se puede utilizar para hacer que el contenido sea accionable es el modelo del Consorcio para la Red Informática Mundial (W3C, World Wide Web Consortium) para eventos de puntero, incluyendo eventos de sobrevuelo.In some embodiments, the content that is received by the browser module 110 may comprise a web page content based on hypertext mark-up language (HTML ) code that configures the content to be "actionable". "In which the content is sensitive to a user input. Any scripting language (for example, JavaScript, Jscript, a script from the European Computer Manufacturers Association (ECMAScript, European Computer Manufacturers Association script), etc.) or program (for example, a Java applet) that it is suitable can be used to enable actionable content, including content that can be linked with an overflight functionality. In this regard, the content that is received by the browser module 110 can be encoded with event-driven programming languages to register listener units / event handlers in the element nodes within a model tree of objects of interest. document (DOM, document object model) for any type of content. An appropriate event model that can be used to make the content actionable is the World Wide Web Consortium (W3C ) model for pointer events, including overflight events.
En un ejemplo ilustrativo, el contenido que es recibido por el módulo de explorador 110 puede comprender un contenido de página web que incluye un texto seleccionable (es decir, accionable) que responde a una selección que se introduce mediante la modificación del texto seleccionado con resaltado, barras de redimensionamiento de selección de texto, u otra modificación basada en representación adecuada. Como otro ejemplo, el contenido en una página web puede incluir vínculos (por ejemplo, hipervínculos) a otras páginas o sitios web, botones de reproducción de vídeo o de audio para contenido de vídeo/audio incrustado, y así sucesivamente. Por consiguiente, tras la selección de tal contenido accionable, el contenido puede responder al navegar a otra página web o al reproducir archivos de vídeo / audio, de forma respectiva. Cuando ciertos eventos de sobrevuelo están asociados con porciones del contenido, esas porciones pueden ser accionables al cambiar de apariencia (es decir, una modificación de representación) o mediante la representación de un contenido adicional (por ejemplo, un menú desplegable en sentido descendente, un globo emergente con información acerca del contenido) en respuesta a que un cursor esté situado por encima del contenido, y estas modificaciones de representación y /o un contenido adicional pueden desaparecer de la pantalla cuando se hace que el cursor se mueva lejos del contenido habilitado para sobrevuelo.In an illustrative example, the content that is received by the browser module 110 may comprise a web page content that includes a selectable (ie, actionable) text that responds to a selection that is entered by modifying the selected text with highlighted , text selection resize bars, or other modification based on appropriate representation. As another example, content on a web page may include links (for example, hyperlinks) to other pages or websites, video or audio playback buttons for embedded video / audio content, and so on. Therefore, after the selection of such actionable content, the content may respond when browsing to another web page or when playing video / audio files, respectively. When certain flyby events are associated with portions of the content, those portions may be actionable by changing appearance (ie, a representation change) or by representing additional content (eg, a drop down menu, a pop-up balloon with information about the content) in response to a cursor being positioned above the content, and these rendering modifications and / or additional content may disappear from the screen when the cursor is moved away from the content enabled overflight.
El dispositivo informático 102 también puede incluir dispositivos adicionales de almacenamiento de datos (extraíbles y / o no extraíbles) tales como, por ejemplo, discos magnéticos, discos ópticos o cinta. Tal almacenamiento adicional se ilustra en la figura 1 por medio del almacenamiento extraíble 122 y el almacenamiento no extraíble 124. Los medios legibles por ordenador, tal como se usan en el presente documento, pueden incluir, al menos, dos tipos de medios legibles por ordenador, en concreto, medios de almacenamiento informático y medios de comunicación. Los medios de almacenamiento informático pueden incluir medios volátiles y no volátiles, extraíbles y no extraíbles que se ponen en práctica en cualquier procedimiento o tecnología para el almacenamiento de información, tal como instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos. La memoria de sistema 106, el almacenamiento extraíble 122 y el almacenamiento no extraíble 124 son, todos ellos, ejemplos de medios de almacenamiento informático. Los medios de almacenamiento informático incluyen, pero sin limitarse a, RAM, ROM, memoria de solo lectura eléctricamente borrable y programable (EEPROm , electrically erasable programmable read only memory), memoria flash u otra tecnología de memoria, disco compacto - memoria de solo lectura (CD-ROM, compact disk read -only memory), discos versátiles digitales (DVD, digital versatile disk), u otro almacenamiento óptico, casetes magnéticos, cinta magnética, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que no sea transmisión que se pueda usar para almacenar la información deseada y al que se pueda acceder por medio del dispositivo informático 102. Cualquier medio de almacenamiento informático de ese tipo puede ser parte del dispositivo 102.The computing device 102 may also include additional data storage devices (removable and / or non-removable) such as, for example, magnetic disks, optical disks or tape. Such additional storage is illustrated in Figure 1 by means of removable storage 122 and non-removable storage 124. Computer readable media, as used herein, may include at least two types of computer readable media, namely, computer storage media and communication media. The computer storage means may include volatile and non-volatile, extractable and non-extractable means which are put into practice in any method or technology for storing information, such as computer-readable instructions, data structures, program modules or other data. . The system memory 106, the removable storage 122 and the non-removable storage 124 are all examples of computer storage media. The Computer storage media include, but not limited to, RAM, ROM, read only memory electrically erasable programmable (EEPRO m, electrically erasable programmable read only memory), flash memory or other memory technology, compact disk - only memory reading (CD-ROM, compact disk read -only memory), digital versatile discs (DVD, digital versatile disk), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other means that is not a transmission that can be used to store the desired information and that can be accessed by means of the computing device 102. Any computer storage means of that type can be part of the device 102.
En algunas formas de realización, cualquiera o la totalidad de la memoria de sistema 106, el almacenamiento extraíble 122 y el almacenamiento no extraíble 124 pueden almacenar instrucciones de programación, estructuras de datos, módulos de programa y otros datos, que, cuando son ejecutados por el procesador o procesadores 104, ponen en práctica parte o la totalidad de los procesos que se describen en el presente documento.In some embodiments, any or all of the system memory 106, the removable storage 122 and the non-removable storage 124 may store programming instructions, data structures, program modules and other data, which, when executed by the processor or processors 104, implement part or all of the processes described herein.
En contraposición, los medios de comunicación pueden materializar instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos en una señal de datos modulada, tal como una onda portadora, u otro mecanismo de transmisión. Tal como se define en el presente documento, los medios de almacenamiento informático no incluyen medios de comunicación.In contrast, the communication means may realize computer-readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave, or other transmission mechanism. As defined herein, the computer storage means does not include means of communication.
El dispositivo informático 102 también puede incluir uno o más dispositivos de entrada 126 tales como un teclado, dispositivos apuntadores (por ejemplo, un ratón, un panel táctil, una palanca de control, etc.), un bolígrafo, un lápiz o una varita, una pantalla táctil (por ejemplo, capacitiva, resistiva, de infrarrojos, de ondas acústicas superficiales (SAW, surface acoustic wave), óptica), una cámara (por ejemplo, un sensor de 3D), un sensor de proximidad, un micrófono, etc., a través de los cuales un usuario puede introducir órdenes e información en el dispositivo informático 102. A pesar de que en la figura 1 se muestra que el dispositivo o dispositivos de entrada 126 se encuentran dentro del dispositivo informático 102, se ha de apreciar que el dispositivo o dispositivos de entrada 126 se pueden incrustar físicamente dentro del dispositivo informático 102 (por ejemplo, una pantalla táctil), o el dispositivo o dispositivos de entrada 126 pueden ser dispositivos periféricos que se acoplan de forma extraíble con el dispositivo informático 102 a través de una conexión o bien cableada o bien inalámbrica (por ejemplo, un dispositivo de entrada basado en cámara periférico). Por consiguiente, el dispositivo o dispositivos de entrada 126 se puede acoplar con el procesador o procesadores 104 a través de una conexión cableada (por ejemplo, una interfaz de bus serie universal (USB, universal serial bus)), o una interfaz de entrada de usuario inalámbrica tal como WiFi o Bluetooth ®.The computing device 102 may also include one or more input devices 126 such as a keyboard, pointing devices (eg, a mouse, a touchpad, a joystick, etc.), a pen, a pencil or a wand, a touch screen (for example, capacitive, resistive, infrared, surface acoustic wave (SAW ), optical), a camera (for example, a 3D sensor), a proximity sensor, a microphone, etc. ., through which a user can enter commands and information into the computing device 102. Although Figure 1 shows that the input device or devices 126 are within the computing device 102, it is to be appreciated that the input device (s) 126 may be physically embedded within the computing device 102 (eg, a touch screen), or the input device (s) 126 may be devices eg Rifles that are removably coupled to the computing device 102 through a wired or wireless connection (e.g., an input device based on a peripheral camera). Accordingly, the input device (s) 126 may be coupled to the processor (s) 104 through a wired connection (eg, a universal serial bus (USB ) interface ), or an input interface of wireless user such as WiFi or Bluetooth ®.
En algunas formas de realización, el dispositivo o dispositivos de entrada 126 pueden incluir uno o más sensores basados en proximidad 128 que están configurados para detectar un objeto que está realizando un sobrevuelo delante de una pantalla del dispositivo informático 102. El sensor o sensores basados en proximidad 128 posibilitan que el dispositivo informático 102 diferencie entre eventos de toque basados en contacto e interacciones sin contacto (es decir, de sobrevuelo), en lugar de meramente detectar los objetos cerca de la pantalla y resolver el objeto detectado como un evento de toque basado en contacto. En este sentido, se puede considerar que el dispositivo informático 102 es “capaz de sobrevuelo” debido a que el mismo puede detectar interacciones de sobrevuelo e interacciones de toque / contacto de una forma mutuamente exclusiva.In some embodiments, the input device or devices 126 may include one or more proximity-based sensors 128 that are configured to detect an object that is performing a flyby in front of a screen of the computing device 102. The sensor or sensors based on proximity 128 enables the computing device 102 to differentiate between touch events based on contact and non-contact interactions (ie, overflight), rather than merely sensing the objects near the screen and resolving the detected object as a touch-based event in contact. In this regard, it can be considered that the computing device 102 is "capable of overflight" because it can detect overflight interactions and touch / contact interactions in a mutually exclusive manner.
El sensor o sensores de proximidad 128 pueden incluir cualquier tecnología adecuada de detección de proximidad. Un ejemplo ilustrativo de una tecnología adecuada de detección de proximidad es un sensor capacitivo o una matriz de sensores capacitivos que se configura para detectar un objeto que está realizando un sobrevuelo delante de la pantalla del dispositivo informático 102. Un sensor capacitivo o una matriz de sensores capacitivos de ese tipo puede incluir una rejilla bidimensional (2D) de electrodos que sustancialmente abarca un área de la pantalla del dispositivo informático 102 con una tensión que se aplica a los electrodos de tal modo que los electrodos están configurados para medir los cambios de capacidad en cada electrodo. Los cambios de capacidad en los electrodos se pueden ver afectados por un objeto (tal como un dedo humano) en las proximidades de los electrodos de tal modo que una ubicación en la superficie delantera de la pantalla a la que el objeto se encuentra más cercano se puede indicar con precisión basándose en unos electrodos que miden los cambios de capacidad correspondientes. Con el fin de detectar un objeto que está realizando un sobrevuelo, un sensor capacitivo o una matriz de sensores capacitivos se puede basar al menos en parte en la capacidad propia, que se sabe que proporciona una detección de señal más fuerte en comparación con los sensores de capacidad mutua de tal modo que un objeto se puede detectar delante de la superficie delantera de la pantalla sin que el objeto entre en contacto con la pantalla. Un sensor de proximidad 128 basándose en una combinación de la capacidad propia y la capacidad mutua puede disfrutar de los beneficios de ambos tipos de sensores capacitivos, en concreto, detección de proximidad y múltiples toques (es decir, detección de múltiples ubicaciones de toque al mismo tiempo), de forma respectiva. En algunos casos, el sensor o sensores de proximidad 128 se pueden configurar para detectar un objeto delante de la pantalla que se encuentra a una distancia dentro del intervalo de aproximadamente 0,001 pulgadas (0,0254 mm) a aproximadamente 8 pulgadas (20,32 cm) con respecto a la superficie delantera de la pantalla en una dirección perpendicular con respecto a la superficie delantera.The proximity sensor or sensors 128 may include any suitable proximity detection technology. An illustrative example of a suitable proximity detection technology is a capacitive sensor or a capacitive sensor array that is configured to detect an object that is performing a flyby in front of the screen of the computing device 102. A capacitive sensor or a sensor array Such capacitors may include a two-dimensional grid (2D) of electrodes that substantially encompasses an area of the screen of the computing device 102 with a voltage that is applied to the electrodes such that the electrodes are configured to measure the capacity changes in each electrode. Changes in capacity at the electrodes can be affected by an object (such as a human finger) in the vicinity of the electrodes so that a location on the front surface of the screen to which the object is closest is can indicate with precision based on electrodes that measure the corresponding capacity changes. In order to detect an object that is performing a flyby, a capacitive sensor or a matrix of capacitive sensors can be based at least in part on the own capacity, which is known to provide a stronger signal detection compared to the sensors of mutual capacity in such a way that an object can be detected in front of the front surface of the screen without the object coming into contact with the screen. A proximity sensor 128 based on a combination of own capacity and mutual capacity can enjoy the benefits of both types of capacitive sensors, namely, proximity detection and multiple touches (i.e. detection of multiple touch locations thereto). time), respectively. In some cases, the proximity sensor or sensors 128 may be configured to detect an object in front of the screen that is within a range of about 0.001 inch (0.0254 mm) to approximately 8 inches (20.32 cm) with respect to the front surface of the screen in a direction perpendicular to the front surface.
Un ejemplo de un dispositivo de entrada de relativamente “largo alcance” 126 que está configurado para detectar un objeto que está situado delante de la pantalla del dispositivo informático 102 es una cámara de profundidad (por ejemplo, el sensor Kinect® que se usa con el sistema de consola Xbox® facilitado por la Corporación Microsoft® de Redmond, Washington). Una cámara de profundidad se puede configurar para captar datos de imagen e información de profundidad usando cualquier técnica adecuada tal como tiempo de vuelo (ToF, time of flight), formación de imágenes de luz estructurada, formación de imágenes en estéreo, y similares. En algunos casos, el sensor o sensores de proximidad 128 con unas capacidades de detección de mayor alcance se pueden configurar para detectar un objeto delante de la pantalla que se encuentra a una distancia dentro del intervalo de aproximadamente 20 pulgadas (50,80 cm) a aproximadamente 170 pulgadas (431,8 cm) con respecto a la superficie delantera de la pantalla.An example of a relatively "long-range" input device 126 that is configured to detect an object that is located in front of the screen of the computing device 102 is a depth camera (for example, the Kinect® sensor used with the Xbox® console system facilitated by the Microsoft® Corporation of Redmond, Washington). A depth camera can be configured to capture image data and depth information using any suitable technique such as time of flight (ToF ), structured light image formation, stereo imaging, and the like. In some cases, the proximity sensor or sensors 128 with longer range detection capabilities can be configured to detect an object in front of the screen that is within a range of about 20 inches (50.80 cm) to approximately 170 inches (431.8 cm) with respect to the front surface of the screen.
Se ha de apreciar que el dispositivo o dispositivos de entrada 126 no se limitan a los ejemplos que se han descrito en lo que antecede, y cualesquiera sensor o sensores de proximidad 128 adecuados se pueden usar para detectar un objeto que está realizando un sobrevuelo delante de una pantalla del dispositivo informático 102, incluyendo, pero sin limitarse a, sensores inductivos, magnéticos, de ultrasonidos, u otros sensores de proximidad 128 adecuados. It is to be appreciated that the input device or devices 126 are not limited to the examples described above, and any suitable proximity sensors or sensors 128 may be used to detect an object that is performing a flyby in front of a screen of the computing device 102, including, but not limited to, inductive, magnetic, ultrasonic sensors, or other suitable proximity sensors 128.
El dispositivo informático 102 también puede incluir un dispositivo o dispositivos de salida 130, tal como una pantalla 132 (por ejemplo, una pantalla de cristal líquido (LCD, liquid crystal display), de plasma, de retroproyección, etc.), uno o más altavoces, una impresora o cualquier otro dispositivo de salida adecuado que esté acoplado de forma comunicativa con el procesador o procesadores 104. En general, el dispositivo o dispositivos de salida 130 se pueden configurar para proporcionar una salida a un usuario del dispositivo informático 102. En algunas formas de realización, el dispositivo o dispositivos de salida 130 se pueden integrar en el dispositivo informático 102 (por ejemplo, una pantalla incrustada 132), o proporcionarse de forma externa como un dispositivo de salida periférico 130 (por ejemplo, una pantalla periférica 132).The computing device 102 may also include an output device or devices 130, such as a screen 132 (e.g., a liquid crystal display (LCD ), plasma, back-projection, etc.), one or more loudspeakers, a printer or any other suitable output device that is communicatively coupled to the processor or processors 104. In general, the output device or devices 130 can be configured to provide an output to a user of the computing device 102. In some embodiments, the output device (s) 130 may be integrated into the computing device 102 (eg, an embedded display 132), or provided externally as a peripheral output device 130 (eg, a peripheral display 132). ).
La figura 1 ilustra una representación en pantalla 134 a modo de ejemplo que se puede emitir por medio de la pantalla 132 del dispositivo informático 102 cuando un contenido se representa en la pantalla 132. En el ejemplo de la figura 1, la representación en pantalla 134 representa un explorador web que representa un contenido de página web. Por consiguiente, la representación en pantalla 134 puede incluir una barra de navegación 136 que tiene un campo de dirección para introducir un localizador uniforme de recursos (URL, uniform resource locator) de un sitio web (en el presente caso, “www.sitioweb.com”) y diversos otros controles que pueden dotar a un usuario con una funcionalidad de exploración para abrir ventanas de explorador adicionales, refrescar el contenido de página web, y así sucesivamente. La representación en pantalla 134 puede incluir adicionalmente el contenido 138 dentro de un área de control del explorador que se representa en la pantalla 132. Cabe destacar que el contenido 138 en el ejemplo de la figura 1 es “rico y denso” debido a que la página web se ha diseñado para una representación óptima en una pantalla de ordenador de sobremesa.Figure 1 illustrates an exemplary on-screen representation 134 that can be broadcast by means of the screen 132 of the computing device 102 when a content is displayed on the screen 132. In the example of Figure 1, the screen representation 134 represents a web browser that represents a web page content. Accordingly, the screen representation 134 may include a navigation bar 136 which has an address field for introducing a uniform resource locator (URL ) of a website (in the present case, "www.sitioweb. com ") and various other controls that can provide a user with exploration functionality to open additional browser windows, refresh web page content, and so on. The screen representation 134 may additionally include the content 138 within a browser control area which is displayed on the screen 132. It should be noted that the content 138 in the example of Figure 1 is "rich and dense" because the Website has been designed for optimal representation on a desktop computer screen.
La figura 1 ilustra adicionalmente un área 140 en una superficie delantera de la pantalla 132 en la que se detecta que un objeto está sobrevolando por encima de la superficie delantera de la pantalla 132. Tal como se analizará con más detalle en lo sucesivo, el área 140 se puede resolver como una ubicación puntual en la superficie delantera de la pantalla 132 que es representativa de la ubicación del objeto en relación con la pantalla cuando el objeto está realizando un sobrevuelo delante de la pantalla. El sensor o sensores de proximidad 128 pueden detectar el objeto que está realizando un sobrevuelo, y el módulo de interfaz de sobrevuelo 118 puede determinar que la posición de los objetos delante de la pantalla 132 que se representa por medio del área 140 se encuentra en una ubicación dentro de un área de control en la que se habilita una funcionalidad de sobrevuelo. En algunas formas de realización, el módulo de explorador 110 puede interaccionar con el sistema operativo 108 por medio de la API del sistema operativo 108 con el fin de especificar el área de control como que limita el contenido 138, pero no la barra de navegación 136. El módulo de explorador 110 puede especificar adicionalmente un nivel de acercamiento / alejamiento del contenido representado 138 (en este caso, el contenido 138 se puede alejar al nivel de acercamiento / alejamiento más bajo). Con esta información, el módulo de interfaz de sobrevuelo 118 puede determinar que un contenido representado se encuentra al nivel de acercamiento / alejamiento más bajo y que el objeto está realizando un sobrevuelo dentro del área de control del explorador web de tal modo que un evento de sobrevuelo se puede detectar con respecto al contenido representado 138.Figure 1 further illustrates an area 140 on a front surface of the screen 132 in which it is detected that an object is flying over the front surface of the screen 132. As will be discussed in more detail hereinafter, the area 140 can be resolved as a point location on the front surface of the screen 132 which is representative of the location of the object in relation to the screen when the object is performing a flyby in front of the screen. The proximity sensor or sensors 128 can detect the object that is performing a flyby, and the flyover interface module 118 can determine that the position of the objects in front of the screen 132 that is represented by the area 140 is in a location within a control area in which an overflight functionality is enabled. In some embodiments, the browser module 110 may interact with the operating system 108 by means of the operating system API 108 in order to specify the control area as limiting the content 138, but not the navigation bar 136. The browser module 110 may additionally specify a zoom-in / zoom-out level of the displayed content 138 (in this case, the content 138 may be moved away to the lower zoom-in level). With this information, the overflight interface module 118 can determine that a represented content is at the lowest approach / departure level and that the object is performing a flyby within the control area of the web browser in such a way that an event of Overflight can be detected with respect to the represented content 138.
Cuando se detecta un evento de sobrevuelo, el módulo de interfaz de sobrevuelo 118 puede dar lugar a que se lleve a cabo una función relacionada con la representación que se refleja en la pantalla 130 del dispositivo informático 102. Las funciones relacionadas con la representación que se pueden llevar a cabo en respuesta a la detección de un evento de sobrevuelo incluyen, sin limitación, representar una ventana ampliada 142 de una porción del contenido 138 (por ejemplo, una porción del contenido 138 debajo del objeto), modificar la representación de la porción del contenido 138, y /o representar un contenido adicional en asociación con la porción del contenido 138. La porción del contenido 138 que se representa dentro de la ventana ampliada 142 de la figura 1 puede representar una porción del contenido 138 que se representa en una ubicación dentro del área 140 o dentro de una distancia umbral con respecto a una ubicación de ese tipo (por ejemplo, justo por encima de la ubicación del objeto). Se ha de apreciar que la capacidad de interacción de sobrevuelo del dispositivo informático 102 se puede “activar” o “desactivar” por medio de ajustes de usuario o una configuración de usuario similar del dispositivo 102 en casos en los que no se desea una interacción de sobrevuelo.When an overflight event is detected, the overflight interface module 118 can result in a representation-related function being performed which is reflected on the screen 130 of the computing device 102. The functions related to the representation that is may perform in response to the detection of an overflight event include, without limitation, representing an enlarged window 142 of a portion of the content 138 (e.g., a portion of the content 138 below the object), modifying the representation of the portion of the content 138, and / or represent additional content in association with the content portion 138. The content portion 138 that is represented within the enlarged window 142 of Figure 1 may represent a portion of the content 138 that is represented in a location within area 140 or within a threshold distance with respect to a location of that type (e.g., just above the location of the object). It should be appreciated that the overflight interaction capability of the computing device 102 can be "activated" or "Deactivate" by means of user settings or a similar user configuration of the device 102 in cases where an overflight interaction is not desired.
El dispositivo informático 102 puede operar en un entorno en red y, en ese sentido, el dispositivo informático 102 puede incluir adicionalmente unas conexiones de comunicación 142 que permiten que el dispositivo se comunique con los otros dispositivos informáticos 120, tales proveedores de contenidos ubicados de forma remota. Las conexiones de comunicación 142 se puede utilizar para transmitir y / o recibir datos, tales como un contenido que se puede almacenar en el almacén de contenidos local 114.The computing device 102 can operate in a networked environment and, in that sense, the computing device 102 can additionally include communication connections 142 that allow the device to communicate with the other computing devices 120, such content providers located in a manner that is capable of communicating with the computer. remote The communication connections 142 can be used to transmit and / or receive data, such as content that can be stored in the local content store 114.
La figura 2 ilustra un entorno de sistema informático 200 a modo de ejemplo que muestra unos dispositivos informáticos a modo de ejemplo 102 que están configurados para recibir un contenido a partir de un proveedor o proveedores de contenidos ubicados de forma remota 202. A pesar de que algunas formas de realización se describen en el contexto de un sistema basado en web, se podrían usar otros tipos de comunicaciones basadas en cliente / servidor y la lógica de aplicación que está asociada. La figura 2 ilustra que el contenido que se va a representar en la pantalla 132 del dispositivo informático 102 se puede descargar o recibirse por lo demás a partir del proveedor o proveedores de contenidos 202 que pueden almacenar el contenido en un almacén de contenidos remoto 204. En algunos ejemplos, el contenido recibido puede ser un contenido de página web a partir de un sitio web del proveedor o proveedores de contenidos 202. En este escenario, el proveedor de contenidos 202 puede utilizar uno o más servidor o servidores 206(1), 206(2), ... , 206 (N) (206, de forma colectiva), que tal vez estén dispuestos en una agrupación o como una granja de servidores, para albergar uno o más sitios web. Un usuario que está asociado con un dispositivo informático 102 puede entonces acceder al sitio web mediante el envío de una solicitud, tal como en forma de URL que se introduce en un campo de dirección de un explorador web que se está ejecutando en el dispositivo informático 102, al servidor o servidores 206 a través de una red 208. Tras recibir la solicitud, el servidor o servidores 206 pueden devolver una página web de vuelta al dispositivo informático 102 que realiza la solicitud a través de la red 208. El sitio web puede ser capaz de manejar solicitudes a partir de muchos usuarios y atender, en respuesta, diversas páginas web que se pueden representar en pantallas asociadas de los dispositivos informáticos 102. La red 208 representa una red cualquiera o una combinación de múltiples tipos diferentes de redes, tales como redes de área extensa (WAN, wide area network) o redes de área local (LAN, local area network) e incluyendo redes por cable, Internet y redes inalámbricas.Figure 2 illustrates an exemplary computer system environment 200 showing exemplary computing devices 102 that are configured to receive content from a remotely located content provider or providers 202. Although some embodiments are described in the context of a web-based system, other types of client / server-based communications and the associated application logic could be used. Figure 2 illustrates that the content to be displayed on the screen 132 of the computing device 102 can be downloaded or otherwise received from the content provider or providers 202 that can store the content in a remote content store 204. In some examples, the received content may be a web page content from a website of the content provider or providers 202. In this scenario, the content provider 202 may use one or more server or servers 206 (1), 206 (2), ..., 206 (N) (206, collectively), which may be arranged in a cluster or as a server farm, to house one or more websites. A user who is associated with a computing device 102 can then access the website by sending a request, such as in the form of a URL that is entered into an address field of a web browser that is running on the computing device 102 , to the server or servers 206 through a network 208. Upon receiving the request, the server or servers 206 may return a web page back to the computing device 102 making the request through the network 208. The website may be capable of handling requests from many users and serving, in response, various web pages that can be represented on associated screens of the computing devices 102. The network 208 represents any one network or a combination of multiple different types of networks, such as Wide area networks (WANs ) or local area networks (LANs ) and including cable networks, Internet and wireless networks factories
La figura 3A ilustra una vista en alzado frontal de un dispositivo informático 102 a modo de ejemplo que tiene una pantalla 132 a modo de ejemplo que representa un contenido accionable en el mismo, tal como el contenido 138 de la figura 1. En algunas formas de realización, el área de control que se ha mencionado en lo que antecede dentro de la cual pueden estar restringidas las interacciones de sobrevuelo coincide con el área en 2D en la pantalla en la que se representa el contenido 138. El dispositivo informático 102 que se muestra en la figura 3a representa un dispositivo “capaz de sobrevuelo” en el sentido de que el mismo incluye los componentes que se describen en la figura 1 que habilitan una interacción basada en sobrevuelo con el contenido representado 138. La figura 3B ilustra una vista en alzado lateral del dispositivo informático 102 de la figura 3A.Figure 3A illustrates a front elevational view of an exemplary computing device 102 having an exemplary screen 132 representing an operable content therein, such as the content 138 of Figure 1. In some forms of embodiment, the aforementioned control area within which the overflight interactions may be restricted coincides with the 2D area on the screen in which the content 138 is represented. The computing device 102 shown in figure 3a represents a device "capable of overflight" in the sense that it includes the components described in figure 1 that enable an overflight-based interaction with the content represented 138. Figure 3B illustrates an elevation view side of the computing device 102 of Figure 3A.
Las figuras 3A y 3B también muestran diversos planos de referencia. En ese sentido, la figura 3A muestra un plano medio sagital imaginario que puede pasar a través de la parte media del dispositivo informático 102 y dividir el dispositivo informático 102 en unos lados derecho e izquierdo. Un plano transversal, que es un plano imaginario que divide el dispositivo informático 102 en unas partes superior (de arriba / alta) e inferior (de debajo / baja), se muestra pasando en sentido horizontal a través de las figuras 3a y 3B. Además, un plano frontal se muestra por medio de la figura 3B como un plano vertical imaginario que divide el dispositivo informático 102 en unas partes delantera y trasera. Por consiguiente, la figura 3B ilustra una superficie delantera 300 de la pantalla 132 como que es una superficie paralela con respecto al plano frontal en la parte delantera del dispositivo informático 102. La figura 3A ilustra adicionalmente que un plano de referencia de coordenadas en 2D (por ejemplo, un plano x - y ) paralelo con respecto al plano frontal se puede utilizar para hacer referencia a unas ubicaciones puntuales (x, y) en la superficie delantera 300 de la pantalla 132. Las ubicaciones en la superficie delantera 300 de la pantalla 132 también se pueden representar por medio de los píxeles de la pantalla 132, y unas áreas que se definen por medio de grupos de píxeles. La figura 3B ilustra que una dirección perpendicular con respecto a la superficie delantera 300 de la pantalla 132 se puede representar por medio de una dirección z en términos de coordenadas cartesianas.Figures 3A and 3B also show various reference planes. In that sense, Figure 3A shows an imaginary sagittal midplane which can pass through the middle part of the computing device 102 and divide the computing device 102 into right and left sides. A transverse plane, which is an imaginary plane dividing the computing device 102 into upper (top / top) and bottom (bottom / bottom) parts, is shown passing horizontally through Figures 3 a and 3B. In addition, a front plane is shown by means of FIG. 3B as an imaginary vertical plane dividing the computing device 102 into front and rear portions. Accordingly, FIG. 3B illustrates a front surface 300 of the screen 132 as being a surface parallel to the front plane at the front of the computing device 102. FIG. 3A further illustrates that a coordinate reference plane in 2D (FIG. for example, a plane x-y) parallel to the front plane can be used to refer to point locations (x, y) on the front surface 300 of the screen 132. The locations on the front surface 300 of the screen 132 can also be represented by means of the pixels of the screen 132, and areas that are defined by means of groups of pixels. Figure 3B illustrates that a direction perpendicular to the front surface 300 of the screen 132 can be represented by a z-direction in terms of Cartesian coordinates.
La figura 3C ilustra la vista en alzado frontal del dispositivo informático 102 a modo de ejemplo de las figuras 3A y 3B cuando un objeto 302 (en este caso, el dedo de un usuario) está realizando un sobrevuelo delante de la pantalla 132 del dispositivo informático 102. La figura 3D ilustra una vista en alzado lateral del dispositivo informático 102 y el objeto 302 de la figura 3C. En concreto, en la figura 3D se muestra que el objeto 302 está ubicado a (separado) una distancia, d, a partir de la superficie delantera 300 de la pantalla 132 en la dirección z (una dirección perpendicular con respecto a la superficie delantera 300). Se ha de apreciar que la distancia, d, representa la distancia más corta desde el objeto 302 hasta la superficie delantera 300 en relación con otras distancias desde el objeto 302 hasta otras ubicaciones en la superficie delantera 300. En un ejemplo ilustrativo, el dispositivo informático 102 puede representar un teléfono inteligente que utiliza un sensor o sensores de proximidad 128 (por ejemplo, una matriz de sensores capacitivos) que se incrustan dentro de, o que están dispuestos por detrás de, la pantalla 132, y la distancia, d, se puede encontrar dentro del intervalo de aproximadamente 0,001 pulgadas (0,0254 mm) a aproximadamente 1,5 pulgadas (3,81 cm). En algunas formas de realización, el sensor o sensores de proximidad 128 se pueden configurar para detectar el objeto 302 cuando el mismo está situado dentro de una distancia umbral con respecto a la superficie delantera 300, tal como una distancia umbral que puede no ser mayor que aproximadamente 8 pulgadas (20,32 cm). Para unos dispositivos informáticos 102 con unos tamaños de pantalla más grandes, y /o unos dispositivos informáticos 102 que se ponen en práctica en contextos diferentes (por ejemplo, una TV de sala de estar) con tipos diferentes de sensor o sensores de proximidad 128 (por ejemplo, una cámara de profundidad), una distancia umbral puede ser mayor que 8 pulgadas (20,32 cm) de tal modo que la distancia, d, puede ser de hasta aproximadamente 170 pulgadas (431,8 cm) con respecto a la superficie delantera 300 de la pantalla 132, y el sensor o sensores de proximidad 128 del dispositivo informático 102 puede seguir siendo capaz de detectar el objeto 302 (por ejemplo, la mano del usuario) que está realizando un sobrevuelo delante de la superficie delantera 300 a esa distancia, d. También se ha de apreciar que el sensor o sensores de proximidad 128 se pueden configurar para detectar múltiples objetos 302 que están realizando un sobrevuelo, incluso a pesar de que en las figuras 3C y 3D se muestra un único objeto 302.Figure 3C illustrates the front elevation view of the computing device 102 by way of example of Figures 3A and 3B when an object 302 (in this case, the finger of a user) is performing a flyby in front of the screen 132 of the computing device 102. Figure 3D illustrates a side elevational view of the computing device 102 and object 302 of Figure 3C. In particular, in Figure 3D it is shown that the object 302 is located at (separated) a distance, d, from the front surface 300 of the screen 132 in the z direction (a direction perpendicular to the front surface 300). ). It is to be appreciated that the distance, d, represents the shortest distance from the object 302 to the front surface 300 relative to other distances from the object 302 to other locations on the front surface 300. In an illustrative example, the computing device 102 may represent a smartphone using a sensor or proximity sensors 128 (e.g., a matrix of capacitive sensors) that are embedded within, or that are disposed behind, the screen 132, and the distance, d, is it can be found within the range of about 0.001 inches (0.0254 mm) to about 1.5 inches (3.81 cm). In some embodiments, the proximity sensor or sensors 128 may be configured to detect the object 302 when it is located within a threshold distance with respect to the front surface 300, such as a threshold distance that may not be greater than about 8 inches (20.32 cm). For computing devices 102 with larger screen sizes, and / or computing devices 102 that are implemented in different contexts (eg, a living room TV) with different sensor types or proximity sensors 128 ( for example, a depth chamber), a threshold distance can be greater than 8 inches (20.32 cm) such that the distance, d, can be up to approximately 170 inches (431.8 cm) with respect to the front surface 300 of the screen 132, and the proximity sensor or sensors 128 of the computing device 102 can still be able to detect the object 302 (e.g., the user's hand) that is performing a flyby in front of the front surface 300 a that distance, d. It is also to be appreciated that the proximity sensor or sensors 128 may be configured to detect multiple objects 302 that are performing a flyby, even though a single object 302 is shown in Figures 3C and 3D.
La figura 3C muestra adicionalmente una ubicación puntual 304 en la superficie delantera 300 que es representativa de la ubicación del objeto en relación con la pantalla 132 cuando el objeto 302 está realizando un sobrevuelo delante de la pantalla 132. La ubicación 304 se puede determinar por medio del módulo de interfaz de sobrevuelo 118 después de recibir la indicación del objeto 302 detectado a partir del sensor o sensores de proximidad 128. Con el fin de determinar la ubicación 304, el módulo de interfaz de sobrevuelo 118 puede acceder a datos con respecto a las coordenadas x - y o los píxeles de la pantalla 132 que son generalmente conocidos por el sistema operativo 108 y /o datos a partir del sensor o sensores de proximidad 128. Tal como se ilustra por medio de la figura 3D, la ubicación 304 puede representar una ubicación 304 en la superficie delantera 300 de la pantalla 132 que es la distancia más corta, d, desde el objeto 302 hasta la superficie delantera 300 debido a que el objeto 302 se encuentra sustancialmente en una dirección con respecto a la ubicación 304 que es perpendicular con respecto a la superficie delantera 300 de la pantalla 132.Figure 3C further shows a point location 304 on the front surface 300 that is representative of the location of the object in relation to the screen 132 when the object 302 is performing a flyby in front of the display 132. The location 304 can be determined by means of of the overflight interface module 118 after receiving the indication of the object 302 detected from the proximity sensor or sensors 128. In order to determine the location 304, the overflight interface module 118 can access data with respect to the x-coordinates x the pixels of the screen 132 which are generally known by the operating system 108 and / or data from the sensor or proximity sensors 128. As illustrated by the figure 3D, the location 304 may represent a location 304 on the front surface 300 of the screen 132 which is the shortest distance, d , from the object 302 to the front surface 300 deb gone to that the object 302 is substantially in a direction with respect to the location 304 that is perpendicular with respect to the front surface 300 of the screen 132.
La figura 3C muestra adicionalmente que el módulo de interfaz de sobrevuelo 118 se puede configurar adicionalmente para determinar una porción 306 del contenido 138 que se representa dentro de una distancia umbral, h, con respecto a la ubicación 304. En el ejemplo de la figura 3C, la porción 306 del contenido 138 que se selecciona se representa a una distancia, h, por encima de (es decir, hacia la parte de arriba del dispositivo informático 102) la ubicación 304. En otras formas de realización, la porción 306 que se determina por medio del módulo de interfaz de sobrevuelo 118 puede ser la porción del contenido 138 que se representa en la ubicación 304 (es decir, el contenido que se encuentra directamente por debajo del objeto 302 que está realizando un sobrevuelo). Puede ser ventajoso seleccionar la porción 306 que se representa a una distancia, h, por encima de la ubicación 304 de tal modo que el objeto 302 no obstruye la visión de un usuario de la porción 306, pero se ha de apreciar que una porción directamente por debajo del objeto 302 o dentro de una distancia de la ubicación 304 en una dirección diferente se puede seleccionar sin cambiar las características básicas del sistema.Figure 3C further shows that the overflight interface module 118 can be further configured to determine a portion 306 of the content 138 that is represented within a threshold distance, h, with respect to the location 304. In the example of Figure 3C , the portion 306 of the content 138 that is selected is represented at a distance, h , above (i.e., toward the top of the computing device 102) the location 304. In other embodiments, the portion 306 that is determined by means of the overflight interface module 118 may be the portion of the content 138 that is represented at the location 304 (i.e., the content that is directly below the object 302 that is performing a flyby). It may be advantageous to select the portion 306 that is depicted at a distance, h, above the location 304 such that the object 302 does not obstruct a user's view of the portion 306, but it is to be appreciated that a portion directly below the object 302 or within a distance of the location 304 in a different direction can be selected without changing the basic characteristics of the system.
La figura 3E ilustra la vista en alzado frontal del dispositivo informático 102 a modo de ejemplo de las figuras 3A - 3D en la que una ventana ampliada, tal como la ventana ampliada 142 de la figura 1, se representa en una región de la pantalla 132 en respuesta a una interacción de sobrevuelo detectada a partir del objeto 302. El objeto 302 (un dedo) que se muestra en la figura 3E se encuentra en la misma posición que se muestra por medio de las figuras 3C y 3D (es decir, una posición de sobrevuelo). La ventana ampliada 142 puede contener la porción 306 del contenido 138 que se muestra en la figura 3C. Tal como se describirá con más detalle con referencia a la figura 4, el contenido que se representa dentro de la ventana ampliada 142 puede ser accionable mediante la respuesta a una entrada de usuario que se recibe dentro de la ventana ampliada 142 de la misma forma que o de una forma similar a cómo el contenido está configurado para responder a una entrada de usuario fuera de la ventana ampliada 142. Por ejemplo, el texto en el que se lee “Empleado de tienda frustra intento de robo” está incluido en la porción 306 del contenido 138, tal como se muestra en la figura 3C, y el mismo se puede codificar como un hipertexto que, tras la selección fuera de la ventana ampliada 142 (por ejemplo, un dedo que toca la pantalla 132 sobre el elemento de texto), hace que un usuario navegue, por medio de un explorador web, a otra página que contiene la totalidad del artículo que está asociado con ese texto. De la misma forma, o al menos de una forma similar, un usuario puede proporcionar una entrada dentro de la ventana ampliada 142 para, por ejemplo, seleccionar el texto en el que se lee “Empleado de tienda frustra intento de robo”. Tras la recepción de la entrada de usuario dentro de la ventana ampliada 142, el módulo de explorador 110 puede hacer que el usuario navegue a la página web diferente con la totalidad del artículo que está asociado con ese texto. De esta forma, la ventana ampliada 142 actúa como una ventana de “miniexplorador” que proporciona un contenido accionable dentro de la propia ventana ampliada 142 mediante la respuesta a una entrada de usuario que se proporciona dentro de la ventana ampliada 142.3E illustrates the front elevational view of the computing device 102 as an example of FIGS. 3A-3D in which an enlarged window, such as the enlarged window 142 of FIG. 1, is shown in a region of the screen 132 in response to an overflight interaction detected from object 302. Object 302 (a finger) shown in Figure 3E is in the same position as shown by Figures 3C and 3D (ie, a overflight position). The enlarged window 142 may contain the portion 306 of the content 138 shown in Figure 3C. As will be described in more detail with reference to Figure 4, the content that is represented within the enlarged window 142 may be operable by responding to a user input that is received within the enlarged window 142 in the same manner as or in a manner similar to how the content is configured to respond to a user input outside the enlarged window 142. For example, the text that reads "Store employee frustrates attempted theft" is included in the portion 306 of the content 138, as shown in Figure 3C, and it can be encoded as a hypertext which, after selection outside the enlarged window 142 (for example, a finger touching the screen 132 on the text element) , causes a user to navigate, through a web browser, to another page that contains the entire article that is associated with that text. In the same way, or at least in a similar way, a user can provide an entry within the enlarged window 142 to, for example, select the text that reads "Store employee frustrates attempted theft". Upon receipt of the user input within the enlarged window 142, the browser module 110 may cause the user to navigate to the different web page with the entire article that is associated with that text. In this way, the enlarged window 142 acts as a "minibrowser" window that provides operable content within the enlarged window 142 itself through the response to a user input that is provided within the enlarged window 142.
En algunas formas de realización, la ventana ampliada 142 es de una anchura, w, que puede ser menor que una anchura global de la pantalla 132. En un ejemplo, la anchura, w, no es mayor que aproximadamente un 75 % de la anchura de la pantalla 132. En otro ejemplo, la anchura, w, no es mayor que aproximadamente un 50% de la anchura de la pantalla 132. En aún otro ejemplo, la anchura, w, no es mayor que aproximadamente un 25 % de la anchura de la pantalla 132. Una restricción sobre la anchura, w, para que sea una fracción de la anchura de la pantalla 132 puede prever una ampliación óptima de la porción 306 del contenido 138 que se representa dentro de la ventana ampliada 142, y esta puede facilitar que se explore de forma selectiva el contenido de una forma de izquierda a derecha, o viceversa.In some embodiments, the enlarged window 142 is of a width, w, which may be less than an overall width of the screen 132. In one example, the width, w, is not greater than about 75% of the width of the screen 132. In another example, the width, w, is not greater than about 50% of the width of the screen 132. In yet another example, the width, w, is not greater than about 25% of the width of the screen. width of the screen 132. A restriction on the width, w, to be a fraction of the width of the screen 132 may provide for an optimal enlargement of the portion 306 of the content 138 that is depicted within the enlarged window 142, and this it can facilitate that the content is scanned selectively from left to right, or vice versa.
En algunas formas de realización, la región en la que la ventana ampliada 142 se representa puede incluir un límite de debajo que está ubicado a una distancia previamente determinada, b, con respecto a la ubicación 304 en la superficie delantera 300 que se corresponde con el objeto 302. Por ejemplo, la distancia previamente determinada, b, se puede encontrar dentro del intervalo de aproximadamente 0,2 pulgadas (0,508 cm) a aproximadamente 0,5 pulgadas (1,27 cm). En otro ejemplo, la distancia previamente determinada, b, puede no ser mayor que aproximadamente 1 pulgada (2,54 cm). La representación de la ventana ampliada 142 a una distancia previamente determinada, b, por encima de la ubicación 304 puede evitar que el objeto 302 obstruya la visión del usuario del contenido dentro de la ventana ampliada 142 o una porción del mismo.In some embodiments, the region in which the enlarged window 142 is depicted may include a limit from below which is located at a predetermined distance, b, with respect to the location 304 on the front surface 300 which corresponds to the object 302. For example, the previously determined distance, b, can be found within the range of approximately 0.2 inches (0.508 cm) to approximately 0.5 inches (1.27 cm). In another example, the previously determined distance, b, may not be greater than about 1 inch (2.54 cm). The representation of the enlarged window 142 at a predetermined distance, b , above the location 304 can prevent the object 302 from obstructing the user's view of the content within the enlarged window 142 or a portion thereof.
En algunas formas de realización, el módulo de interfaz de sobrevuelo 118 puede identificar un gesto de entrada a partir del objeto 302 antes de dar lugar a la representación de la ventana ampliada 142. En este sentido, la ventana ampliada 142 se puede representar en respuesta a la recepción del gesto de entrada, que puede adoptar cualquier forma adecuada. Un gesto de entrada a modo de ejemplo que puede desencadenar la representación de la ventana de ampliación 142 se encuentra en la forma del objeto 302 que permanece en una primera posición que se muestra en las figuras 3C - 3E durante un periodo de tiempo previamente determinado. “Que permanece en la primera posición” puede comprender realizar un sobrevuelo delante de la superficie delantera 300 dentro de un área previamente determinada 306 durante el periodo de tiempo previamente determinado. El área previamente determinada 306 puede estar circunscrita en torno a la ubicación 304 de tal modo que, si el objeto 302 tiembla ligeramente, se puede considerar que ha “permanecido en la primera posición”. El periodo de tiempo previamente determinado que el objeto 302 va a permanecer en la primera posición se puede encontrar dentro de un intervalo de aproximadamente 50 milisegundos a aproximadamente 100 milisegundos. En otras formas de realización, el periodo de tiempo previamente determinado puede no ser mayor que aproximadamente 2000 milisegundos. En este escenario, un usuario puede proporcionar un gesto de entrada al sostener un dedo en una posición de sobrevuelo dentro del área previamente determinada 306 durante un periodo de tiempo previamente determinado y, en respuesta, el módulo de interfaz de sobrevuelo 118 puede dar lugar a la representación de la ventana ampliada 142 para proporcionar una exploración potenciada del contenido 138.In some embodiments, the flyby interface module 118 can identify an input gesture from the object 302 before giving rise to the display of the enlarged window 142. In this regard, the enlarged window 142 can be represented in response upon receipt of the entrance gesture, which may take any suitable form. An example input gesture that can trigger the representation of the enlargement window 142 is in the form of the object 302 that remains in a first position shown in FIGS. 3C-3E for a predetermined period of time. "That remains in the first position" may comprise performing a flyby in front of the front surface 300 within a predetermined area 306 during the previously determined period of time. The predetermined area 306 may be circumscribed around the location 304 such that, if the object 302 trembles slightly, it may be considered to have "remained in the first position". The period of time previously determined that object 302 will remain in the first position can be found within a range of about 50 milliseconds to about 100 milliseconds. In other embodiments, the predetermined period of time may not be greater than about 2000 milliseconds. In this scenario, a user may provide an input gesture by holding a finger in an overflight position within the previously determined area 306 for a predetermined period of time and, in response, the overflight interface module 118 may result in the representation of the enlarged window 142 to provide enhanced scanning of the content 138.
A pesar de que la ventana ampliada 142 que se muestra en las figuras 1 y 3E es de forma rectangular, se ha de apreciar que la ventana ampliada 142 puede comprender cualquier forma adecuada, tal como circular, triangular, cuadrada, hexagonal, o cualquier tipo de forma poligonal adecuada para contener una vista ampliada de una porción 306 del contenido 138.Although the enlarged window 142 shown in Figures 1 and 3E is rectangular in shape, it is to be appreciated that the enlarged window 142 may comprise any suitable shape, such as circular, triangular, square, hexagonal, or any other type. of polygonal shape suitable for containing an enlarged view of a portion 306 of the content 138.
La figura 4 ilustra una vista en alzado frontal del dispositivo informático 102 a modo de ejemplo de las figuras 3A - 3E que muestra una entrada de usuario que es proporcionada por el objeto 302 dentro de la ventana ampliada 142. La entrada de usuario que se proporciona dentro de la ventana ampliada 142 para interaccionar con el contenido en la misma puede adoptar cualquier forma adecuada, tal como el objeto 302 en contacto con la superficie delantera 300 de la pantalla 132 para proporcionar una entrada basada en toque para seleccionar un elemento que se representa dentro de la ventana ampliada 142. En el ejemplo de la figura 4, un usuario ha tocado con su dedo la superficie delantera 300 de la pantalla 132 sobre el texto dentro de la ventana ampliada 142 en el que se lee “Empleado de tienda frustra intento de robo”. Exactamente igual que el usuario es capaz de proporcionar una entrada basada en toque a la pantalla 132 para seleccionar elementos de contenido interactivos (por ejemplo, hipervínculos), el usuario puede entrar en contacto con la superficie delantera 300 de la pantalla 132 en el hipertexto “Empleado de tienda frustra intento de robo” que se proporciona dentro de la ventana ampliada 142 para seleccionar el texto y ordenar al módulo de explorador 110 que navegue a otra página web con la totalidad del artículo que está asociado con el texto. En este sentido, una porción del contenido dentro de la ventana ampliada 142 es accionable mediante la respuesta a una entrada de usuario cuando la entrada de usuario se proporciona dentro de la ventana ampliada 142, exactamente igual que la porción 306 responde a la entrada de usuario fuera de la ventana ampliada 142.Fig. 4 illustrates a front elevational view of the exemplary computing device 102 of Figs. 3A-3E showing a user input that is provided by the object 302 within the enlarged window 142. The user input that is provided within the enlarged window 142 to interact with the content therein may take any suitable form, such as the object 302 in contact with the front surface 300 of the screen 132 to provide a touch-based entry to select an element that is depicted within the enlarged window 142. In the example of figure 4, a user has touched with his finger the front surface 300 of the screen 132 over the text within the enlarged window 142 in which is read "Store employee frustrates attempt Of robbery". Just as the user is able to provide a touch-based entry to the screen 132 to select interactive content elements (e.g., hyperlinks), the user may come into contact with the front surface 300 of the screen 132 in the hypertext " Store employee frustrates theft attempt "which is provided within the enlarged window 142 to select the text and order the browser module 110 to navigate to another web page with the entire article that is associated with the text. In this regard, a portion of the content within the enlarged window 142 is operable by the response to a user input when the user input is provided within the enlarged window 142, exactly as the portion 306 responds to the user input outside the enlarged window 142.
En algunas formas de realización, la entrada de usuario que se proporciona dentro de la ventana ampliada 142, tal como se ilustra en la figura 4, puede comprender una interacción de sobrevuelo a partir del objeto 302. Por ejemplo, el objeto 302 puede sobrevolar por encima del contenido que se representa dentro de la ventana ampliada 142 a una distancia con respecto a la superficie delantera 300 de la pantalla 132, y el contenido accionable, si está codificado para responder a los eventos de sobrevuelo, puede responder a la entrada de usuario basada en sobrevuelo al llevar a cabo una función relacionada con la representación, tal como cambiar la apariencia del contenido (por ejemplo, subrayando el texto “Empleado de tienda frustra robo”), representar un contenido adicional (por ejemplo, un elemento emergente con información acerca del contenido, un menú desplegable en sentido descendente, etc.), y así sucesivamente.In some embodiments, the user input that is provided within the enlarged window 142, as illustrated in FIG. 4, may comprise an overflight interaction from the object 302. For example, the object 302 may fly over the on top of the content that is displayed within the enlarged window 142 at a distance from the front surface 300 of the screen 132, and the actionable content, if coded to respond to the overflight events, can respond to user input Overflight-based when performing a function related to the representation, such as changing the appearance of the content (for example, underlining the text "Store employee frustrates theft"), representing additional content (for example, a pop-up with information about content, a drop down menu, etc.), and so on.
La figura 5A ilustra una vista en alzado frontal del dispositivo informático 102 a modo de ejemplo de las figuras 3 -4 que muestra el objeto 302 moviéndose a través de la superficie delantera 300 de la pantalla 132 al tiempo que mantiene una relación de separación con la superficie delantera 300. Por consiguiente, la figura 5B ilustra una vista en alzado lateral parcial del dispositivo informático 102 y el objeto en movimiento 302 para ilustrar la relación de separación que se mantiene durante el movimiento del objeto 302 a través de la superficie delantera 300. En respuesta al movimiento del objeto 302 que se muestra en las figuras 5A y 5B, la ventana ampliada 142 se muestra como que se ha movido a través de la pantalla 132 junto con el objeto en movimiento 302 desde una primera región (que se representa por medio del recuadro de trazo discontinuo) de la pantalla 132 hasta una segunda región de la pantalla 132. En algunas formas de realización, el módulo de interfaz de sobrevuelo 118 puede determinar si el objeto 302 se mueve a través de la superficie delantera 300 por debajo de una velocidad previamente determinada. Fig. 5A illustrates a front elevational view of the exemplary computing device 102 of Figs. 3-4 showing the object 302 moving across the front surface 300 of the screen 132 while maintaining a separation relationship with the front surface 300. Accordingly, FIG. 5B illustrates a partial side elevation view of the computer device 102 and the moving object 302 to illustrate the separation relationship that is maintained during movement of the object 302 through the front surface 300. In response to the movement of the object 302 shown in Figures 5A and 5B, the enlarged window 142 is shown to have moved through the screen 132 together with the moving object 302 from a first region (which is represented by middle of the dashed box) of the screen 132 to a second region of the screen 132. In some embodiments, the interface module of s The flight craft 118 can determine if the object 302 moves through the front surface 300 below a predetermined speed.
Tal como se describirá con más detalle en lo sucesivo, en algunas formas de realización, si el objeto 302 se mueve demasiado rápido (es decir, por encima de una velocidad umbral) a través de la superficie delantera 300, la ventana ampliada 142 puede desaparecer de la pantalla 132. Por lo tanto, de acuerdo con algunas formas de realización, siempre que el objeto 302 se mueva por debajo de una velocidad previamente determinada cuando recorre la superficie delantera 300 en una relación de separación con la misma, la ventana ampliada 142 se puede mover junto con el objeto 302 a una región nueva de la pantalla 132 que se corresponde con una posición nueva del objeto 302. En el ejemplo de la figura 5A, la ventana ampliada 142 en la región nueva / segunda región después del objeto 302 se haya movido contiene otra porción del contenido 138 que se representa en, o dentro de una distancia umbral con respecto a, una ubicación nueva en la superficie delantera 300 de la pantalla 132 que se corresponde con la posición actualizada del objeto 302. De esta forma, el objeto 302 puede recorrer la superficie delantera 300 de una forma controlada (es decir, por debajo de una velocidad previamente determinada) para representar de forma dinámica porciones diferentes del contenido 138 a medida que el objeto 302 se mueve. Esto da a un usuario del dispositivo informático 102 una experiencia virtual similar a mover una lupa por encima de un periódico.As will be described in more detail hereinafter, in some embodiments, if the object 302 moves too fast (i.e., above a threshold velocity) through the front surface 300, the enlarged window 142 may disappear. of the screen 132. Therefore, according to some embodiments, provided that the object 302 moves below a predetermined speed when it traverses the front surface 300 in a separation relationship therewith, the enlarged window 142 it can be moved together with the object 302 to a new region of the screen 132 which corresponds to a new position of the object 302. In the example of figure 5A, the enlarged window 142 in the new region / second region after the object 302 moved has another portion of the content 138 that is represented at, or within a threshold distance with respect to, a new location on the front surface 300 of the screen 132 which corresponds to the updated position of the object 302. In this way, the object 302 can traverse the front surface 300 in a controlled manner (ie, below a previously determined speed) to dynamically represent different portions of the content. as object 302 moves. This gives a user of the computing device 102 a virtual experience similar to moving a magnifying glass over a newspaper.
La figura 6 ilustra una vista en alzado frontal del dispositivo informático 102 de las figuras 3 -5 que muestra una entrada de usuario que es proporcionada por el objeto 302 dentro de la ventana ampliada 142. La entrada de usuario que se proporciona dentro de la ventana ampliada 142 se puede proporcionar con el fin de interaccionar con el contenido en la misma, y esta puede adoptar cualquier forma adecuada, tal como se ha descrito en lo que antecede con referencia a la figura 4. En el ejemplo de la figura 6, el objeto 302 puede entrar en contacto con la superficie delantera 300 de la pantalla 132 para proporcionar una entrada basada en toque para seleccionar un elemento que se representa dentro de la ventana ampliada 142. En concreto, el objeto 302 (un dedo) puede tocar la superficie delantera 300 de la pantalla 132 sobre el botón de reproducción de vídeo que se representa ampliado dentro de la ventana ampliada 142. Se reconoce que, cuando la ventana ampliada 142 no se representa en la pantalla 132, el objeto 302 puede tocar la superficie delantera 300 de la pantalla 132 sobre el botón de reproducción de vídeo para dar lugar a que un vídeo se reproduzca al usuario en la pantalla 132. La ventana ampliada 142 también representa un contenido accionable que responde de la misma forma que el contenido accionable 138 que se representa en la pantalla 132 fuera de la ventana ampliada 142. En este sentido, el objeto 302 puede proporcionar órdenes de entrada (por ejemplo, entrar en contacto con la superficie delantera 300 de la pantalla 132) dentro de la ventana ampliada 142 para seleccionar elementos interactivos (por ejemplo, el botón de reproducción de vídeo) y, en respuesta, el módulo de explorador 110 puede responder a la entrada de usuario, tal como al iniciar la reproducción del archivo de vídeo que está asociado con el botón de reproducción.Figure 6 illustrates a front elevational view of the computing device 102 of Figures 3 -5 showing a user input that is provided by the object 302 within the enlarged window 142. The user input that is provided within the window enlarged 142 may be provided in order to interact with the content therein, and this may take any suitable form, as described above with reference to Figure 4. In the example of Figure 6, the object 302 may come into contact with front surface 300 of screen 132 to provide a touch-based entry to select an element that is depicted within the enlarged window 142. In particular, object 302 (a finger) may touch the surface front 300 of the screen 132 on the video playback button that is displayed enlarged within the enlarged window 142. It is recognized that, when the enlarged window 142 is not shown in In the screen 132, the object 302 may touch the front surface 300 of the screen 132 on the video playback button to cause a video to be played back to the user on the screen 132. The enlarged window 142 also represents an actionable content. which responds in the same way as the actionable content 138 that is displayed on the screen 132 outside the enlarged window 142. In this regard, the object 302 can provide input commands (e.g., contacting the front surface 300 of the screen 132) within the enlarged window 142 to select interactive elements (e.g., the video playback button) and, in response, the browser module 110 can respond to user input, such as upon start-up of the Video file that is associated with the play button.
En algunas formas de realización, la entrada de usuario que se proporciona dentro de la ventana ampliada 142 puede comprender una interacción de sobrevuelo a partir del objeto 302. Por ejemplo, el objeto 302 puede sobrevolar por encima del contenido que se representa dentro de la ventana ampliada 142 a una distancia con respecto a la superficie delantera 300 de la pantalla 132, y el contenido accionable, si está codificado para responder a los eventos de sobrevuelo, puede responder a la entrada de usuario basada en sobrevuelo al llevar a cabo una función relacionada con la representación, tal como cambiar la apariencia del contenido (por ejemplo, resaltando el círculo del botón de reproducción de vídeo), representar un contenido adicional, y así sucesivamente.In some embodiments, the user input that is provided within the enlarged window 142 may comprise an overflight interaction from the object 302. For example, the object 302 may fly over the content that is represented within the window enlarged at a distance from the front surface 300 of the screen 132, and the actionable content, if coded to respond to the overflight events, can respond to the overflight-based user input by performing a related function with the representation, such as changing the appearance of the content (for example, highlighting the circle of the video playback button), representing additional content, and so on.
La figura 7A ilustra una vista en alzado lateral parcial y una vista en alzado frontal parcial del dispositivo informático 102 que muestra un objeto 302 que está realizando un sobrevuelo a una primera distancia, d1, a partir de la superficie delantera 300 de la pantalla 132, así como un primer nivel de ampliación de la ventana ampliada 142. La figura 7B ilustra las vistas en alzado frontal y lateral parcial del dispositivo informático 102 que muestra el objeto 302 que está realizando un sobrevuelo a una segunda distancia, d2, a partir de la superficie delantera 300 de la pantalla 132, así como un segundo nivel de ampliación de la ventana ampliada 142. Por consiguiente, las figuras 7a y 7B ilustran que un nivel de ampliación / acercamiento / alejamiento del contenido dentro de la ventana ampliada 142 se puede ajustar o controlar en respuesta al movimiento del objeto 302 en la dirección z (es decir, la dirección perpendicular con respecto a la superficie delantera 300), permitiendo que un usuario controle el tamaño representado del contenido dentro de la ventana ampliada 142 cuando se representa la ventana ampliada 142. El módulo de interfaz de sobrevuelo 118 puede posibilitar tal control de acercamiento / alejamiento en la dirección z mediante el acceso a unos datos de correlación en los datos de programa 112 que establecen una correlación entre niveles de ampliación y las distancias en la dirección z con respecto a la superficie delantera 300 de la pantalla 132. De esta forma, un objeto 302 que se detecta a una primera distancia, d1, a partir de la superficie delantera 300 se puede traducir a un primer nivel de ampliación para el contenido dentro de la ventana ampliada 142 de tal modo que el contenido dentro de la ventana ampliada 142 se puede representar al primer nivel de ampliación, y en respuesta a determinar que el objeto 302 se ha movido más lejos con respecto a la superficie delantera 300 en la dirección z hasta una segunda distancia, d2, el nivel de ampliación del contenido dentro de la ventana ampliada 142 se puede ajustar (por ejemplo, disminuirse). La detección de la distancia del objeto desde la superficie delantera 300 se puede llevar a cabo por medio del sensor o sensores de proximidad 128 basándose en la intensidad de señal recibida, el tiempo de vuelo (ToF, time of flight), u otros medios para determinar la distancia del objeto 302 con respecto a la superficie delantera 300 de la pantalla 132.Figure 7A illustrates a partial side elevation view and a partial front elevation view of the computing device 102 showing an object 302 that is performing a flyby at a first distance, d1, from the front surface 300 of the screen 132, as well as a first enlargement level of the enlarged window 142. FIG. 7B illustrates the partial front and side elevational views of the computing device 102 showing the object 302 that is performing a flyby at a second distance, d2, from the front surface 300 of screen 132, as well as a second enlargement level of enlarged window 142. Accordingly, Figures 7a and 7B illustrate that a level of zooming in / out of content within enlarged window 142 can be adjusted or controlling in response to the movement of the object 302 in the z-direction (ie, the direction perpendicular to the front surface 300), allow A user controls the represented size of the content within the enlarged window 142 when the enlarged window 142 is represented. The overflight interface module 118 can enable such approach / zoom control in the z-direction by accessing data from correlation in the program data 112 which establish a correlation between magnification levels and the distances in the z direction with respect to the front surface 300 of the screen 132. In this way, an object 302 that is detected at a first distance, d1 , from the front surface 300 can be translated to a first level of magnification for the content within the enlarged window 142 such that the content within the enlarged window 142 can be represented at the first level of magnification, and in response to determine that the object 302 has moved farther with respect to the front surface 300 in the z direction to a second distance, d2 , the level of enlargement of the content within the enlarged window 142 can be adjusted (eg, decreased). The detection of the object distance from the front surface 300 can be carried out by means of the proximity sensor or sensors 128 based on the received signal strength, the time of flight (ToF ), or other means for determining the distance of the object 302 from the front surface 300 of the screen 132.
La figura 8A ilustra una vista en alzado frontal del dispositivo informático 102 que muestra el objeto 302 moviéndose desde el interior de un área de control 800 de un explorador hasta una posición fuera de un límite del área de control 800, dando lugar a que la ventana ampliada 142 desaparezca de la pantalla 132. La figura 8B ilustra una vista en alzado lateral del dispositivo informático 102 y el objeto 302 para mostrar que el movimiento del objeto 302 a través de la superficie delantera 300 de la pantalla 132 tiene lugar mientras el objeto 302 mantiene una relación de separación con respecto a la superficie delantera 300 (es decir, el objeto 302 se mueve a través de la superficie delantera 300 en un estado de sobrevuelo). Las figuras 8A y 8B muestran un ejemplo de un criterio para dar lugar a que la ventana ampliada 142 desaparezca de la pantalla 132 una vez que la misma se ha representado inicialmente; en concreto, que el objeto 302 se mueve fuera del área de control 800 que se designa en la pantalla 132. Por ejemplo, el módulo de explorador 110 puede especificar el área de control 800 como que comprende un área en la pantalla 132 que encierra el contenido 138 que se representa por medio de un explorador web. Por consiguiente, la barra de navegación 136, a pesar de que parte de la representación en pantalla 134, se puede designar como que se encuentra fuera del área de control 800, de tal modo que la ventana ampliada 142 desaparece en respuesta a que el objeto 302 se mueva a una posición por encima de la barra de navegación 136 del explorador web. Cualquier tipo de barra de menú o panel de control de un programa de aplicación (por ejemplo, un programa de procesamiento de textos) se puede designar, de una forma similar, como que se encuentra fuera del área de control 800 de tal modo que la ventana ampliada 142 se representa cuando el objeto 302 está sobrevolando por encima del contenido 138, pero no cuando este está sobrevolando por encima de otras porciones de la pantalla 132 que no representan el contenido real 138. Se ha de apreciar que al menos una porción del límite de la pantalla 132 puede ser coincidente con el área de control 800 de tal modo que, cuando el objeto 302 se mueve hasta una posición fuera del límite de la propia pantalla 132, la ventana ampliada 142 también puede desaparecer en ese caso.Figure 8A illustrates a front elevational view of the computing device 102 showing the object 302 moving from within a control area 800 of a scanner to a position outside a boundary of the control area 800, resulting in the window enlarged 142 disappears from the screen 132. Figure 8B illustrates a side elevational view of the computing device 102 and the object 302 to show that the movement of the object 302 through of the front surface 300 of the screen 132 takes place while the object 302 maintains a separation relationship with respect to the front surface 300 (ie, the object 302 moves through the front surface 300 in a flyby state). Figures 8A and 8B show an example of a criterion to cause the enlarged window 142 to disappear from the screen 132 once it has been initially represented; specifically, that the object 302 moves out of the control area 800 which is designated on the screen 132. For example, the browser module 110 may specify the control area 800 as comprising an area on the screen 132 enclosing the 138 content that is represented by means of a web browser. Accordingly, the navigation bar 136, although part of the screen representation 134, may be designated as being outside of the control area 800, such that the enlarged window 142 disappears in response to the object 302 moves to a position above the navigation bar 136 of the web browser. Any type of menu bar or control panel of an application program (for example, a word processing program) can be designated, in a similar way, as being outside the control area 800 in such a way that the enlarged window 142 is represented when the object 302 is hovering above the content 138, but not when it is hovering over other portions of the screen 132 that do not represent the actual content 138. It is to be appreciated that at least a portion of the The limit of the screen 132 may be coincident with the control area 800 such that, when the object 302 moves to a position outside the limit of the screen 132 itself, the enlarged window 142 may also disappear in that case.
En algunas formas de realización, se pueden utilizar otros criterios para representar de forma selectiva la ventana ampliada 142 en la pantalla 132. Un criterio a modo de ejemplo puede ser que el objeto 302 se mueva a través de la superficie delantera 300 de la pantalla 132 por encima de una velocidad previamente determinada (es decir, el objeto se mueve demasiado rápido). Se hizo referencia a este criterio al tiempo que se describía el movimiento del objeto 302 por debajo de una velocidad previamente determinada con referencia a las figuras 5A y 5B. Es decir, cuando el objeto 302 se mueve en un estado de sobrevuelo a través de la superficie delantera 300 de la pantalla 132 por debajo de una velocidad previamente determinada, la ventana ampliada 142 se puede mover junto con el objeto 132 a una región nueva de la pantalla, pero cuando el objeto supera la velocidad previamente determinada, la ventana ampliada 142 puede desaparecer de la pantalla 132. Otro criterio a modo de ejemplo para hacer desaparecer la ventana ampliada 142 puede ser que el objeto 302 entre en contacto con la superficie delantera 300 o la pantalla 132 fuera de la región en la que se representa la ventana ampliada 142. Aún otro criterio a modo de ejemplo para hacer desaparecer la ventana ampliada 142 puede ser que el objeto 302 se haya movido lejos de la superficie delantera 300 en la dirección z más allá de una distancia umbral con respecto a la superficie delantera 300 en la dirección z. En cualquier caso, puede que haya casos en los que se represente la ventana ampliada 142 y casos en los que no se represente, y los criterios que se han descrito en lo que antecede se pueden utilizar para determinar aquellos casos en los que hacer desaparecer de la pantalla el objeto 302.In some embodiments, other criteria may be used to selectively represent the enlarged window 142 on the screen 132. An example criterion may be that the object 302 moves across the front surface 300 of the screen 132. above a predetermined speed (ie, the object moves too fast). Reference was made to this criterion while describing the movement of object 302 below a previously determined speed with reference to Figures 5A and 5B. That is, when the object 302 moves in a flyby state through the front surface 300 of the screen 132 below a previously determined speed, the enlarged window 142 can be moved together with the object 132 to a new region of the screen, but when the object exceeds the previously determined speed, the enlarged window 142 may disappear from the screen 132. Another example criterion for making the enlarged window 142 disappear may be that the object 302 comes into contact with the front surface 300 or the screen 132 outside the region in which the enlarged window 142 is shown. Yet another exemplary criterion for making the enlarged window 142 disappear may be that the object 302 has moved away from the front surface 300 in the z direction beyond a threshold distance with respect to the front surface 300 in the z direction. In any case, there may be cases in which the enlarged window 142 is represented and cases in which it is not represented, and the criteria described above can be used to determine those cases in which to make disappear from the screen object 302.
La figura 9 ilustra una vista en alzado frontal del dispositivo informático 102 que muestra el objeto 302 moviéndose desde una posición cerca del límite del área de control 800 en la pantalla 132 hasta una posición más cercana al límite. En concreto, el módulo de interfaz de sobrevuelo 118 puede determinar la ubicación 304 en la que el objeto 302 está sobrevolando por encima de la superficie delantera 300, y puede determinar adicionalmente que la ubicación 304 se encuentra a una distancia, p, con respecto al límite del área de control 800, en la que la distancia, p, se encuentra dentro de una distancia umbral con respecto al límite del área de control 800. Tras determinar que el objeto se mueve más cerca del límite del área de control 800 con respecto a la ubicación 304, tal como se muestra en la figura 9, el módulo de interfaz de sobrevuelo 118 puede realizar un movimiento panorámico del contenido dentro de la ventana ampliada 142 en un sentido opuesto al sentido del movimiento del objeto 302. El movimiento panorámico del contenido dentro de la ventana ampliada 142 en estas circunstancias puede tener lugar en lugar de mover la propia ventana ampliada 142 a una región nueva de la pantalla 132. Esto puede ser ventajoso debido a que, cuando el objeto 302 se encuentra en la ubicación 304, el límite lateral de la ventana ampliada 142 puede encontrarse sustancialmente apoyado en el límite del área de control 800 que, en algunos casos, puede ser coincidente con el límite de la pantalla 132. En este escenario, en lugar de mover la ventana ampliada 142 fuera del límite del área de control 800, se puede realizar un movimiento panorámico del contenido dentro de la ventana ampliada 142 para revelar una porción del contenido 138 en un límite del contenido 138 que no era por lo demás visible dentro de la ventana ampliada cuando el objeto 302 estaba sobrevolando por encima de la ubicación 304. De esta forma, un usuario puede ver porciones del contenido 138 cerca de un límite exterior del contenido 138.Figure 9 illustrates a front elevation view of the computing device 102 showing the object 302 moving from a position near the boundary of the control area 800 on the screen 132 to a position closer to the limit. In particular, the overflight interface module 118 can determine the location 304 in which the object 302 is hovering above the front surface 300, and can further determine that the location 304 is at a distance, p, from the limit of the control area 800, wherein the distance, p, is within a threshold distance from the limit of the control area 800. After determining that the object moves closer to the limit of the control area 800 with respect to at location 304, as shown in Figure 9, the overflight interface module 118 can perform a panning of the contents within the enlarged window 142 in a direction opposite to the direction of movement of the object 302. The panning motion of the content within the enlarged window 142 under these circumstances can take place instead of moving the enlarged window 142 itself to a new region of the screen 132. This can e is advantageous because, when the object 302 is in the location 304, the lateral limit of the enlarged window 142 can be substantially supported on the limit of the control area 800 which, in some cases, can be coincident with the limit from the screen 132. In this scenario, instead of moving the enlarged window 142 outside the boundary of the control area 800, a panning of the content within the enlarged window 142 may be performed to reveal a portion of the content 138 within a limit of the content 138 that was otherwise not visible within the enlarged window when the object 302 was hovering above the location 304. In this way, a user can see portions of the content 138 near an outer boundary of the content 138.
La figura 10A ilustra una vista en alzado frontal parcial del dispositivo informático 102 que muestra el objeto 302 proporcionando una entrada basada en toque en la ubicación 304 en la pantalla 132 en la que el objeto 302 puede previamente haber estado realizando un sobrevuelo para dar lugar a la representación de la ventana ampliada 142. La entrada basada en toque que se proporciona en la ubicación 304 puede ser cualquier tipo adecuado de entrada basada en contacto en la que el objeto 302 entra en contacto con la superficie delantera 300 de la pantalla 132 en la ubicación 304. Para realizar una distinción con respecto a un contacto que es indicativo de la intención de un usuario de hacer que desaparezca la ventana ampliada 142, el módulo de interfaz de sobrevuelo 118 puede determinar si la entrada basada en toque se proporciona como un tipo de entrada basada en toque de múltiples contactos (por ejemplo, un “golpecito doble”). De esta forma, dos contactos sucesivos dentro de un periodo de tiempo previamente determinado pueden indicar al módulo de interfaz de sobrevuelo 118 que un usuario desea realizar un acercamiento / alejamiento hasta una porción del contenido que está asociada con la ubicación 304.Figure 10A illustrates a partial front elevational view of the computing device 102 showing the object 302 providing a touch-based entry at the location 304 on the screen 132 in which the object 302 may previously have been performing a flyby to result in the representation of the enlarged window 142. The touch-based input that is provided in the location 304 can be any suitable type of contact-based input in which the object 302 comes into contact with the front surface 300 of the screen 132 in the location 304. To make a distinction with respect to a contact that is indicative of a user's intention to make the enlarged window 142 disappear, the overflight interface module 118 can determine whether the touch-based entry is provided as a type input-based touch of multiple contacts (for example, a "double tap"). In this way, two successive contacts within a predetermined period of time may indicate to the overflight interface module 118 that a user wishes to zoom in / out to a portion of the content that is associated with the location 304.
La figura 10C ilustra una vista en alzado frontal parcial del dispositivo informático 102 de las figuras 10A y 10B después de la recepción de la entrada basada en toque en la ubicación 304 en la superficie delantera 300 de la pantalla 132. Cabe destacar que la pantalla 132 muestra una vista acercada del contenido que se representa en torno a la ubicación 304; en este caso, el artículo por encima del cual estaba sobrevolando el objeto 302. De esta forma, un usuario puede explorar el contenido usando la ventana ampliada 142 como una ayuda para leer el contenido sin, en realidad, realizar un acercamiento sobre el contenido, y entonces el usuario puede realizar un acercamiento de imagen sobre una porción del contenido 138 que le resulta de interés.Fig. 10C illustrates a partial front elevational view of the computing device 102 of Figs. 10A and 10B after receipt of the tap-based input at location 304 on front surface 300 of screen 132. It should be noted that screen 132 shows an approximate view of the content that is represented around location 304; in this case, the article above which was flying over the object 302. In this way, a user can explore the content using the enlarged window 142 as an aid to read the content without, in reality, zooming in on the content, and then the user can zoom in on a portion of the content 138 that is of interest to him.
La figura 11 ilustra una vista en alzado frontal parcial del dispositivo informático 102 que muestra el objeto 302 que sobrevuela por encima de un elemento interactivo (por ejemplo, el texto de menú en el que se lee “Deportes”) en la pantalla 132 para dar lugar a que se lleve a cabo una función relacionada con la representación en respuesta al objeto 302 que está realizando un sobrevuelo. En concreto, ciertas porciones del contenido 138 se pueden codificar para responder a los eventos de sobrevuelo. En el contexto de un ordenador de sobremesa, un evento de sobrevuelo puede tener lugar después de que el cursor se coloque por encima de un elemento interactivo en el contenido con una funcionalidad de sobrevuelo. En el contexto de un dispositivo informático habilitado para sobrevuelo, tal como el dispositivo informático 102, los eventos de sobrevuelo a partir de los objetos 302 se pueden vincular con eventos de puntero para dar lugar a que unas funciones relacionadas con la representación se lleven a cabo en respuesta a detectar un objeto 302 que sobrevuela por encima de la superficie delantera 300 de la pantalla 132.Fig. 11 illustrates a partial front elevational view of the computing device 102 showing the object 302 hovering above an interactive element (e.g., the menu text in which "Sports" is read) on the screen 132 to give place to perform a function related to the representation in response to object 302 that is performing a flyby. In particular, certain portions of the content 138 may be encoded to respond to the overflight events. In the context of a desktop computer, an overflight event can take place after the cursor is placed over an interactive element in the content with a flyby functionality. In the context of a computer device enabled for overflight, such as the computing device 102, the overflight events from the objects 302 can be linked with pointer events to cause functions related to the representation to be carried out. in response to detecting an object 302 that hovers over the front surface 300 of the screen 132.
La figura 11 muestra múltiples funciones relacionadas con la representación que se están llevando a cabo en respuesta a un objeto 302 detectado que está realizando un sobrevuelo por encima del texto de menú de “Deportes”. Por ejemplo, el módulo de interfaz de sobrevuelo 118 puede dar lugar a que la representación del texto interactivo en el que se lee “Deportes” realice una transición de una fuente sin negrita a una fuente en negrita para indicar al usuario que un objeto 302 se está detectando actualmente como que sobrevuela por encima del texto de menú de “Deportes”. También se pueden llevar a cabo otras funciones relacionadas con la representación, tales como representar un contenido adicional 1100; en este caso, un menú desplegable en sentido descendente de subcategorías para la categoría de “Deportes”.Figure 11 shows multiple functions related to the representation that are being carried out in response to a detected object 302 that is performing a flyby over the "Sports" menu text. For example, the overflight interface module 118 may cause the interactive text representation in which "Sports" is read to make a transition from a non-bold font to a bold font to indicate to the user that an object 302 is is currently detecting as it hovers above the "Sports" menu text. Other functions related to the representation can also be carried out, such as representing an additional content 1100; in this case, a drop-down menu of subcategories for the "Sports" category.
La figura 11 es ilustrativa de cómo el módulo de interfaz de sobrevuelo 118 puede proporcionar un soporte completo de ratón / puntero para un contenido accionable que es recibido por el módulo de explorador 110. Es decir, los exploradores web y otras aplicaciones de representación de contenido se pueden poner en práctica de una forma que proporcione una “paridad de sobremesa” en un dispositivo capaz de sobrevuelo, tal como el dispositivo informático 102. Por ejemplo, un teléfono inteligente con un factor de forma pequeño puede proporcionar un soporte de ratón pleno para habilitar eventos de sobrevuelo (por ejemplo, eventos de puntero de W3C) con un contenido representado cuando un objeto, tal como el objeto 302, realiza un sobrevuelo delante de una pantalla 132. En el ejemplo ilustrativo de la figura 11, un objeto 302 se puede sobrevolar por encima del texto de menú de “Deportes”, y el texto de menú se puede modificar (por ejemplo, ponerse en negrita, resaltarse, etc.) y /o un contenido adicional (por ejemplo, un menú desplegable en sentido descendente de subcategorías) se puede representar de una forma similar a cómo reacciona el mismo a un cursor que sobrevuela por encima del contenido accionable en un ordenador de sobremesa. De esta forma, todos los eventos de puntero (por ejemplo, pasar el ratón por encima, etc.) se pueden vincular con eventos de sobrevuelo para posibilitar tal paridad de sobremesa en otros dispositivos informáticos 102. Tal vinculación es posible en dispositivos capaces de sobrevuelo debido a la capacidad de distinguir entre interacciones de sobrevuelo e interacciones basadas en toque a partir de un objeto 302.Figure 11 is illustrative of how the overflight interface module 118 can provide complete mouse / pointer support for an actionable content that is received by the browser module 110. That is, web browsers and other content rendering applications they can be implemented in a way that provides a "desktop parity" in a device capable of overflight, such as the computing device 102. For example, a smartphone with a small form factor can provide full mouse support for enabling overflight events (e.g., W3C pointer events) with a content represented when an object, such as object 302, performs a flyby in front of a screen 132. In the illustrative example of Figure 11, an object 302 is you can fly over the "Sports" menu text, and the menu text can be modified (for example, bold, highlighted, et c.) and / or additional content (eg, a drop down menu of subcategories) can be represented in a manner similar to how it reacts to a cursor hovering above the actionable content on a desktop computer. In this way, all pointer events (for example, mouse over, etc.) can be linked with overflight events to enable such table parity in other computing devices 102. Such linking is possible in devices capable of overflight due to the ability to distinguish between overflight interactions and touch-based interactions from an object 302.
Para fines de ilustración adicional, la tabla 1 muestra un ejemplo de la lógica de “contacto” primario que puede ser utilizada por el módulo de interfaz de sobrevuelo 118 para determinar cómo responder a un objeto 302 que interacciona con la pantalla 132 por medio de una combinación de una entrada basada en sobrevuelo y una entrada basada en toque cuando la ventana ampliada 142 no se está representando actualmente.For purposes of further illustration, Table 1 shows an example of the primary "contact" logic that can be used by the overflight interface module 118 to determine how to respond to an object 302 that interacts with the screen 132 by means of a combination of an overflight-based entry and a touch-based entry when the enlarged window 142 is not currently being displayed.
T l 1:T l 1:
Figure imgf000014_0001
Figure imgf000014_0001
ContinuaciónContinuation
Figure imgf000015_0001
Figure imgf000015_0001
Adicionalmente, los siguientes son escenarios de ordenación de eventos a modo de ejemplo que pueden ir seguidos del módulo de interfaz de sobrevuelo 118 en respuesta a diversas interacciones entre el objeto 302 y la pantalla 132:Additionally, the following are example event ordering scenarios that may be followed by the overflight interface module 118 in response to various interactions between object 302 and screen 132:
Tocar hacia abajo: Tocar hacia abajo sobre un elemento que se representa en la superficie delantera 300 de la pantalla 132 puede producir la siguiente secuencia de eventos en el nodo sometido a una prueba de posicionamiento del mensaje de WM_PunteroAbajo: movimiento de ratón, pasar el puntero por encima, pasar el ratón por encima, intro ratón, puntero abajo, ratón abajo. Touch Down: Touching down on an element that is represented on the front surface 300 of the screen 132 can produce the following sequence of events in the node undergoing a positioning test of the WM_Pointer Down message: mouse movement, passing the pointer above, mouse over, intro mouse, pointer down, mouse down.
Elevar: Elevar con respecto a un elemento que se representa en la superficie delantera 300 de la pantalla 132 puede producir la siguiente secuencia de eventos en el nodo sometido a una prueba de posicionamiento del mensaje de WM_PunteroArriba: puntero arriba, ratón arriba, puntero fuera, ratón fuera, salir ratón. Elevate: Elevating with respect to an element that is represented on the front surface 300 of the screen 132 can produce the following sequence of events in the node subjected to a positioning test of the WM_PunterUp message: pointer up, mouse up, pointer out, Mouse out, exit mouse.
Mover el contacto (el objeto 302 permanece en contacto): Mover el contacto sobre la pantalla mientras se encuentra en contacto (después del toque hacia abajo) puede producir la siguiente secuencia: Move the contact (object 302 remains in contact): Moving the contact on the screen while it is in contact (after the touch down) can produce the following sequence:
[puntero fuera, ratón fuera], {salir ratón},[outside pointer, mouse outside], {exit mouse},
movimiento de puntero, movimiento de ratón,pointer movement, mouse movement,
[pasar el puntero por encima, pasar el ratón por encima], (intro ratón),[move the pointer over it, move the mouse over it], (intro mouse),
En el presente caso, los corchetes [ ] indican unos eventos que se desencadenan cuando el resultado nuevo de la prueba de posicionamiento no es igual al resultado previo de la prueba de posicionamiento. Estos eventos son desencadenados en el resultado previo de la prueba de posicionamiento. Las llaves { } indican unos eventos que se desencadenan cuando la actualización realiza una transición dentro / fuera de los límites de un elemento. Mover el contacto - SOBREVUELO: Producir actualizaciones de coordenadas sin encontrarse en contacto con la pantalla (objetos / dispositivos de entrada de campo cercano). La secuencia de eventos es tal como sigue:In the present case, the brackets [] indicate events that are triggered when the new result of the positioning test is not equal to the previous result of the positioning test. These events are triggered in the previous result of the positioning test. The braces {} indicate events that are triggered when the update makes a transition inside / outside the boundaries of an element. Move the contact - OVERFLIGHT: Produce coordinate updates without being in contact with the screen (objects / near field input devices). The sequence of events is as follows:
[puntero fuera, ratón fuera], {salir ratón},[outside pointer, mouse outside], {exit mouse},
sobrevuelo de puntero, movimiento de ratón,pointer flyby, mouse movement,
[pasar el puntero por encima, pasar el ratón por encima], (intro ratón),[move the pointer over it, move the mouse over it], (intro mouse),
Mover el contacto dando lugar a que comience la manipulación: Cuando una manipulación directa se hace cargo del contacto primario para fines de manipulación (que se señaliza por medio de un mensaje de WM_CAMBIOCAPTACIÓNPUNTERO), entonces se pueden enviar los siguientes eventos: puntero fuera, ratón fuera, salir ratón, cancelación puntero, ratón arriba. En el presente caso, el evento de “ratón arriba” selecciona como objetivo el elemento de HTML (una ventana). Move the contact causing the manipulation to begin: When a direct manipulation takes over the primary contact for manipulation purposes (which is signaled by means of a WM_CAMBIOCAPTACIÓNPUNTERO message), then the following events can be sent: pointer out, mouse outside, exit mouse, cancel pointer, mouse up. In the present case, the "mouse up" event selects the HTML element (a window) as the target.
Procesos a modo de ejemploProcesses as an example
Las figuras 12, 13, y 14 ilustran unos procesos como una colección de bloques en una gráfica de flujo lógico, que representa una secuencia de operaciones que se puede poner en práctica en soporte físico, soporte lógico, o una combinación de los mismos. En el contexto del soporte lógico, los bloques representan unas instrucciones ejecutables por ordenador que, cuando son ejecutadas por uno o más procesadores, llevan a cabo las operaciones enumeradas. En general, las instrucciones ejecutables por ordenador incluyen rutinas, programas, objetos, componentes, estructuras de datos, y similares, que llevan a cabo funciones particulares o ponen en práctica tipos de datos abstractos particulares. No se tiene por objeto que el orden en el que se describen las operaciones se interprete como una limitación, y se puede combinar cualquier número de los bloques descritos en cualquier orden y / o en paralelo para poner en práctica los procesos.Figures 12, 13, and 14 illustrate processes as a collection of blocks in a logical flow chart, which represents a sequence of operations that can be implemented in hardware, software, or a combination thereof. In the context of the software, the blocks represent computer executable instructions which, when executed by one or more processors, carry out the operations listed. In general, computer executable instructions include routines, programs, objects, components, data structures, and the like, which perform particular functions or implement particular abstract data types. It is not intended that the order in which the operations are described is interpreted as a limitation, and any number of the described blocks can be combined in any order and / or in parallel to implement the processes.
La figura 12 es un diagrama de flujo de un proceso ilustrativo 1200 para detectar un objeto 302 que está realizando un sobrevuelo y, en respuesta, representar una ventana ampliada 142 con un contenido accionable en la misma. Para fines de análisis, el proceso 1200 se describe con referencia al entorno de sistema informático 100 de la figura 1 y, en particular, el módulo de explorador 110, el módulo de interfaz de sobrevuelo 118, el sensor o sensores de proximidad 128, y la pantalla o pantallas 132.Figure 12 is a flowchart of an illustrative process 1200 for detecting an object 302 that is performing a flyby and, in response, representing an enlarged window 142 with an operable content therein. For analysis purposes, the process 1200 is described with reference to the computer system environment 100 of Figure 1 and, in particular, the browser module 110, the overflight interface module 118, the proximity sensor or sensors 128, and the screen or screens 132.
En 1202, el módulo de explorador 110 puede representar el contenido 138 en la pantalla 132 del dispositivo informático 102. Tal como se ha descrito en lo que antecede, al menos parte del contenido 138 puede ser accionable mediante la respuesta a una entrada de usuario. Por ejemplo, el contenido 138 que se representa en la pantalla 132 en 1202 puede comprender un contenido de página web que incluye, sin limitación, parte o la totalidad del texto interactivo (por ejemplo, un texto seleccionable), vínculos (por ejemplo, hipervínculos), botones programables (por ejemplo, botones de reproducción de vídeo / audio), y similares, que, en respuesta a una entrada de usuario, puede dar lugar a que se lleve a cabo una función de navegación (por ejemplo, al hacer que el explorador navegue a una página web diferente tras la selección de un vínculo), una función relacionada con la representación (por ejemplo, modificar la representación del contenido 138, representar un contenido adicional, etc.), y así sucesivamente.At 1202, the browser module 110 may represent the content 138 on the screen 132 of the computing device 102. As described above, at least part of the content 138 may be operable. through the response to a user input. For example, the content 138 that is displayed on the screen 132 at 1202 may comprise a web page content that includes, without limitation, part or all of the interactive text (e.g., selectable text), links (e.g., hyperlinks). ), programmable buttons (e.g., video / audio playback buttons), and the like, which, in response to a user input, may result in a navigation function being performed (e.g. the browser navigates to a different web page after the selection of a link), a function related to the representation (for example, modify the representation of the content 138, represent additional content, etc.), and so on.
En 1204, el sensor o sensores de proximidad 128 pueden detectar un objeto 302 que está realizando un sobrevuelo delante de la pantalla 132. Es decir, el objeto 302 se puede encontrar delante de, pero no en contacto con, una superficie delantera 300 de la pantalla 132 a una distancia con respecto a la superficie delantera 300 de tal modo que el sensor o sensores de proximidad 128 pueden detectar el objeto 302. En un ejemplo ilustrativo, el sensor o sensores de proximidad 128 comprenden una matriz de sensores capacitivos que se incrusta dentro de o por detrás de la pantalla 132, y la intensidad de señal de la matriz de sensores capacitivos puede ser suficiente para detectar los objetos 302 en las proximidades (por ejemplo, dentro del intervalo de aproximadamente 0,001 pulgadas (0,0254 mm) a aproximadamente 8 pulgadas (20,32 cm)) de la superficie delantera 300.At 1204, the proximity sensor or sensors 128 can detect an object 302 that is performing a flyby in front of the display 132. That is, the object 302 may be located in front of, but not in contact with, a front surface 300 of the screen 132 at a distance from the front surface 300 such that the proximity sensor or sensors 128 can detect the object 302. In an illustrative example, the proximity sensor or sensors 128 comprise a matrix of capacitive sensors that is embedded within or behind the screen 132, and the signal strength of the array of capacitive sensors may be sufficient to detect the objects 302 in the vicinity (e.g., within the range of about 0.001 inch (0.0254 mm) to approximately 8 inches (20.32 cm)) from the front surface 300.
En 1206, el módulo de interfaz de sobrevuelo 118 puede determinar una ubicación 304 en la superficie delantera 300 de la pantalla 132 que se corresponde con la posición del objeto en relación con la superficie delantera 300 de la pantalla 132. En algunas formas de realización, el módulo de interfaz de sobrevuelo 118 puede recibir la ubicación 304 a partir de unos datos que se obtienen a partir del sensor o sensores de proximidad 128 (por ejemplo, una posición de un electrodo particular del sensor o sensores de proximidad 128). En otras formas de realización, el módulo de interfaz de sobrevuelo 118 puede acceder a los datos de programa 112 para obtener una ubicación o ubicaciones de píxel que se corresponden con una posición del objeto 132 que se detecta por medio del sensor o sensores de proximidad 128. En cualquier caso, la ubicación 304 puede estar separada una distancia lo más corta con respecto al objeto 302 en relación con las distancias desde el objeto 302 hasta otras ubicaciones en la superficie delantera 300 de la pantalla 132. De esta forma, la posición del objeto se puede resolver como la ubicación 304 basándose en una dirección desde el objeto 302 hasta la superficie delantera 300 de la pantalla 132 que es perpendicular con respecto a la superficie delantera 300.At 1206, the overflight interface module 118 can determine a location 304 on the front surface 300 of the screen 132 which corresponds to the position of the object in relation to the front surface 300 of the screen 132. In some embodiments, the overflight interface module 118 can receive the location 304 from data that is obtained from the sensor or proximity sensors 128 (e.g., a position of a particular sensor electrode or proximity sensors 128). In other embodiments, the overflight interface module 118 can access the program data 112 to obtain a pixel location or locations that correspond to a position of the object 132 that is detected by the proximity sensor or sensors. In any case, the location 304 may be spaced a shorter distance with respect to the object 302 relative to the distances from the object 302 to other locations on the front surface 300 of the screen 132. In this way, the position of the The object can be resolved as the location 304 based on a direction from the object 302 to the front surface 300 of the screen 132 that is perpendicular with respect to the front surface 300.
En algunas formas de realización, el módulo de interfaz de sobrevuelo 118 puede determinar si la ubicación 304 se encuentra dentro de un área de control 800 de un explorador con el fin de responder de forma selectiva a los objetos 302 que están realizando un sobrevuelo dentro del área de control 800, pero no responder a los objetos 302 fuera del área de control 800. Por ejemplo, se puede determinar que un objeto 302 que sobrevuela por encima de una barra de navegación de un explorador web que se representa en la pantalla 132 está situado fuera del área de control 800. En algunas formas de realización, el módulo de interfaz de sobrevuelo 118 puede determinar adicionalmente si un gesto de entrada se recibe a partir del objeto 302 cuando se encuentra en un estado de sobrevuelo. Por ejemplo, si el objeto 302 permanece dentro de un área 306 que rodea la ubicación 304 durante un periodo de tiempo previamente determinado (por ejemplo, 50 milisegundos), se puede determinar que un gesto de entrada ha sido proporcionado por el objeto 302.In some embodiments, the overflight interface module 118 can determine whether the location 304 is within a control area 800 of a scanner in order to selectively respond to the objects 302 that are performing a flyby within the control area 800, but not respond to objects 302 outside control area 800. For example, it can be determined that an object 302 that hovers over a navigation bar of a web browser that is displayed on screen 132 is located outside the control area 800. In some embodiments, the overflight interface module 118 may additionally determine whether an incoming gesture is received from the object 302 when it is in an overflight state. For example, if the object 302 remains within an area 306 surrounding the location 304 for a predetermined period of time (eg, 50 milliseconds), it can be determined that an input gesture has been provided by the object 302.
En 1208, el módulo de interfaz de sobrevuelo 118 puede determinar una porción 306 del contenido 138 que se representa en la ubicación 304 o dentro de una distancia umbral, h, con respecto a la ubicación 304. La porción 306 se va a representar dentro de una ventana ampliada 142 para facilitar la legibilidad de la porción 306 para un usuario del dispositivo informático 102. En ese sentido, la porción 306 se ha de corresponder con la ubicación 304 en que esta sea una porción del contenido 138 que se encuentra en una proximidad relativamente cercana a la ubicación 304. En este sentido, la porción 306 del contenido 308 que se determina / selecciona en 1208 se puede encontrar directamente debajo del objeto 304 (es decir, en la ubicación 304), o al menos dentro de una distancia umbral, h, con respecto a la ubicación 304 (por ejemplo, directamente por encima del objeto 302, tal como se muestra en la figura 3C).At 1208, the overflight interface module 118 can determine a portion 306 of the content 138 that is displayed at the location 304 or within a threshold distance, h, with respect to the location 304. The portion 306 is to be represented within an enlarged window 142 for facilitating readability of the portion 306 for a user of the computing device 102. In that sense, the portion 306 is to correspond to the location 304 in that this is a portion of the content 138 that is in close proximity relatively close to location 304. In this regard, portion 306 of content 308 that is determined / selected at 1208 can be found directly below object 304 (ie, at location 304), or at least within a threshold distance , h, with respect to location 304 (e.g., directly above object 302, as shown in Figure 3C).
En 1210, el módulo de interfaz de sobrevuelo 118 puede representar una ventana ampliada 142 en una región de la pantalla que contiene la porción 306 del contenido. La porción 306 que se representa dentro de la ventana ampliada 142 se puede representar en una forma accionable (es decir, la porción 306 dentro de la ventana ampliada 142 puede ser accionable mediante la respuesta a una entrada de usuario cuando la entrada de usuario se proporciona dentro de la ventana ampliada 142). El proceso 1200 facilita una exploración conveniente del contenido 138 que se representa en la pantalla 132, en especial en circunstancias en las que el contenido 138 es rico y denso, lo que hace que la legibilidad y la susceptibilidad de selección sean un problema en algunas pantallas 132.At 1210, the overflight interface module 118 may represent an enlarged window 142 in a region of the screen containing the portion 306 of the content. The portion 306 that is depicted within the enlarged window 142 may be represented in an operable form (i.e., the portion 306 within the enlarged window 142 may be operable by response to a user input when the user input is provided. within the enlarged window 142). The process 1200 facilitates a convenient exploration of the content 138 that is displayed on the screen 132, especially in circumstances where the content 138 is rich and dense, which makes readability and susceptibility to selection a problem in some screens 132
Para fines de ilustración adicional, la tabla 2 muestra la lógica de interacción de sobrevuelo que puede ser utilizada por el módulo de interfaz de sobrevuelo 118 para determinar cómo responder a un objeto 302 que interacciona con la pantalla 132 por medio de una combinación de una entrada basada en sobrevuelo y una entrada basada en toque. For purposes of further illustration, table 2 shows the overflight interaction logic that can be used by the overflight interface module 118 to determine how to respond to an object 302 that interacts with the screen 132 by means of a combination of an input based on overflight and a touch based entry.
Tabla 2:Table 2:
Figure imgf000017_0001
Figure imgf000017_0001
La figura 13 es un diagrama de flujo de un proceso ilustrativo 1300 para detectar el movimiento de un objeto 302 que está realizando un sobrevuelo y, en respuesta, mover una ventana ampliada 142 en una pantalla 132 con el objeto 302 que está realizando un sobrevuelo. Para fines de análisis, el proceso 1300 se describe con referencia al entorno de sistema informático 100 de la figura 1 y, en particular, el módulo de interfaz de sobrevuelo 118, el sensor o sensores de proximidad 128, y la pantalla o pantallas 132. El proceso 1300 puede continuar a partir de la etapa 1210 del proceso 1200 de la figura 12.Figure 13 is a flowchart of an illustrative process 1300 for detecting the movement of an object 302 that is performing a flyby and, in response, moving an enlarged window 142 on a screen 132 with the object 302 that is performing a flyby. For analysis purposes, the process 1300 is described with reference to the computer system environment 100 of Figure 1 and, in particular, the overflight interface module 118, the proximity sensor or sensors 128, and the screen 132. Process 1300 may continue from step 1210 of process 1200 of Figure 12.
En 1302, el módulo de interfaz de sobrevuelo 118 puede determinar que el objeto 302 se ha movido por debajo de una velocidad previamente determinada a través de la superficie delantera 300 de la pantalla 132 al tiempo que mantiene una relación de separación con la superficie delantera 300 de la pantalla 132. La velocidad previamente determinada se puede establecer de tal modo que un objeto 302 que se mueve demasiado rápido (por ejemplo, a o por encima de la velocidad previamente determinada) a través de la superficie delantera 300 de una forma con sobrevuelo puede dar lugar a que una ventana ampliada 142 previamente representada desaparezca de la pantalla 132. Con el fin de determinar que el objeto 302 se está moviendo a través de la superficie delantera 300 de la pantalla 132, el módulo de interfaz de sobrevuelo 118 puede aprovechar/acceder a datos a partir del sensor o sensores de proximidad 128 que indican unas ubicaciones detectadas que se corresponden con el objeto 302, y puede hacer referencia adicionalmente a un reloj o a un temporizador similar para determinar una velocidad del movimiento del objeto a través de la superficie delantera 300.At 1302, the overflight interface module 118 can determine that the object 302 has moved below a predetermined speed through the front surface 300 of the screen 132 while maintaining a separation relationship with the front surface 300. from the screen 132. The previously determined speed can be set such that an object 302 that moves too fast (for example, at or above the previously determined speed) through the front surface 300 of a flyby shape can causing an enlarged window 142 previously displayed to disappear from the screen 132. In order to determine that the object 302 is moving through the front surface 300 of the screen 132, the overflight interface module 118 can take advantage of the accessing data from the sensor or proximity sensors 128 indicating detected locations corresponding to the object 302, and it may additionally refer to a clock or a similar timer to determine a speed of movement of the object through the front surface 300.
En 1304, el módulo de interfaz de sobrevuelo 118 puede representar la ventana ampliada 142 (que se representó previamente en una primera región de la pantalla 132) en otra región de la pantalla 132 en respuesta al movimiento detectado del objeto en 1302. Esto se puede llevar a cabo a unos intervalos de tiempo que hacen que a un usuario le parezca, a simple vista, como si la ventana ampliada 142 se estuviera moviendo con el movimiento del objeto 302. Cada ubicación nueva del objeto 302 puede dar lugar al movimiento de la ventana ampliada 142 a una región nueva de la pantalla 132 en 1304. El proceso 1300 puede permitir que un usuario arrastre / mueva un objeto 302 en una relación de separación por encima de la superficie delantera 300 de la pantalla 132 para explorar porciones diferentes del contenido representado 138.At 1304, the overflight interface module 118 can represent the enlarged window 142 (which was previously displayed in a first region of the screen 132) in another region of the screen 132 in response to the detected movement of the object at 1302. This can be perform at intervals of time that make a user appear, at first glance, as if the enlarged window 142 is moving with the movement of the object 302. Each new location of the object 302 can lead to the movement of the enlarged window 142 to a new region of screen 132 at 1304. Process 1300 may allow a user to drag / move an object 302 in a separation ratio above the front surface 300 of the screen 132 to scan different portions of the content represented 138.
La figura 14 es un diagrama de flujo de un proceso ilustrativo 1400 para cambiar un nivel de ampliación del contenido dentro de una ventana ampliada 142 en respuesta al movimiento de un objeto 302 en una dirección perpendicular con respecto a una superficie delantera 300 de una pantalla 132. Para fines de análisis, el proceso 1400 se describe con referencia al entorno de sistema informático 100 de la figura 1 y, en particular, el módulo de interfaz de sobrevuelo 118, el sensor o sensores de proximidad 128, y la pantalla o pantallas 132.Fig. 14 is a flowchart of an illustrative process 1400 for changing a level of content expansion within an enlarged window 142 in response to movement of an object 302 in one direction perpendicular with respect to a front surface 300 of a screen 132. For analysis purposes, the process 1400 is described with reference to the computer system environment 100 of Figure 1 and, in particular, the overflight interface module 118, the sensor or proximity sensors 128, and the screen or screens 132.
En 1402, el sensor o sensores de proximidad 128 pueden detectar un objeto 302 que está realizando un sobrevuelo delante de la pantalla 132 que está representando el contenido 138. Es decir, el objeto 302 se puede encontrar delante de, pero no en contacto con, una superficie delantera 300 de la pantalla 132 a una distancia con respecto a la superficie delantera 300 de tal modo que el sensor o sensores de proximidad 128 pueden detectar el objeto 302. En 1404, el módulo de interfaz de sobrevuelo 118 puede representar una ventana ampliada 142 en una región de la pantalla que contiene una porción 306 del contenido 138 en una forma accionable que se corresponde con la posición del objeto 302 que se detecta en 1402.At 1402, the proximity sensor or sensors 128 can detect an object 302 that is performing a flyby in front of the screen 132 that is representing the content 138. That is, the object 302 can be found in front of, but not in contact with, a front surface 300 of the screen 132 at a distance from the front surface 300 such that the proximity sensor or sensors 128 can detect the object 302. At 1404, the flyby interface module 118 may represent an enlarged window 142 in a region of the screen containing a portion 306 of the content 138 in an operable shape corresponding to the position of the object 302 which is detected at 1402.
En 1406, el módulo de interfaz de sobrevuelo 118 puede determinar (basándose en los datos que se reciben a partir del sensor o sensores de proximidad 128) que el objeto 302 se ha movido más lejos con respecto a la superficie delantera 300 de la pantalla 132 en una dirección perpendicular con respecto a la superficie delantera 300 (es decir, la dirección z que se muestra en la figura 3B).At 1406, the overflight interface module 118 can determine (based on the data received from the sensor or proximity sensors 128) that the object 302 has moved further away from the front surface 300 of the screen 132. in a direction perpendicular to the front surface 300 (ie, the z-direction shown in Figure 3B).
En 1408, el módulo de interfaz de sobrevuelo 118 puede disminuir un nivel de ampliación de la porción 306 del contenido 138 dentro de la ventana ampliada 142 de tal modo que la ventana ampliada 142 se aleja para revelar más del contenido 138 dentro de la ventana ampliada 142 cuando el objeto 302 se mueve más lejos con respecto a la superficie delantera 300.At 1408, the overflight interface module 118 can decrease an enlargement level of the portion 306 of the content 138 within the enlarged window 142 such that the enlarged window 142 moves away to reveal more of the content 138 within the enlarged window. 142 when the object 302 moves farther with respect to the front surface 300.
En 1410 el módulo de interfaz de sobrevuelo 118 puede determinar (basándose en los datos que se reciben a partir del sensor o sensores de proximidad 128) que el objeto 302 se ha movido más cerca de la superficie delantera 300 de la pantalla 132 en una dirección perpendicular con respecto a la superficie delantera 300 (es decir, la dirección z que se muestra en la figura 3B).At 1410 the overflight interface module 118 can determine (based on the data received from the sensor or proximity sensors 128) that the object 302 has moved closer to the front surface 300 of the screen 132 in one direction perpendicular with respect to the front surface 300 (ie, the z-direction shown in Figure 3B).
En 1412, el módulo de interfaz de sobrevuelo 118 puede aumentar el nivel de ampliación de la porción 306 del contenido 138 dentro de la ventana ampliada 142 de tal modo que la ventana ampliada 142 se acerca para revelar menos del contenido 138 dentro de la ventana ampliada 142 cuando el objeto 302 se mueve más cerca de la superficie delantera 300.At 1412, the overflight interface module 118 may increase the level of enlargement of the portion 306 of the content 138 within the enlarged window 142 such that the enlarged window 142 approaches to reveal less of the content 138 within the enlarged window. 142 when the object 302 moves closer to the front surface 300.
El entorno y los elementos individuales que se describen en el presente documento pueden incluir, por supuesto muchos otros componentes lógicos, programáticos y físicos, aquellos de los cuales que se muestran en las figuras adjuntas son meramente ejemplos que están relacionados con el análisis en el presente documento.The environment and individual elements that are described herein may, of course, include many other logical, programmatic and physical components, those of which shown in the accompanying figures are merely examples that are related to the present analysis. document.
Se pueden usar otras arquitecturas para poner en práctica la funcionalidad descrita, y se tiene por objeto que se encuentren dentro del alcance de la presente divulgación. Además, a pesar de que en lo que antecede se han definido unas distribuciones específicas de responsabilidades para fines de análisis, las diversas funciones y responsabilidades se podrían distribuir y dividir de formas diferentes, dependiendo de las circunstancias. Other architectures may be used to implement the described functionality, and are intended to be within the scope of this disclosure. In addition, despite the fact that, in the foregoing, specific distributions of responsibilities have been defined for analysis purposes, the various functions and responsibilities could be distributed and divided in different ways, depending on the circumstances.

Claims (15)

REIVINDICACIONES
1. Un procedimiento que comprende:1. A procedure comprising:
representar (1202) un contenido en una pantalla;represent (1202) a content on a screen;
detectar (1204) un objeto delante de, pero no en contacto con, una superficie delantera de la pantalla;detecting (1204) an object in front of, but not in contact with, a front surface of the screen;
determinar (1206), al menos en parte en respuesta a la detección del objeto, una ubicación en la superficie delantera de la pantalla que está separada una distancia lo más corta con respecto al objeto en relación con las distancias desde el objeto hasta otras ubicaciones en la superficie delantera de la pantalla;determining (1206), at least in part in response to object detection, a location on the front surface of the screen that is spaced a shortest distance from the object in relation to the distances from the object to other locations in the front surface of the screen;
determinar (1208) una porción del contenido que se representa en la ubicación o dentro de una distancia umbral con respecto a la ubicación;determining (1208) a portion of the content that is represented at the location or within a threshold distance with respect to the location;
representar (1210), en una región de la pantalla, una ventana ampliada de la porción del contenido; yrepresent (1210), in a region of the screen, an enlarged window of the content portion; Y
mover (1304) la ventana ampliada con el objeto a través de la superficie delantera de la pantalla a otra región de la pantalla, en el que la ventana ampliada, después del movimiento, contiene otra porción del contenido que se representa en, o dentro de una distancia umbral con respecto a, una ubicación nueva en la superficie delantera de la pantalla que se corresponde con una posición del objeto después de que el objeto se haya movido a través de la superficie delantera de la pantalla,moving (1304) the enlarged window with the object through the front surface of the screen to another region of the screen, wherein the enlarged window, after the movement, contains another portion of the content that is represented on, or within a threshold distance with respect to, a new location on the front surface of the screen that corresponds to a position of the object after the object has moved across the front surface of the screen,
caracterizado porquecharacterized because
dicho movimiento (1304) de la ventana ampliada se lleva a cabo en respuesta a determinar (1302) que el objeto se ha movido por debajo de una velocidad previamente determinada a través de la superficie delantera de la pantalla al tiempo que mantiene la relación de separación con la superficie delantera de la pantalla.said movement (1304) of the enlarged window is carried out in response to determining (1302) that the object has moved below a previously determined speed through the front surface of the screen while maintaining the separation ratio with the front surface of the screen.
2. El procedimiento de la reivindicación 1, en el que la porción del contenido incluye uno o más elementos interactivos que comprenden al menos uno de un vínculo incrustado, un botón de reproducción de vídeo o un botón de reproducción de audio, y en el que elementos individuales de los uno o más elementos interactivos están configurados para responder a una entrada de usuario cuando la entrada de usuario se proporciona dentro de la ventana ampliada.The method of claim 1, wherein the content portion includes one or more interactive elements comprising at least one of an embedded link, a video playback button or an audio playback button, and wherein individual elements of the one or more interactive elements are configured to respond to a user input when the user input is provided within the enlarged window.
3. El procedimiento de la reivindicación 2, en el que la entrada de usuario comprende que el objeto entre en contacto con la superficie delantera de la pantalla sobre los elementos individuales de los uno o más elementos interactivos dentro de la ventana ampliada.The method of claim 2, wherein the user input comprises that the object comes into contact with the front surface of the screen on the individual elements of the one or more interactive elements within the enlarged window.
4. El procedimiento de la reivindicación 1, en el que la ventana ampliada comprende una ventana de explorador que representa la porción del contenido.The method of claim 1, wherein the enlarged window comprises a browser window representing the content portion.
5. El procedimiento de la reivindicación 1, en el que la detección del objeto delante de, pero no en contacto con, la superficie delantera de la pantalla comprende determinar un gesto de entrada a partir del objeto.The method of claim 1, wherein the detection of the object in front of, but not in contact with, the front surface of the screen comprises determining an input gesture from the object.
6. El procedimiento de la reivindicación 5, en el que el gesto de entrada se determina al:6. The method of claim 5, wherein the input gesture is determined by:
detectar que el objeto se encuentra en una primera posición que se encuentra dentro de una distancia umbral con respecto a la superficie delantera que se mide en una dirección perpendicular con respecto a la superficie delantera; ydetecting that the object is in a first position that is within a threshold distance with respect to the front surface that is measured in a direction perpendicular to the front surface; Y
determinar que el objeto se encuentra dentro de un área previamente determinada de la primera posición durante un periodo de tiempo previamente determinado, siendo el área previamente determinada paralela con respecto a la superficie delantera de la pantalla.determining that the object is within a predetermined area of the first position during a predetermined period of time, the previously determined area being parallel with respect to the front surface of the screen.
7. El procedimiento de la reivindicación 1, en el que la superficie delantera de la pantalla comprende una porción de arriba, una porción de debajo, un lado izquierdo y un lado derecho, apuntando una dirección vertical positiva hacia la porción de arriba, y en el que la región incluye un límite de debajo que se encuentra a una distancia previamente determinada con respecto a la ubicación en la dirección vertical positiva.The method of claim 1, wherein the front surface of the screen comprises a top portion, a bottom portion, a left side and a right side, pointing a positive vertical direction toward the top portion, and in that the region includes a limit below that is at a predetermined distance from the location in the positive vertical direction.
8. El procedimiento de la reivindicación 1, que comprende adicionalmente:The method of claim 1, further comprising:
determinar (1406) que el objeto se ha movido más lejos con respecto a la superficie delantera de la pantalla en una dirección perpendicular con respecto a la superficie delantera; ydetermining (1406) that the object has moved further away from the front surface of the screen in a direction perpendicular to the front surface; Y
en respuesta a la determinación de que el objeto se ha movido más lejos con respecto a la superficie delantera, disminuir (1408) un nivel de ampliación de la porción del contenido dentro de la ventana ampliada.in response to the determination that the object has moved further away from the front surface, decrease (1408) a level of enlargement of the portion of the content within the enlarged window.
9. El procedimiento de la reivindicación 1, en el que la región tiene una anchura que no es mayor que aproximadamente un 75 % de una anchura de la pantalla.The method of claim 1, wherein the region has a width that is not greater than about 75% of a screen width.
10. El procedimiento de la reivindicación 1, que comprende adicionalmente dar lugar a que la vista ampliada desaparezca de la pantalla en respuesta a al menos uno de: (i) determinar que el objeto se mueve fuera de un área de control de la pantalla, (ii) determinar que el objeto se mueve a través de la superficie delantera de la pantalla por encima de una velocidad previamente determinada, (iii) determinar que el objeto entra en contacto con la superficie delantera de la pantalla fuera de la región, o (iv) determinar que el objeto se ha movido lejos de la superficie delantera de la pantalla en una dirección perpendicular con respecto a la superficie delantera de la pantalla más allá de una distancia umbral con respecto a la superficie delantera de la pantalla que se mide a lo largo de la dirección.The method of claim 1, further comprising causing the magnified view to disappear from the screen in response to at least one of: (i) determining that the object moves outside of a screen control area, (ii) determining that the object moves across the front surface of the screen above a previously determined speed, (iii) determining that the object comes into contact with the front surface of the screen outside the region, or ( iv) determine that the object has moved away from the front surface of the screen in a direction perpendicular to the front surface of the screen beyond of a threshold distance with respect to the front surface of the screen that is measured along the direction.
11. El procedimiento de la reivindicación 1, que comprende adicionalmente:The method of claim 1, further comprising:
determinar que la ubicación se encuentra dentro de una distancia umbral con respecto a un límite de un área de control de la pantalla;determining that the location is within a threshold distance with respect to a limit of a screen control area;
determinar que el objeto se ha movido a través de la superficie delantera de la pantalla al tiempo que mantiene una relación de separación con la superficie delantera de la pantalla a una ubicación nueva que se encuentra más cerca del límite del área de control en relación con una distancia con respecto a la ubicación hasta el límite del área de control; ydetermining that the object has moved across the front surface of the screen while maintaining a separation relationship with the front surface of the screen to a new location that is closer to the limit of the control area relative to a distance with respect to the location to the limit of the control area; Y
en respuesta a la determinación de que el objeto se ha movido a la ubicación nueva, realizar un movimiento panorámico de la porción del contenido dentro de la ventana ampliada para revelar otra porción del contenido que se representa más cerca del límite del área de control en relación con una distancia desde la porción del contenido hasta el límite del área de control.in response to the determination that the object has moved to the new location, perform a panning of the content portion within the enlarged window to reveal another portion of the content that is represented closer to the control area boundary in relation with a distance from the content portion to the limit of the control area.
12. El procedimiento de la reivindicación 1, que comprende adicionalmente:The method of claim 1, further comprising:
mientras se representa la ventana ampliada, detectar un primer contacto basado en toque a partir del objeto en la superficie delantera de la pantalla en la ubicación y un segundo contacto basado en toque a partir del objeto en la superficie delantera de la pantalla en la ubicación, detectándose el segundo contacto dentro de un periodo de tiempo umbral desde la detección del primer contacto; ywhile the enlarged window is rendered, detect a first touch-based contact from the object on the front surface of the screen at the location and a second touch-based contact from the object on the front surface of the screen at the location, the second contact being detected within a threshold time period from the detection of the first contact; Y
en respuesta a la detección del primer contacto y el segundo contacto, representar, en la pantalla, una vista acercada del contenido en torno a la ubicación.in response to the detection of the first contact and the second contact, represent, on the screen, an approximate view of the content around the location.
13. El procedimiento de la reivindicación 1, que comprende adicionalmente:The method of claim 1, further comprising:
mientras se representa la ventana ampliada, detectar un contacto basado en toque a partir del objeto en la superficie delantera de la pantalla en la ubicación; yWhile the enlarged window is rendered, detect a touch-based contact from the object on the front surface of the screen at the location; Y
en respuesta a la detección del contacto basado en toque, retirar la ventana ampliada.In response to contact-based touch detection, remove the enlarged window.
14. Un sistema que comprende:14. A system that includes:
una pantalla (132) que está configurado para representar un contenido;a screen (132) that is configured to represent a content;
uno o más sensores (128) que están configurados para detectar un objeto delante de, pero no en contacto con, una superficie delantera de la pantalla;one or more sensors (128) that are configured to detect an object in front of, but not in contact with, a front surface of the screen;
uno o más procesadores (104); yone or more processors (104); Y
una memoria (106, 122) que almacena unas instrucciones ejecutables por ordenador que, cuando son ejecutadas por los uno o más procesadores, dan lugar a que los uno o más procesadores lleven a cabo unos actos que comprenden:a memory (106, 122) that stores computer-executable instructions that, when executed by the one or more processors, cause the one or more processors to carry out acts that include:
determinar (1204, 1206), al menos en parte en respuesta a detectar el objeto delante de, pero no en contacto con, la superficie delantera de la pantalla, una ubicación en la superficie delantera de la pantalla que está separada una distancia lo más corta con respecto al objeto en relación con las distancias desde el objeto hasta otras ubicaciones en la superficie delantera de la pantalla;determine (1204, 1206), at least in part in response to detecting the object in front of, but not in contact with, the front surface of the screen, a location on the front surface of the screen that is spaced a shortest distance with respect to the object in relation to the distances from the object to other locations on the front surface of the screen;
determinar (1208) una porción del contenido que se representa en la ubicación o dentro de una distancia umbral con respecto a la ubicación;determining (1208) a portion of the content that is represented at the location or within a threshold distance with respect to the location;
dar lugar a (1210) una presentación, en una región de la pantalla, de una ventana ampliada de la porción del contenido; ygiving rise to (1210) a presentation, in a region of the screen, of an enlarged window of the content portion; Y
mover (1304) la ventana ampliada con el objeto a través de la superficie delantera de la pantalla a otra región de la pantalla, en el que la ventana ampliada, después del movimiento, contiene otra porción del contenido que se representa en, o dentro de una distancia umbral con respecto a, una ubicación nueva en la superficie delantera de la pantalla que se corresponde con una posición del objeto después de que el objeto se haya movido a través de la superficie delantera de la pantalla,moving (1304) the enlarged window with the object through the front surface of the screen to another region of the screen, wherein the enlarged window, after the movement, contains another portion of the content that is represented on, or within a threshold distance with respect to, a new location on the front surface of the screen that corresponds to a position of the object after the object has moved across the front surface of the screen,
caracterizado porquecharacterized because
dicho movimiento (1304) de la ventana ampliada se lleva a cabo en respuesta a determinar (1302) que el objeto se ha movido por debajo de una velocidad previamente determinada a través de la superficie delantera de la pantalla al tiempo que mantiene la relación de separación con la superficie delantera de la pantalla. said movement (1304) of the enlarged window is carried out in response to determining (1302) that the object has moved below a previously determined speed through the front surface of the screen while maintaining the separation ratio with the front surface of the screen.
15. El sistema de la reivindicación 14, en el que los uno o más sensores están configurados adicionalmente para determinar una distancia entre la superficie delantera de la pantalla y el objeto en una dirección perpendicular con respecto a la superficie delantera de la pantalla, comprendiendo adicionalmente los actos:The system of claim 14, wherein the one or more sensors are further configured to determine a distance between the front surface of the screen and the object in a direction perpendicular to the front surface of the screen, further comprising the acts:
determinar (1406) que el objeto se ha movido más lejos con respecto a la superficie delantera en la dirección; y en respuesta a la determinación de que el objeto se ha movido más lejos con respecto a la superficie delantera, disminuir (1408) un nivel de ampliación de la porción del contenido dentro de la ventana ampliada. determining (1406) that the object has moved further away from the front surface in the direction; and in response to the determination that the object has moved farther with respect to the front surface, decrease (1408) an expansion level of the portion of the content within the enlarged window.
ES15757043T 2014-08-12 2015-08-10 Interaction based on superposition with represented content Active ES2702718T3 (es)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/458,136 US9594489B2 (en) 2014-08-12 2014-08-12 Hover-based interaction with rendered content
PCT/US2015/044406 WO2016025356A1 (en) 2014-08-12 2015-08-10 Hover-based interaction with rendered content

Publications (1)

Publication Number Publication Date
ES2702718T3 true ES2702718T3 (es) 2019-03-05

Family

ID=54015184

Family Applications (1)

Application Number Title Priority Date Filing Date
ES15757043T Active ES2702718T3 (es) 2014-08-12 2015-08-10 Interaction based on superposition with represented content

Country Status (6)

Country Link
US (2) US9594489B2 (es)
EP (1) EP3180687B1 (es)
KR (1) KR20170041219A (es)
CN (1) CN106575203B (es)
ES (1) ES2702718T3 (es)
WO (1) WO2016025356A1 (es)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063563B1 (en) * 2012-09-25 2015-06-23 Amazon Technologies, Inc. Gesture actions for interface elements
KR102135092B1 (ko) * 2013-06-03 2020-07-17 엘지전자 주식회사 영상표시장치의 동작 방법
US10108305B2 (en) 2013-08-13 2018-10-23 Samsung Electronics Company, Ltd. Interaction sensing
WO2017175931A1 (en) * 2016-04-07 2017-10-12 Samsung Electronics Co., Ltd. Interaction modes for object-device interactions
US10073578B2 (en) 2013-08-13 2018-09-11 Samsung Electronics Company, Ltd Electromagnetic interference signal detection
KR102130797B1 (ko) * 2013-09-17 2020-07-03 엘지전자 주식회사 이동 단말기 및 그것의 제어방법
US9645651B2 (en) 2013-09-24 2017-05-09 Microsoft Technology Licensing, Llc Presentation of a control interface on a touch-enabled device based on a motion or absence thereof
US9594489B2 (en) 2014-08-12 2017-03-14 Microsoft Technology Licensing, Llc Hover-based interaction with rendered content
KR20160053597A (ko) * 2014-11-05 2016-05-13 삼성전자주식회사 디바이스에 오브젝트를 디스플레이 하는 방법, 그 디바이스 및 기록매체
KR20170059242A (ko) * 2015-11-20 2017-05-30 삼성전자주식회사 영상 표시 장치 및 그 동작방법
US10732719B2 (en) * 2016-03-03 2020-08-04 Lenovo (Singapore) Pte. Ltd. Performing actions responsive to hovering over an input surface
KR20170108611A (ko) * 2016-03-18 2017-09-27 삼성전자주식회사 전자 장치 및 전자 장치 제어 방법
US10719193B2 (en) * 2016-04-20 2020-07-21 Microsoft Technology Licensing, Llc Augmenting search with three-dimensional representations
US10416777B2 (en) * 2016-08-16 2019-09-17 Microsoft Technology Licensing, Llc Device manipulation using hover
US10482526B2 (en) * 2017-01-11 2019-11-19 Bgc Partners, L.P. Graphical user interface for order entry with hovering functionality
US20180267691A1 (en) * 2017-03-20 2018-09-20 Tempo Music Design Oy Method and system for generating audio associated with a user interface
CN108153464A (zh) * 2018-01-26 2018-06-12 北京硬壳科技有限公司 一种控制方法和装置
CN110312000A (zh) * 2018-03-20 2019-10-08 广东欧珀移动通信有限公司 滑出结构的控制方法、检测组件及电子装置
US10942633B2 (en) * 2018-12-20 2021-03-09 Microsoft Technology Licensing, Llc Interactive viewing and editing system
US20200257442A1 (en) * 2019-02-12 2020-08-13 Volvo Car Corporation Display and input mirroring on heads-up display

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7256770B2 (en) 1998-09-14 2007-08-14 Microsoft Corporation Method for displaying information responsive to sensing a physical presence proximate to a computer input device
US6501464B1 (en) 2000-10-31 2002-12-31 Intel Corporation On-screen transparent keyboard interface
US20030020733A1 (en) 2001-07-24 2003-01-30 Yin Memphis Zhihong Computer display having selective area magnification
US20030025676A1 (en) 2001-08-02 2003-02-06 Koninklijke Philips Electronics N.V. Sensor-based menu for a touch screen panel
US6907576B2 (en) * 2002-03-04 2005-06-14 Microsoft Corporation Legibility of selected content
US7314165B2 (en) 2004-07-01 2008-01-01 American Express Travel Related Services Company, Inc. Method and system for smellprint recognition biometrics on a smartcard
US8479122B2 (en) 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
US7760187B2 (en) * 2004-07-30 2010-07-20 Apple Inc. Visual expander
US7489306B2 (en) 2004-12-22 2009-02-10 Microsoft Corporation Touch screen accuracy
JP4602166B2 (ja) 2005-06-07 2010-12-22 富士通株式会社 手書き情報入力装置。
US7636794B2 (en) 2005-10-31 2009-12-22 Microsoft Corporation Distributed sensing techniques for mobile devices
US7778874B1 (en) * 2005-11-14 2010-08-17 A9.Com, Inc. Automated generation of suggested online advertising campaign parameters
US20070268317A1 (en) * 2006-05-18 2007-11-22 Dan Banay User interface system and method for selectively displaying a portion of a display screen
US7956847B2 (en) 2007-01-05 2011-06-07 Apple Inc. Gestures for controlling, manipulating, and editing of media files using touch sensitive devices
US7877707B2 (en) 2007-01-06 2011-01-25 Apple Inc. Detecting and interpreting real-world and security gestures on touch and hover sensitive devices
US8650505B2 (en) 2007-02-28 2014-02-11 Rpx Corporation Multi-state unified pie user interface
US8219936B2 (en) * 2007-08-30 2012-07-10 Lg Electronics Inc. User interface for a mobile device using a user's gesture in the proximity of an electronic device
US8363019B2 (en) 2008-05-26 2013-01-29 Lg Electronics Inc. Mobile terminal using proximity sensor and method of controlling the mobile terminal
US9658765B2 (en) 2008-07-31 2017-05-23 Northrop Grumman Systems Corporation Image magnification system for computer interface
US8237666B2 (en) * 2008-10-10 2012-08-07 At&T Intellectual Property I, L.P. Augmented I/O for limited form factor user-interfaces
US20100107067A1 (en) 2008-10-27 2010-04-29 Nokia Corporation Input on touch based user interfaces
WO2010127167A2 (en) 2009-04-30 2010-11-04 Synaptics Incorporated Operating a touch screen control system according to a plurality of rule sets
EP2252055B1 (en) 2009-05-13 2013-09-18 Sony Europe Limited A system for retrieval of executable applications for broadcast television
US8466934B2 (en) 2009-06-29 2013-06-18 Min Liang Tan Touchscreen interface
US8347221B2 (en) 2009-10-07 2013-01-01 Research In Motion Limited Touch-sensitive display and method of control
US8358281B2 (en) 2009-12-15 2013-01-22 Apple Inc. Device, method, and graphical user interface for management and manipulation of user interface elements
US8384683B2 (en) 2010-04-23 2013-02-26 Tong Luo Method for user input from the back panel of a handheld computerized device
US20110261030A1 (en) * 2010-04-26 2011-10-27 Bullock Roddy Mckee Enhanced Ebook and Enhanced Ebook Reader
US9851829B2 (en) 2010-08-27 2017-12-26 Apple Inc. Signal processing for touch and hover sensing display device
US8780060B2 (en) 2010-11-02 2014-07-15 Apple Inc. Methods and systems for providing haptic control
US20120120002A1 (en) * 2010-11-17 2012-05-17 Sony Corporation System and method for display proximity based control of a touch screen user interface
US9575561B2 (en) 2010-12-23 2017-02-21 Intel Corporation Method, apparatus and system for interacting with content on web browsers
JP2012168932A (ja) 2011-02-10 2012-09-06 Sony Computer Entertainment Inc 入力装置、情報処理装置および入力値取得方法
JP5774327B2 (ja) 2011-02-16 2015-09-09 株式会社テイエルブイ 気液分離器
US8860717B1 (en) 2011-03-29 2014-10-14 Google Inc. Web browser for viewing a three-dimensional object responsive to a search query
US9285950B2 (en) 2011-03-30 2016-03-15 Google Inc. Hover-over gesturing on mobile devices
KR101748668B1 (ko) 2011-04-14 2017-06-19 엘지전자 주식회사 이동 단말기 및 그의 입체영상 제어방법
US9477348B2 (en) 2011-04-15 2016-10-25 Hewlett-Packard Development Company, L.P. Focus-based touch and hover detection
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
JP2012248066A (ja) 2011-05-30 2012-12-13 Canon Inc 画像処理装置、その制御方法、および制御プログラム、並びに撮像装置
RU2455676C2 (ru) 2011-07-04 2012-07-10 Общество с ограниченной ответственностью "ТРИДИВИ" Способ управления устройством с помощью жестов и 3d-сенсор для его осуществления
US20130050131A1 (en) * 2011-08-23 2013-02-28 Garmin Switzerland Gmbh Hover based navigation user interface control
JP5836105B2 (ja) * 2011-12-20 2015-12-24 シャープ株式会社 情報処理装置、情報処理装置の制御方法、情報処理装置制御プログラムおよび該プログラムを記録したコンピュータ読み取り可能な記録媒体
US20130194314A1 (en) 2012-01-26 2013-08-01 Nokia Corporation Desktop extension
US20150042581A1 (en) 2012-01-30 2015-02-12 Telefonaktiebolaget L M Ericsson (Publ) Apparatus Having a Touch Screen Display
CN102719990B (zh) 2012-06-18 2014-07-30 三明学院 智能经编多速电子送经系统
US8907927B2 (en) 2012-09-13 2014-12-09 Sap Portals Israel Ltd Camera based hover detection for touch-based mobile devices
JP5798103B2 (ja) * 2012-11-05 2015-10-21 株式会社Nttドコモ 端末装置、画面表示方法、プログラム
US9645651B2 (en) 2013-09-24 2017-05-09 Microsoft Technology Licensing, Llc Presentation of a control interface on a touch-enabled device based on a motion or absence thereof
US20160246383A1 (en) * 2013-10-31 2016-08-25 Huawei Technologies Co., Ltd. Floating or mid-air operation processing method and apparatus
US9594489B2 (en) 2014-08-12 2017-03-14 Microsoft Technology Licensing, Llc Hover-based interaction with rendered content

Also Published As

Publication number Publication date
US20160048304A1 (en) 2016-02-18
KR20170041219A (ko) 2017-04-14
CN106575203A (zh) 2017-04-19
CN106575203B (zh) 2020-07-31
WO2016025356A1 (en) 2016-02-18
US20170160914A1 (en) 2017-06-08
EP3180687B1 (en) 2018-09-26
US9594489B2 (en) 2017-03-14
EP3180687A1 (en) 2017-06-21
US10444961B2 (en) 2019-10-15

Similar Documents

Publication Publication Date Title
US10921976B2 (en) User interface for manipulating user interface objects
US10222894B1 (en) System, method, and computer program product for a multi-pressure selection touch screen
DK180032B8 (en) User Interface for manipulating user interface objects
US10102010B2 (en) Layer-based user interface
JP2019067436A (ja) ディスプレイ装置及びそのディスプレイ方法
JP2019194892A (ja) 着用可能電子機器のための竜頭入力
US10942546B2 (en) Electronic device and method for processing gesture thereof
US20210026456A1 (en) Method, apparatus and system for interacting with content on web browsers
EP2813938B1 (en) Apparatus and method for selecting object by using multi-touch, and computer readable recording medium
US8884926B1 (en) Light-based finger gesture user interface
TWI624786B (zh) 多顯示裝置及控制其顯示器的方法
JP5911599B2 (ja) 分類ウェブページ切り替えのための方法および携帯型デバイス
US20180074680A1 (en) Enhanced roll-over, button, menu, slider, and hyperlink environments for high dimensional touchpad (hdtp), other advanced touch user interfaces, and advanced mice
TWI613583B (zh) 無限輪展使用者介面的呈現方法
US9268423B2 (en) Definition and use of node-based shapes, areas and windows on touch screen devices
CN107272994B (zh) 视窗切换界面
US20180356247A1 (en) User terminal device for displaying map and method thereof
US10139937B2 (en) Multi-modal user expressions and user intensity as interactions with an application
US9128605B2 (en) Thumbnail-image selection of applications
AU2011369360B2 (en) Edge gesture
US8558790B2 (en) Portable device and control method thereof
JP6038898B2 (ja) エッジ・ジェスチャー
KR101911088B1 (ko) 햅틱 피드백 보조 텍스트 조작
CN104199552B (zh) 多屏显示方法、设备及系统
US9791918B2 (en) Breath-sensitive digital interface