Methods and apparatus for dynamically labeling map objects in visually displayed maps of mobile communication devices

Information

  • Patent Application
  • 20070229538
  • Publication Number
    20070229538
  • Date Filed
    July 07, 2006
    18 years ago
  • Date Published
    October 04, 2007
    16 years ago
Abstract
Methods and apparatus for dynamically labeling map objects for different views of a visually displayed map are disclosed. For each view of a plurality of different views of a map, a view of the map is rendered “on-the-fly” in a display. The technique is performed by retrieving map data which includes map object graphics data and map object label data; causing one or more portions of a map object (e.g. a road) to be rendered in the view of the display in accordance with the map object graphics data; and also causing a map object label (e.g. a name of the road) to be rendered in the view of the display, in accordance with the map object label data, on or along a portion of the map object between its vertice coordinates, such that a linear position of the map object label on or along the portion of the map object is different from its linear position in each of the other views of the map so that the map object label fits within the view in a continuous moving fashion from view to view. In a specific embodiment, the map object label is rendered by identifying the portion of the map object to be a longest portion of the one or more portions of the map object in the view; identifying a centerpoint of the portion identified to be the longest portion; and causing the map object label to be rendered relative to the centerpoint of the portion identified to be the longest portion.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of present invention will now be described by way of example with reference to attached figures, wherein:



FIG. 1 is a block diagram which illustrates pertinent components of a mobile communication device and a wireless communication network of a communication system;



FIG. 2 is a more detailed diagram of a preferred mobile communication device of FIG. 1, namely, a mobile station;



FIG. 3A is a system diagram of network components which provide mapping functionality in the mobile communication devices of FIGS. 1 and 2;



FIG. 3B illustrates a message exchange between a mobile communication device and a map server for downloading map content to the mobile communication device based on the system of FIG. 3A;



FIG. 3C is a diagram showing a Maplet data structure according to an exemplary embodiment;



FIG. 4 is an illustration of a user interface of the mobile communication device;



FIG. 5 is an illustration of various software applications which may reside in the mobile communication device;



FIGS. 6 and 7 are illustrations of a positioning wheel of the mobile communication device;



FIG. 8 is an illustration of information which may be displayed in a visual display of the mobile communication device, the information being an address book contact of an address book of the mobile communication device;



FIG. 9 is an illustration of a listing of the address book contact of FIG. 8;



FIG. 10 is an illustration of the listing of the address book contact of FIG. 9, where a menu of functions which includes a map function may be invoked to display a map associated with the address book contact, the map being generally shown later in FIGS. 12-18;



FIG. 11 is a flowchart which helps describe a method of dynamically labeling map objects in visually displayed maps according to the present disclosure; and



FIGS. 12-18 are sequential views of a map to illustrate an example of the method of the present disclosure.


