REAL-TIME SPHERICAL CORRECTION OF MAP DATA

Abstract
A method of displaying a map on a wireless communications device includes steps of obtaining map data for rendering the map to be displayed on the wireless communications device, generating corrected map data by applying a spherical correction factor to the obtained map data, and rendering the corrected map data to display the map on a display of the wireless communications device. The spherical correction factor corrects for map distortions that occur at northerly (or southerly) latitudes. Since the spherical correction factor is a simple correction to a 3×3 transformation matrix, this spherical correction can be easily applied without taxing the CPU limitations of small handheld devices.
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 network components which provide mapping functionality in the wireless communications devices of FIG. 1 and FIG. 2;



FIG. 3B illustrates 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 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 displaying a map on a wireless device;



FIG. 6 is a screenshot of a map of North America without spherical correction;



FIG. 7 is a screenshot of the same map of North America after applying spherical correction;



FIG. 8 is a screenshot of a street map of downtown Ottawa, Canada (latitude 45° 19′ N) without spherical correction; and



FIG. 9 is a screenshot of the same street map of downtown Ottawa, Canada after applying spherical correction.


Claims
  • 1. A method of displaying a map on a wireless communications device, the method comprising steps of: obtaining map data for rendering the map to be displayed on the wireless communications device;generating corrected map data by applying a spherical correction factor to the obtained map data; andrendering the corrected map data to display the map on a display of the wireless communications device.
  • 2. The method as claimed in claim 1 wherein the step of generating the corrected map data comprises a step of calculating a single spherical correction factor for applying to all of the vertices of the map to be rendered based on a latitude of a center of the map.
  • 3. The method as claimed in claim 2 wherein the spherical correction factor is equal to a cosine of an absolute value of the latitude of the center of the map.
  • 4. The method as claimed in claim 3 wherein the step of generating the corrected map data comprises a step of incorporating the spherical correction factor into a 3×3 transformation matrix that transforms all vertices in the map to be rendered from latitude and longitude coordinates into screen coordinates.
  • 5. The method as claimed in claim 1 wherein the step of generating the corrected map data comprises a step of using a fixed latitude to calculate the spherical correction factor when a selected zoom level of the map exceeds a predetermined zoom level.
  • 6. The method as claimed in claim 5 wherein the fixed latitude is 41 degrees.
  • 7. The method as claimed in claim 4 wherein the step of generating the corrected map data comprises a step of using a fixed latitude to calculate the spherical correction factor when a selected zoom level of the map exceeds a predetermined zoom level.
  • 8. The method as claimed in claim 7 wherein the fixed latitude is 41 degrees.
  • 9. 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.
  • 10. A 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.
  • 11. A 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.
  • 12. A 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.
  • 13. A 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.
  • 14. A 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.
  • 15. A 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.
  • 16. A 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.
  • 17. A wireless communications device for enabling a user of the device to display a map on the device, the wireless device comprising: an input device for enabling the user to cause the device to obtain map data for rendering the map to be displayed on a display of the device; anda processor for generating corrected map data by applying a spherical correction factor to the obtained map data and for rendering the corrected map data to display the map on the display of the wireless communications device.
  • 18. The wireless communications device as claimed in claim 17 wherein the processor calculates a single spherical correction factor for applying to all of the vertices of the map to be rendered based on a latitude of a center of the map.
  • 19. The wireless communications device as claimed in claim 18 wherein the spherical correction factor is equal to a cosine of an absolute value of the latitude of the center of the map.
  • 20. The wireless communications device as claimed in claim 19 wherein the processor incorporates the spherical correction factor into a 3×3 transformation matrix that transforms all vertices in the map to be rendered from latitude and longitude coordinates into screen coordinates.
  • 21. The wireless communications device as claimed in claim 17 wherein the processor generates the corrected map data by using a fixed latitude to calculate the spherical correction factor when a selected zoom level of the map exceeds a predetermined zoom level.
  • 22. The wireless communications device as claimed in claim 21 wherein the fixed latitude is 41 degrees.
  • 23. The wireless communications device as claimed in claim 20 wherein the processor generates the corrected map data by using a fixed latitude to calculate the spherical correction factor when a selected zoom level of the map exceeds a predetermined zoom level.
  • 24. The wireless communications device as claimed in claim 23 wherein the fixed latitude is 41 degrees.
  • 25. The wireless communications device as claimed in claim 17 further comprising a Global Positioning System (GPS) receiver for generating GPS position data for a current location of the device and for communicating the position data to the processor so that, when the device displays the current location of the device on the map, the processor can compute the spherical correction factor based on the latitude of the current location of the device.
Provisional Applications (2)
Number Date Country
60788434 Mar 2006 US
60787541 Mar 2006 US