METHOD OF DISPLAYING LABELS ON MAPS OF WIRELESS COMMUNICATIONS DEVICES USING PRE-RENDERED CHARACTERS

Abstract
Labels can be rendered on a map displayed on a wireless communications device by using pre-rendered characters. The pre-rendered characters can be pre-rotated to one of a number of angular orientations and stored as a variable transparency bitmap for rapid overlaying on the map. The bitmap can include an array or grid of characters wherein each row has a unique orientation, for example, ranging from zero to ninety degrees. Rotations of 90 to 360 degrees can then be achieved by reflecting the characters about vertical or horizontal axes. Overlaying pre-rotated characters is more computationally efficient than computing rotations for each character when rendering the label.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

Further features and advantages of the present technology will become apparent from the following detailed description, taken in combination with the appended drawings, in which:



FIG. 1 is a block diagram schematically illustrating pertinent components of a wireless communications device and of a wireless communications network;



FIG. 2 is a more detailed block diagram of a wireless communications device;



FIG. 3A is a system diagram of exemplary network components which provide mapping functionality in the wireless communications devices of FIG. 1 and FIG. 2;



FIG. 3B illustrates, by way of example only, a message exchange between a wireless communications device and a map server for downloading map content to the wireless communications device based on the system of FIG. 3A;



FIG. 3C is a diagram showing a preferred Maplet data structure;



FIG. 4 is a schematic depiction of another example of a wireless network having an applications gateway for optimizing the downloading of map data from map servers to wireless communications devices;



FIG. 5 is a flowchart presenting steps of a method of rendering a label on a map displayed on a wireless device;



FIG. 6 illustrates a bitmap having ten rows of pre-rotated symbols, numbers, uppercase letters, and lowercase letters, each row being pre-rotated to a different angular orientation;



FIG. 7 illustrates a variable transparency bitmap wherein pixels along edges of the pre-rotated characters are semi-transparent and anti-aliased; and



FIG. 8 is a screenshot of a map upon which two labels have been rendered by overlaying pre-rotated characters.


Claims
  • 1. A method of rendering a label on a map displayed on a wireless communications device, the method comprising steps of: obtaining label data for rendering the label on the map;determining an appropriate orientation on the map for at least one character of the label; andrendering the character on the map at the appropriate orientation by overlaying a pre-rendered character on the map.
  • 2. The method as claimed in claim 1 wherein the step of rendering the character comprises overlaying onto the map a pre-rotated character from a bitmap.
  • 3. The method as claimed in claim 1 wherein the step of rendering the character comprises overlaying onto the map a pre-rotated character from a variable transparency bitmap wherein pixels along edges of the pre-rotated character are semi-transparent and anti-aliased.
  • 4. The method as claimed in claim 1 wherein the step of rendering the label comprises steps of: determining colour and shading attributes of a label position for the label on the map;adjusting the background shading of the bitmap to concord with the colour and shading attributes of the label position;selecting pre-rotated characters from the bitmap; andoverlaying the selected characters from the bitmap onto the map.
  • 5. The method as claimed in claim 1 wherein the pre-rendered characters comprise a plurality of sets of pre-rotated punctuation symbols, numbers, uppercase letters and lowercase letters, wherein each of the plurality of sets of pre-rotated characters has a unique angular orientation.
  • 6. The method as claimed in claim 1 wherein the pre-rendered characters comprise a plurality of sets of pre-rotated punctuation symbols, numbers, uppercase letters and lowercase letters that are pre-rotated at discrete angular intervals of 10 degrees, ranging between 0 degrees and 90 degrees, whereby character orientations corresponding to rotations of 90 to 360 degrees can be achieved by reflecting the pre-rotated characters about vertical or horizontal axes.
  • 7. The method as claimed in claim 1 further comprising steps of: determining whether any of the characters of the label require special text effects; andoverlaying pre-rendered characters having text effects on the map.
  • 8. The method as claimed in claim 1 wherein the step of rendering the label comprises a step of overlaying onto the map one or more pre-rotated characters from a bitmap structured as an array wherein each row contains a set of pre-rotated characters having a common orientation.
  • 9. The method as claimed in claim 8 wherein the array comprises ten rows of pre-rotated characters, each having a different orientation, thus providing pre-rotated characters for every 10-degree interval ranging from a first row having zero rotation to a tenth row having a 90-degree rotation.
  • 10. The method as claimed in claim 9 wherein the step of rendering the label comprises a step of reflecting the pre-rotated character about vertical or horizontal axes to obtain desired character rotations of 90 to 360 degrees.
  • 11. A computer program product comprising code adapted to perform the steps of claim 1 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 12. The computer program product comprising code adapted to perform the steps of claim 2 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 13. The computer program product comprising code adapted to perform the steps of claim 3 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 14. The computer program product comprising code adapted to perform the steps of claim 4 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 15. The computer program product comprising code adapted to perform the steps of claim 5 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 16. The computer program product comprising code adapted to perform the steps of claim 6 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 17. The computer program product comprising code adapted to perform the steps of claim 7 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 18. The computer program product comprising code adapted to perform the steps of claim 8 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 19. The computer program product comprising code adapted to perform the steps of claim 9 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 20. The computer program product comprising code adapted to perform the steps of claim 10 when the computer program product is loaded into memory and executed on a processor of a wireless communications device.
  • 21. A wireless communications device for enabling a user of the device to display a map on the device, the wireless communications device comprising: an input device for enabling the user to cause the device to obtain map data, including label data, for rendering the map and at least one label on the map;a memory for storing pre-rendered characters;a processor for determining an appropriate orientation for each character in the label and for overlaying the pre-rendered characters on the map; anda display for displaying the pre-rendered characters of the label on the map.
  • 22. The wireless communications device as claimed in claim 21 wherein the pre-rendered characters are sets of pre-rotated characters, each set having a unique orientation.
  • 23. The wireless communications device as claimed in claim 21 wherein the pre-rendered characters comprise pre-rotated characters stored as a bitmap.
  • 24. The wireless communications device as claimed in claim 21 wherein the pre-rendered characters comprise pre-rotated characters stored as a variable transparency bitmap wherein pixels along edges of the pre-rotated character are semi-transparent and anti-aliased.
  • 25. The wireless communications device as claimed in claim 21 wherein the pre-rendered characters comprise a plurality of sets of pre-rotated punctuation symbols, numbers, uppercase letters and lowercase letters that are pre-rotated at discrete angular intervals of 10 degrees, ranging between 0 degrees and 90 degrees, whereby character orientations corresponding to rotations of 90 to 360 degrees can be achieved by reflecting the pre-rotated characters about vertical or horizontal axes.
  • 26. The wireless communications device as claimed in claim 23 wherein the bitmap is structured as an array wherein each row contains a set of pre-rotated characters having a common orientation.
  • 27. The wireless communications device as claimed in claim 26 wherein the array comprises ten rows of pre-rotated characters, each having a different orientation, thus providing pre-rotated characters for every 10-degree interval ranging from a first row having zero rotation to a tenth row having a 90-degree rotation.
  • 28. The wireless communications device as claimed in claim 21 wherein the pre-rendered characters comprise both pre-rotated characters and characters with special text effects.
Provisional Applications (2)
Number Date Country
60788434 Mar 2006 US
60787541 Mar 2006 US