Claims
  • 1. A method of dynamically labeling map objects for displaying different views of a map, the method comprising the acts of: for each view of a plurality of different views of a map, causing the view of the map to be displayed in a display by: retrieving map data corresponding to the view of the map, the map data comprising map object graphics data and map object label data separate from the map object graphics data, the map object graphics data corresponding to at least a portion of a map object and the map object label data corresponding to a map object label associated with the map object;causing the portion of the map object to be rendered in the view of the display in accordance with the map object graphics data; andalso causing the map object label to be rendered in the view of the display, in accordance with the map object label data, on or along the portion of the map object between its vertice coordinates, such that a linear position of the map object label on or along the portion of the map object is different from its linear position in each of the other views of the map so that the map object label is contained within the view in a continuous moving fashion from view to view.
  • 2. The method of claim 1, further comprising: identifying that the portion of the map object is a longest portion of the map object rendered in the view.
  • 3. The method of claim 1, further comprising: identifying that the portion of the map object is a longest portion of the map object rendered in the view;identifying a centerpoint of the portion of the map object; andwherein the act of causing the map object label to be rendered in the view of the display comprises the further act of causing the map object label to be rendered at the centerpoint of the portion of the map object.
  • 4. The method of claim 1, wherein the map object comprises a road, park, river, ocean, or lake, and the map object label comprises a name of the road, the park, the river, the ocean, or the lake.
  • 5. The method of claim 1, further comprising: wherein the act of causing the map object label to be rendered comprises the further act of causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a slope of the side of the portion of the map object.
  • 6. The method of claim 1, further comprising: wherein the act of causing the map object label to be rendered comprises the further act of causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a varying slope of the side of the portion of the map object.
  • 7. The method of claim 1, wherein the acts of causing the view to be displayed are performed in response to a trigger signal for the view of the map.
  • 8. The method of claim 1, wherein the act of causing the map object label to be render comprises the further acts of: identifying a slope of the portion of the map object;identifying an alphanumeric character in the map object label for rendering;retrieving a rotated alphanumeric character from the memory which corresponds to the identified alphanumeric character in the map object label and the identified slope; andcausing the rotated alphanumeric character to be rendered on or along the portion of the map.
  • 9. The method of claim 1, which is embodied as a computer program product comprising a computer readable medium and computer instructions stored in the computer readable medium which are executable by one or more processors of a mobile communication device to perform the method.
  • 10. A mobile communication device, comprising: a wireless transceiver;one or more processors;memory coupled to the one or more processors;a user interface which includes a visual display;the one or more processors being operative to: for each view of a plurality of different views of a map, causing the view of the map to be displayed in the visual display by: retrieving, from the memory, map data corresponding to the view of the map, the map data comprising map object graphics data and map object label data separate from the map object graphics data, the map object graphics data corresponding to at least a portion of a map object and the map object label data corresponding to a map object label associated with the map object;causing the portion of the map object to be rendered in the view of the visual display in accordance with the map object graphics data; andalso causing the map object label to be rendered in the view of the visual display, in accordance with the map object label data, on or along the portion of the map object between its vertice coordinates, such that a linear position of the map object label on or along the portion of the map object is different from its linear position in each of the other views of the map so that the map object label is contained within the view in a continuous moving fashion from view to view.
  • 11. The mobile communication device of claim 10, wherein the one or more processors are further operative to: identify that the portion of the map object is a longest portion of the map object rendered in the view.
  • 12. The mobile communication device of claim 10, wherein the one or more processors are further operative to: identify that the portion of the map object is a longest portion of the map object rendered in the view;identify a centerpoint of the portion of the map object; andcause the map object label to be rendered in the view of the display by causing the map object label to be rendered at the centerpoint of the portion of the map object.
  • 13. The mobile communication device of claim 10, wherein the map object comprises a road, park, river, ocean, or lake, and the map object label comprises a name of the road, the park, the river, the ocean, or the lake.
  • 14. The mobile communication device of claim 10, wherein the one or more processors are further operative to cause the map object label to be rendered by causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a slope of the side of the portion of the map object.
  • 15. The mobile communication device of claim 10, wherein the one or more processors are further operative to cause the map object label to be rendered by causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a varying slope of the side of the portion of the map object.
  • 16. The mobile communication device of claim 10, wherein the one or more processors are further operative to cause the view to be displayed in response to a trigger signal for the view of the map.
  • 17. A method of dynamically labeling map objects for displaying different views of a map, the method comprising the acts of: retrieving map data corresponding to a view of a map, the map data comprising map object graphics data and map object label data separate from the map object graphics data, the map object graphics data corresponding to one or more portions of a map object and the map object label data corresponding to a map object label associated with the map object;causing the one or more portions of the map object to be rendered in the view of the display in accordance with the map object graphics data;also causing the map object label to be rendered in the view of the display, in accordance with the map object label data, on or along a portion of the map object between its vertice coordinates, by: identifying the portion of the map object to be a longest portion of the one or more portions of the map object in the view;identifying a centerpoint of the portion identified to be the longest portion; andcausing the map object label to be rendered relative to the centerpoint of the portion identified to be the longest portion.
  • 18. The method of claim 17, wherein the acts of causing the map object and the map object label to be rendered in the view is performed for each view of a plurality of different views of the map.
  • 19. The method of claim 17, wherein the map object label is centered within the portion identified to be the longest portion.
  • 20. The method of claim 17, wherein the map object comprises a road, park, river, ocean, or lake, and the map object label comprises a name of the road, the park, the river, the ocean, or the lake.
  • 21. The method of claim 17, wherein the act of causing the map object label to be rendered comprises the further act of causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a slope of the side of the portion of the map object.
  • 22. The method of claim 17, wherein the act of causing the map object label to be rendered comprises the further act of causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a varying slope of the side of the portion of the map object.
  • 23. The method of claim 17, wherein the act of causing the map object label to be render comprises the further acts of: identifying a slope of the portion of the map object;identifying an alphanumeric character in the map object label for rendering;retrieving a rotated alphanumeric character from the memory which corresponds to the identified alphanumeric character in the map object label and the identified slope; andcausing the rotated alphanumeric character to be rendered on or along the portion of the map.
  • 24. The method of claim 17, which is embodied as a computer program product comprising a computer readable medium and computer instructions stored in the computer readable medium which are executable by one or more processors of a mobile communication device to perform the method.
  • 25. A mobile communication device, comprising: a wireless transceiver;one or more processors;memory coupled to the one or more processors;a user interface which includes a visual display;the one or more processors being operative to: retrieve map data corresponding to a view of a map, the map data comprising map object graphics data and map object label data separate from the map object graphics data, the map object graphics data corresponding to one or more portions of a map object and the map object label data corresponding to a map object label associated with the map object;cause the one or more portions of the map object to be rendered in the view of the display in accordance with the map object graphics data;also cause the map object label to be rendered in the view of the display, in accordance with the map object label data, on or along a portion of the map object between its vertice coordinates, by: identifying the portion of the map object to be a longest portion of the one or more portions of the map object in the view;identifying a centerpoint of the portion identified to be the longest portion; andcausing the map object label to be rendered relative to the centerpoint of the portion identified to be the longest portion.
  • 26. The mobile communication device of claim 25, wherein the acts of causing the map object and the map object label to be rendered in the view is performed for each view of a plurality of different views of the map.
  • 27. The mobile communication device of claim 25, wherein the map object label is centered within the portion identified to be the longest portion.
  • 28. The mobile communication device of claim 25, wherein the map object comprises a road, park, river, ocean, or lake, and the map object label comprises a name of the road, the park, the river, the ocean, or the lake.
  • 29. The mobile communication device of claim 25, wherein the one or more processors are operative to cause the map object label to be rendered by causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a slope of the side of the portion of the map object.
  • 30. The mobile communication device of claim 25, wherein the one or more processors are operative to cause the map object label to be rendered by causing the map object label to be rendered on or along the side of the portion of the map object in accordance with a varying slope of the side of the portion of the map object.
  • 31. The mobile communication device of claim 25, wherein the one or more processors are further operative to cause the map object label to be rendered by: identifying a slope of the portion of the map object;identifying an alphanumeric character in the map object label for rendering;retrieving a rotated alphanumeric character from the memory which corresponds to the identified alphanumeric character in the map object label and the identified slope; andcausing the rotated alphanumeric character to be rendered on or along the portion of the map.
Provisional Applications (2)
Number Date Country
60788434 Mar 2006 US
60787541 Mar 2006 US