DISPLAY GENERATING DEVICE

Abstract: A digital television system having a set-top box controlled by a remote control unit is used to access the Internet. Arrow keys on the remote control unit are used to navigate a focus around irregularly positioned hypertext links on a web page. If a down arrow key is pressed, web browser software determines weighted distances between a link in focus and links below it using an elliptical function. The distances are weighted so as to favour a link closest to being vertically collinear even though other links may be closer.

Description: Display generating device Field of the Invention The present invention relates to a display generating device and has particular but not exclusive application to multimedia network terminals. Background Art A number of electronic devices have graphical user interfaces (GUIs). Such devices include, for example, personal computers (PC), televisions and mobile telephones. The user may interact with the device via the GUI using a user interface, for instance a touch sensitive pad, a keyboard, a mouse or a joystick. Many factors determine the most appropriate choice of user interface for a device, such as ease of use and speed of operation and the environment in which the device is used. The use of a mouse is suited to the selection of icons when using a desk-top personal computer. However, it is not so useful for a digital television set. For this, a remote control unit having several keys is more convenient. However, there are problems with using key- or button-based control units, as will now be explained with reference to digital television. Digital television systems provide a variety of new services as compared with analogue television. They allow the user to transmit and receive signals via a set-top box and to interact with service providers. The user may now access the Internet in a similar way that is already available on a PC. For example, a user may navigate web pages by selecting hypertext links. The process of selecting a particular link involves moving a focus between links and activating selection. In a PC-based system, this process is realised by positioning a mouse pointer over the Unk and pressing the mouse button. To indicate that the focus has moved to the Unk, the shape of the mouse pointer changes or the Unk is highUghted, for instance, by changing colour. The set-top bo /television system is controlled using a remote control unit, which is similar to that used in analogue television systems. The remote control is usually provided with a set of arrow keys —up, down, right, left— allowing orthogonal movement about a menu. Such a remote control unit provides a satisfactory means for selecting elements of the menu if the menu is arranged as a rectangular array along co-ordinates defined by the keys on the remote control. Elements in a column are selected by the use of up and down arrow keys, while elements along a row may be selected by use of right and left arrow keys. Thus, movement from one element to another is straightforward and intuitive. However, such a remote control unit is not suited to the selection of irregularly positioned elements, such as hypertext Unks in a web page. Hypertext Unks may be represented by text or images which are not uniformly located on the page. GB-A- 2357945 describes a device which seeks to overcome this problem by generating an ordered array of navigable nodes such that each link is represented by at least one node. The user can intuitively and reversibly navigate around the array to reach and select Unks. However, the arrangement of Unks may not be completely irregular. Links may be ordered in one direction but not another. For example, it is common to have a block of text in which is embedded several hypertext links. In this case horizontal movement between Unks using left and right arrow keys is straightforward since the text is arranged in rows. However, the Unks may not be vertically aUgned. If a Unk in one row is in focus and there are two Unks in the row below, vertical movement using the down arrow key is more compUcated since there are two Unks to chose from. Nevertheless, it is likely that the user wiU want to select the Unk which Ues obviously or intuitively below the Unk in focus, even though it may not be the closer of the two Unks. The present invention seeks to solve this problem. Summary of the Invention According to a first aspect of the present invention there is provided a generating device configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto, comprising means for determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and means for selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. The means for determining said first and second weighted distances may be configured to receive respective coordinate information for said first, second and third functional display regions. The means for determining said first and second weighted distances may be arranged to execute a predetermined mathematical method on said coordinates. The predetermined mathematical method may include a mathematical function, such as eUiptic or lemniscate function. The device may be included in a multimedia network terminal, such as an internet enabled set-top box. According to a second aspect of the present invention there is provided a method, in a generating device configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto, of operating said device, the method comprising determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. According to a third aspect of the present invention there is provided a method of navigating a focus between spaced, functional display regions on a display device, the method comprising determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. According to a fourth aspect of the present invention there is provided a computer program comprising computer code to make a computer configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto execute procedure to determine first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and to select one of said second or third functional display regions in dependence upon said first and second weighted distances. Brief Description of the Drawings Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings in which:- Figure 1 is a schematic view of a set-top box and a television set; Figure 2 shows a web page having several hypertext Unks; Figure 3 shows the Unks of Figure 2 in isolation; Figure 4 shows displacements from a Unk in focus to the other Unks lying below; Figure 5 is flow diagram of the process by which a Unk is selected to be in focus; Figure 6 shows elUptical plots used to select a Unk; Figure 7 shows lemniscate plots used to select a Unk; Figure 8 shows elUptical plots with different constants; and Figure 9 shows lemniscate plots with different constants. Best Mode for Carrying out the Invention Referring to Figure 1, an embodiment of display generating device according to the present invention is a digital set-top box 1 which is connected to a display device in the form of a conventional television set 2. The set-top box 1 is controlled using a remote control unit 3 having up, down, right and left keys 4a, 4b, 4c, 4d and a select button 4e. In this case, up, down, right and left directions correspond to movement as seen on the television set 4. The set-top box 1 comprises one or several input ports (not shown) including a port for a satelUte antenna dish, a port for a terrestrial antenna, a port for a cable Unk and a port for a broadband internet connection and an output port (not shown) for connection to the television set. The set-top box 1 further comprises a microprocessor, memory, front-end tuner for filtering the signal, a video chip for rendering an image on the television set 2 and a user interface (not shown). The set-top box 1 may be used to receive and decode digital television channels and transmit user information via a return channel. These channels are transmitted and received through a cable Unk, although Unks provided by satellite or terrestrial broadcast may also be used. The set-top box 1 provides Internet services to the user, thus enabhng the user to read e-mail and "surf the web". To access the web, the set-top box 1 loads and runs web browser software. Referring to Figure 2, the web browser software is used navigate a web page 5 which comprises text 6 including first, second, third, fourth, fifth and sixth hypertext Unks 7„ 7 2 , 7 3 , 7 4 , 7 5 , 7 6 . In this example, the text 6 relates to the results of a search for the term "http". The first hypertext Unk 7a is a Unk back to a previous page. The second Unk 7 2 is a box for entering a new search term. The third and fourth links 7 3 , 7 4 are Unks to related web pages. The fifth Unk 7 5 is a Unk to a page relating to a different topic. The sixth Unk 7 6 is a Unk to an e-mail appUcation. A focus 8 is set at the third Unk 7 3 and is highUghted in a different colour from the other Unks 7 2 , 7 4 , 7 5 , 7 6 . The second, third and fourth Unks 7 2 , 7 3 , 7 4 Ue in a row, as indicated by dotted Unes. Rows may be defined for example by defining a horizontal band and determining whether Unks contained therein constitute a one-dimensional array. In this case, a user can navigate between these Unks using right and left arrow keys 4c, 4d. Thus, to move the focus 8 from the third Unk 7 3 to the second Unk 7 2 , the user presses the left arrow key 4d on the remote control unit 3. Similarly, to move the focus 8 from the third Unk 7 3 to the fourth Unk 7 4 , the user presses the right arrow key 4c. However, the third, fourth, fifth and sixth Unks 7 3 , 7 4 , 7 5 , 7 6 do not Ue neatly in a column. Furthermore, the user is Ukely to want to move the focus 8 from the third Unk 7 3 to the sixth Unk 7 6 in preference to either of the fourth or fifth Unks 7 4 , 7 5 even though those Unks are closer. When the user presses the down arrow key 4b, the web browser software calculates weighted distances between the third focus 7 3 and each of the fourth, fifth and sixth Unks 7 4 , 7 5 , 7 6 respectively, weighted according their horizontal displacement from the third Unk 7 3 , and determines which of them is closest. A process by which this is performed wiU now be described. Referring to Figures 4 and 5, the user presses the down arrow key 4b. The web browser software initiaUses a current Unk counter i, sets a selected link variable s to one and a focus-to-selected Unk distance variable r s 2 to a predetermined value, for example to the square of the diagonal distance p across the page 5 (step SI). In this example, the Unks 7 are numbered according to their position on the page 5, starting from the top left and finishing at the bottom right of the page 5. The browser first checks whether the current Unk 7 ; is the Unk in focus 8, namely whether i=f=3 (step S2). If it is, then the browser moves onto the next Unk 7 i+] (step S3) otherwise it determines whether the current Unk 7 ; Ues below the third Unk 7 3 (step S4). In this - example, this is done by checking whether an upper edge 9 ; of the Unk 7 ; is below a lower edge 10 3 of the third Unk 7 3 which is in focus. It will be appreciated that other criteria may be used such as minimum vertical offsets between a y-midpoint 11; between upper and lower edges 9 i5 10; of the current Unk 7 ; and a y-midpoint 11 3 between upper and lower edges 9 3 , 10 3 of the third Unk 7 3 . If the current Unk 7 ; does not Ue below the Unk in focus 7 3 , then the browser moves onto the next Unk 7; +1 (step S3). In this example, the fourth, fifth and sixth Unks 7 4 , 7 5 , 7 6 Ue below the third Unk 7 3 . The browser then measures horizontal and vertical displacements Δx ; , Δy ; from the third Unk 7 3 to the current Unk 7.-. The horizontal displacement Δx ; is measured from a x-midpoint 12 3 between leftmost and rightmost edges 13 3 , 14 3 of the third Unk 7 3 to a selected point 15 ; of the current Unk 7.-. If the x-midpoint 12 3 of the third Unk 7 3 lies between the leftmost and rightmost edges 13 ; , 14 ; of the current link 7 ; , (step S5), then the selected point 15 ; is chosen so as to be verticaUy colUnear with the x-midpoint 12 3 and the horizontal displacement Δx ; = 0 (step S6). If the current Unk 7- Ues to right of the third Unk 7 3 such that the leftmost edge 13 ; of the current Unk 7.- lies to the right of the x-midpoint 12 3 of the third Unk 7 3 (step S7), then the leftmost edge 13 ; is used to calculate the horizontal displacement Δ ; (step S8). Otherwise, the current Unk 7 ; Ues to left of the third Unk 7 3 and the rightmost edge 14 ; is used to calculate the horizontal displacement Δx ; (step S9). The vertical displacement Δy ; is measured from the y-midpoint 11 3 of the third Unk 7 3 to the y-midpoint 11 ; of the current Unk 7 ; (step S 0). The browser calculates a weighted distance r ; 2 between the current Unk 7- and the third Unk 7 3 (step Sll). This is done using an elUptic function: r ; 2 = kΔx ; 2 + Δy, 2 where k is a constant. A value of k may be fixed by the software or defined by the user. Alternatively, it may be dynamicaUy determined according to, for example the duration that the down arrow key 4b is pressed. The significance of the value of k wih be described later. The browser checks whether the weighted distance r ; 2 between the current Unk 7 ; is less than the focus-to-selected Unk distance variable r s 2 (step SI 2). If it is, then the weighted distance r ; 2 is stored in the focus-to-selected Unk distance variable r s 2 and the current Unk 7; is flagged as the selected Unk 7 S (step SI 3), otherwise no values are stored and the browser simply moves onto the next Unk 7 i+1 (step S3). In this example, squared values of distance are computed and compared. It will be appreciated that proper values of distance may be computed although this will increase computing time. The browser iterates through all the links (step SI 4). Once it has done this, the focus 8 moves to the selected Unk (step SI 5). Referring to Figure 6, in order to help understand the purpose of using the elUptical function, first, second and third elhpses 16 l5 16 2 , 16 3 are plotted for the sixth, fifth and fourth links 7 6 , 7 5 , 7 4 respectively using the elUptical function and respective calculated values of r, 2 . Each elhpse 16 is a contour plot of constant r. 2 . Thus, although the selected point 15 6 of the sixth Unk 7 6 is the furthest away from the midpoint 15 3 of the third Unk 7 3 in normal EucUdean space, i.e. it has the largest value of Δx 2 + Δy, 2 , it has the least weighted distance, i.e. the lowest value of kΔx 2 + Δy, 2 . Thus, the selected point 15 fi of the sixth Unk 7 6 Ues on the on the first elhpse 16 t with the lowest value of r 2 . The elUptical function effectively transforms the x-y coordinates by scaUng the x-coordinate by a factor 1 / vk. Referring to Figure 7, fourth, fifth and sixth elhpses 16 3 , 16 5 . 16 6 are normaUsed plots of the elUptical function with values of k equal to 1, 2 and 4 respectively. Thus, having a high value of k, tends to favour selection of Unks 7 which are substantiaUy vertically colUnear. It will be appreciated that rather than using a constant with k>l to multiply the horizontal displacement Δx ; 2 , a constant with k<l to multiply the horizontal displacement Δy 2 may be used. It wiU also be appreciated that other functions may be used. One alternative is to use a lemniscate function: r. 2 = (cΔx. 2 + Δy 2 ) 2 /( cΔx 2 - Δy. 2 ) where c is a constant. Referring to Figure 8, first and second lemniscate plots 17 l5 17 2 are shown. In this example, the selected point 15 5 of the fifth Unk 7 5 is determined to be closest. In this example, for a chosen value of c, no value of r 2 can be computed and no plot can be traced which passes though the selected point 15 4 of the fourth Unk 7 4 . Referring to Figure 9, third, fourth and fifth normahsed lemniscate plots 17 3 , 17 4 , 17 5 are shown having values of c equal to 1, 2 and 4 respectively. It is preferable that an appropriate function with one or more suitable weighting constants be used so that the Unks which the user perceives should be selected are indeed chosen. Although the embodiments hereinbefore described refer to selection of a Unk 7 below a Unk in focus by pressing a down arrow key 4b, it will be appreciated this apparatus and process may be used to select Unks 7 above the Unk in focus 8 by pressing the up arrow key 4a. The apparatus and process may also be used to select Unks to the left and the right of the link in focus, by weighting vertical displacements. It will be appreciated that many modifications may be made to the embodiments hereinbefore described. For example, non-orthogonal directions and non-Cartesian coordinates may be used. The method may be used in conjunction with other method of navigating a web page using keys or buttons. Other platforms such as personal computers, game machine, personal digital assistant, wireless datapads or mobile telephone handset may be used.

