# US 2013/0155104 A1 · Method and system for rendering of labels

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0155104 A1
- Document ID: US20130155104A1
- Status: Published application
- Kind: A1
- Application number: 13/767,824
- Filed: 2013-02-14
- Published: 2013-06-20
- Earliest claimed: 2008-10-20
- Assignees: Research In Motion Limited
- Inventors: Ramgopal RAJAGOPALAN; Sean Patrick MCINTYRE
- Web page: https://patentgrep.com/patent/US20130155104A1

## CPC

- G09G 5/377: for mixing or overlaying two or more graphic patterns (G09G5/02, G09G5/397 take precedence)
- G01C 21/3673: {Labelling using text of road map data items, e.g. road names, POI names}
- G06T 17/05: Geographic models
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A method for rendering static labels in a mobile device in applications such as map applications. Panning increments are received for panning a previously rendered frame to a panned frame and a rendering region is defined based on the panning increments. Ones of the labels that overlap the region and that overlap with the panned frame by a threshold amount are determined. Geometry that overlaps the rendering region is rendered and a portion of the previously rendered frame is copied. The ones of the labels are rendered to provide the panned frame.

## Claims

### Claim 1

A method of rendering static labels on a display of a mobile device, comprising:
receiving panning increments for panning a previously rendered frame to a panned frame;
identifying a rendering region based on the panning increments;
rendering geometry that overlaps the rendering region and copying a portion of the previously rendered frame for display in the panned frame; and
when ones of the static labels overlap the panned frame by a threshold amount, rendering the ones of the static labels in the panned frame.

### Claim 2 (depends on 1)

The method according to claim 1, wherein other ones of the static labels that do not overlap the panned frame by a threshold amount are not rendered in the panned frame.

### Claim 3 (depends on 1)

The method of claim 1, wherein the panning increments comprise horizontal and vertical panning increments.

### Claim 4 (depends on 3)

The method according to claim 3, wherein identifying the rendering region comprises determining an L-shaped region having inner horizontal and vertical boundaries collinear with respective horizontal and vertical boundaries of the previously rendered frame and outer boundaries collinear with respective horizontal and vertical boundaries of the panned frame.

### Claim 5 (depends on 2)

The method according to claim 2, further comprising determining screen space for each static label after identifying the rendering region.

### Claim 6 (depends on 5)

The method according to claim 5, wherein determining screen space for each static label comprises determining placement of individual characters of each static label along a respective path.

### Claim 7 (depends on 6)

The method according to claim 6, wherein the path is a line segment.

### Claim 8 (depends on 6)

The method according to claim 6, wherein the path is a polyline path comprising a sequence of line segments, wherein each pair of consecutive line segments is connected by a respective join point in the polyline path.

### Claim 9 (depends on 6)

The method according to claim 6, further comprising, for each static label, determining, after determining screen space, a respective bounding rectangle in which the screen space for the respective static label is contained.

### Claim 10 (depends on 9)

The method according to claim 9, wherein determining the respective bounding rectangle comprises determining a rectangle that includes each of the first character of the static label, the last character of the static label, and each join point in the polyline path.

### Claim 11 (depends on 10)

The method according to claim 10, further comprising, determining ones of the static labels for which an area of overlap of the respective bounding rectangle with the panned frame meets a threshold percentage of the area of the respective bounding rectangle.

### Claim 12 (depends on 11)

The method according to claim 11, wherein determining ones of the static labels comprises determining a percentage area of overlap of the respective bounding rectangle with the panned frame, and when the percentage area of overlap is greater than a threshold percentage, rendering the ones of the static labels in the panned frame.

### Claim 13

A computer-readable memory having computer-readable code stored thereon, the computer-readable code executable by at least one processor at a mobile device to cause the mobile device to:
receive panning increments for panning a previously rendered frame to a panned frame;
identify a rendering region based on the panning increments;
render geometry that overlaps the rendering region and copy a portion of the previously rendered frame for display in the panned frame; and
when ones of the static labels overlap the panned frame by a threshold amount, render the ones of the static labels in the panned frame.

### Claim 14

A mobile device comprising:
a display for rendering static labels; and
at least one processor operably coupled to the display and configured to:
receive panning increments for panning a previously rendered frame to a panned frame;
identify a rendering region based on the panning increments;
render geometry that overlaps the rendering region and copy a portion of the previously rendered frame for display in the panned frame; and
when ones of the static labels overlap the panned frame by a threshold amount, render the ones of the static labels in the panned frame.

### Claim 15 (depends on 14)

The mobile device according to claim 14, wherein other ones of the static labels that do not overlap the panned frame by a threshold amount are not rendered in the panned frame.

### Claim 16 (depends on 14)

The mobile device according to claim 14, wherein the panning increments comprise horizontal and vertical panning increments.

### Claim 17 (depends on 14)

The mobile device according to claim 14, wherein the rendering region is identified by determining an L-shaped region having inner horizontal and vertical boundaries collinear with respective horizontal and vertical boundaries of the previously rendered frame and outer boundaries collinear with respective horizontal and vertical boundaries of the panned frame.

### Claim 18 (depends on 14)

The mobile device according to claim 14, wherein the processor is configured to determine screen space for each static label after the rendering region is identified.

### Claim 19 (depends on 18)

The mobile device according to claim 18, wherein the screen space is determined by determining placement of each static label on a path and by determining placement of individual characters of the static label along the respective path.