Claims: Claims 1. A generating device configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto, comprising: means for determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and means for selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. 2. A device according to claim 1, wherein the means for determining said first and second weighted distances is configured to receive respective coordinate information for said first, second and third functional display regions. 3. A device according to claim 2, wherein the means for determining said first and second weighted distances is arranged to execute a predetermined mathematical method on said coordinates. 4. A device according to claim 3, wherein said predetermined mathematical method includes a mathematical function. 5. A device according to claim 4, wherein the mathematical function is an elUptic function. 6. A device according to claim 4, wherein the mathematical function is a lemniscate function. 7. A multimedia network terminal including a device according to any preceding claim. 8. A multimedia network terminal according to claim 7, which is an internet enabled set-top box. 9. A method, in a generating device configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto, of operating said device, the method comprising determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. 10. A method of navigating a focus between spaced, functional display regions on a display device, the method comprising: determining first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and selecting one of said second or third functional display regions in dependence upon said first and second weighted distances. 11. A computer program comprising computer code to make a computer configured to generate signals for a graphical display in which a focus can be navigated between spaced, functional display regions such that they are individuaUy selected when the focus is moved thereto execute procedure: to determine first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and to select one of said second or third functional display regions in dependence upon said first and second weighted distances. 12. A generating device configured to generate signals for a graphical display in hich a focus can be navigated between spaced, functional display regions such that they are individually selected when the focus is moved thereto, comprising: a first processor configured to determine first and second weighted distances between a first functional display region in focus and second and third functional display regions respectively and a second processor configured to select one of said second or third functional display regions in dependence upon said first and second weighted distances. 13. A device according to claim 12, wherein the first and second processors are unitary.

Inventors: GASSLANDER MAGNUS, SCOTT JOHAN, GASSLANDER, MAGNUS, SCOTT, JOHAN
Applicants: GASSLANDER MAGNUS, NOKIA CORP, SCOTT JOHAN, GASSLANDER, MAGNUS, NOKIA CORPORATION, SCOTT, JOHAN
Application year: 2001
Main classification: G06F3
IPC codes: G06F3