WO2008100656A1 - Apparatus and method for generating curved baseline for map labeling - Google Patents
Apparatus and method for generating curved baseline for map labeling Download PDFInfo
- Publication number
- WO2008100656A1 WO2008100656A1 PCT/US2008/050650 US2008050650W WO2008100656A1 WO 2008100656 A1 WO2008100656 A1 WO 2008100656A1 US 2008050650 W US2008050650 W US 2008050650W WO 2008100656 A1 WO2008100656 A1 WO 2008100656A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- polyline
- points
- generating
- curved
- supporting
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/006—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes
- G09B29/007—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes using computer methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
- G01C21/3673—Labelling using text of road map data items, e.g. road names, POI names
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Definitions
- the present invention relates generally to apparatus and methods for displaying maps, and more specifically, to apparatus and methods that generate curved labeling on portable GPS (Global Positioning System) devices.
- GPS Global Positioning System
- Global positioning systems allow automatic route calculation from a current position to a destination location. Such systems guide a driver of a vehicle along a calculated trip route from the particular instantaneous vehicle location to the destination location by outputting trip instructions in conjunction with a visual display of route segments as the vehicle progresses.
- GPS Global Positioning System
- U.S. Defense Department which includes a series of 24 constellation satellites orbiting the earth at a distance of approximately 20,000 kilometers.
- the GPS position location parameters permit wireless device processors to determine their respective three dimensional positions and velocities using very precise location parameters and timing signals received from the satellites.
- the displays on many portable GPS devices are small and the data populating the screen must be efficiently presented. Care must be taken to prevent overcrowding the screen with too much data.
- text labels accompanying objects should be accurately positioned so as to best associate the text with the object, i.e. road, river, etc., with minimal crossovers and crowding.
- Alexander Wolff provides in reference [1] a method of curved labeling by generating circular arcs. The method executes in O(n 2 ) time, where n is the number of points of the polyline.
- the present invention provided an efficient method and apparatus for calculating a curved baseline for display text on an end user's portable map displaying device, and in particular, on a portable global positioning system (GPS) device, that may for instance, be handheld by a user and/or mounted in a vehicle.
- GPS global positioning system
- map information includes for example, a representation of objects such as roads, which are formed by polylines. In many cases, the polylines are best annotated with a curved label for visual clarity.
- a portable GPS device is configured to perform the actions performed on the end user device as disclosed above.
- a device may include a computer platform further including a memory that comprises a map display module that further includes a curved baseline generator module.
- the curved baseline generator module further includes logic operable to generate a predetermined number of B-Spline points based upon the generated supporting polyline Q.
- An output of the curved baseline generator module comprises the B-Spline points, which is connected to form curved baseline L for displaying a label.
- a third aspect of the method includes connecting the generated B-Spline points to form the curved baseline L for displaying a label.
- a fourth further aspect includes a computer-readable medium embodying logic to perform the steps described in the second and third aspects described above.
- Another aspect includes a processor capable of executing the logic stored in the computer-readable medium of the fourth aspect.
- Fig. 1 is a system diagram of a GPS navigation system that includes a portable end user device capable of drawing labels on a curved baseline according to the present invention
- Fig. 2 is a block diagram of an exemplary embodiment of a portable end user device using a method of generating a curved baseline for map labeling
- FIG. 3 is a flowchart of one embodiment of method of generating a curved baseline for map labeling, according to the device of Fig. 2;
- Fig. 5 is a geometric drawing of a right-turning point of a polyline P
- Fig. 6 is a geometric drawing of a left-turning point of a polyline P
- Fig. 7 is a geometric drawing illustrating the generation of a point p' i from a left-turning point p i wherein the angle is less than 135 degrees, according to Fig. 1;
- Fig. 8 is a geometric diagram of the first point of supporting set Q
- Fig. 9 is a geometric diagram of the last point of supporting set Q.
- FIGs. 10 and 11 illustrate an exemplary method of generating the points between the first and last points of supporting set Q;
- Fig. 12 is a geometric drawing illustrating finding a position/, the intersection of
- Fig. 13 is a geometric drawing generating a point q j to add to Q when point p i is a left-turning point;
- Fig. 14 is a geometric generating points q j , q j+1 , and q j+2 , to add to Q when point
- Fig. 15 a geometric drawing generating two points, q j and q j+1 , to add to Q when point p i is a right-turning point and
- Fig. 16 a geometric drawing generating two points, q j and q j+1 , to add to Q when
- point p i is a right-turning point and ;
- Fig. 17 illustrates an exemplary flowchart of a method of generating the discrete points comprising curved base line L.
- FIG. 1 is an illustration of a navigation system 100 for determining the position of a portable user device 102.
- the system 100 may also provide the capability of guiding a user in navigating the user to a predetermined location.
- the system 100 determines the position of a portable user device 102 using location parameters derived from, a radio-navigation system, such as the Global Positioning System (GPS), developed and operated by the U.S. Defense Department.
- GPS Global Positioning System
- the GPS navigation system 100 receives data from several satellites 132 orbiting the earth at a distance of approximately 20,000 kilometers.
- the GPS position location parameters permit a user device 102, in communication with the satellites, to determine their respective three dimensional positions and velocities using very precise location parameters and timing signals received from the satellites 132.
- the user device 102 includes an integrated/external display unit, i.e., display screen 106, on which a map 134, or portion thereof, is displayed.
- the map 134 includes curved objects, e.g., roads, rivers, topographical boundaries, etc., which, for the sake of visual clarity, a curved baseline is best suited for displaying text related to the curved object.
- map data is stored on the user device 102.
- a particular map 134, or map object e.g., points of interest along a predetermined may be downloaded from another computer, i.e., remote server 120, over a communication network 130.
- the remote server 120 includes a memory 122 including maps and map related information stored in a map database 136.
- the remote server 120 includes a communication module 128 that under control of a processor assembly 126, receives a request for information from, and transmits the requested data to, the end user device 102 over a communications network 130.
- the portable end user device 102 illustrated in Fig. 1, and provided in greater detail in Fig., 2, is embodied in a hand held computing device. In other embodiments, the end user device 102 is integral to, or removable mounted to, a vehicle such as an automobile (not shown).
- the portable end user device 102 may comprise a computer platform 104 operable to determine and display a position of the portable end user device
- map information displayed on the output display 106 is based upon map information 144 stored on internal/external memory devices 110, such as a compact disk (CD) and a secure digital (SD) product.
- map information may be is downloaded from a remote computing system 126.
- map information may be obtained from a desktop or notebook computer maintained by the user that may communicate with the end user device 102 over a communication link that includes a hardwired connection or wireless connection, using such technologies as BLUETOOTH and infra-red (IR) radio transmissions.
- a polyline P is drawn on display 106 to represent an object, for example, a road. Furthermore, associated with polyline P, a curved baseline L is generated, but not drawn, at a predetermined distance from the polyline P, on which a curved label, for example, "Expedition Way,” is drawn. Curved labels provide a more cognitive approach for labeling map polylines because the shape of curved labels can be drawn more faithful to the original polylines.
- computer platform 104 includes a processor 108 for controlling the operation of the device 102.
- Processor 108 may comprise an application-specific integrated circuit (ASIC), or other chipset, processor, microprocessor, logic circuit, or other data processing device operable to perform one or more processing functions for the end user device 102.
- ASIC application-specific integrated circuit
- processor 108 may include various processing subsystems, embodied in hardware, firmware, software, and combinations thereof, that enable the functionality of the end user device 102.
- computer platform 104 includes a location module 114 that comprises, in whole or in part, a geographic information system (GIS), such as a tool used to gather, transform, manipulate, analyze, and produce information related to the surface of the earth.
- GIS geographic information system
- such a GIS may include a global positioning system (GPS), such as a satellite navigational system formed by satellites 132, orbiting the earth and their corresponding receivers on the earth.
- GPS global positioning system
- the GPS satellites continuously transmit digital radio signals that contain data on the satellites' location and the exact time to the earth-bound receiver.
- the satellites are equipped with atomic clocks that are precise, for example, to within a billionth of a second.
- the computer platform 104 of portable end user device 102 further includes a communication module 116 operable to transfer data between components of the portable end user device 102 and between the portable end user device 102 and external devices, such as GPS satellite 132 and remote computer system 120.
- communication module 116 may include one or any combination of input and/or output ports, transmit and receive chain components, transceivers, antenna, etc, i.e., a wired or wireless universal serial bus (USB) port.
- Communication module 116 may include, but is not limited to, technologies such as a one or any combination of a wireless GPS satellite interface; a serial port, i.e., a universal serial bus (USB) port and a FIREWIRE serial bus interface; an infrared interface; and a short range radio frequency interface, such as a BLUETOOTH technology interface.
- Memory 110 includes any type of memory, including read-only memory (ROM), random-access memory (RAM), EPROM, EEPROM, flash memory cells, secondary or tertiary storage devices, such as magnetic media, optical media, tape, or soft or hard disk, whether resident on computer platform 102 or remote therefrom.
- Processor 108 is operable to execute programs stored in memory 110, including a map display module 136 that includes program instructions to receive inputs from location module 114 and display the position of portable end user device 102 on display unit 106 along with memory resident map information 144 stored on device 102 or downloaded from remote server 120.
- Map display module 136 also includes control logic 140 operable to manage the operation of map display module 136 and, based upon commands from input/output logic 138, retrieve and store map information 144 on portable end user device 102 or on another device not shown.
- position information retrieved from satellites 132, as well as portions of map information 144, is processed and data is transmitted to display unit 106, to display the location of device 102 on a varying background of highways, roads, bridges, and rivers.
- control logic 140 transmits a polyline P, comprising points ⁇ p 1 ,p 2 , ...,p n ⁇ , to a curved baseline generator module 142.
- Curved baseline generator module 142 computes curved baseline L and transmits discrete points making up curved baseline L to control logic 140.
- Control logic 140 then operates to draw an appropriate curved label on display unit 106 using the curved baseline L.
- curved baseline generator module 142 generates curved baseline L above, or left of polyline P, as shown in Fig. 2.
- the position of the curved baseline L relative to the polyline P is predetermined.
- curved baseline generating module 142 is located in the portable end user device 102 or alternatively, in a remote device in communication with portable device 102.
- Fig. 3 is a high-level embodiment of a method implemented by curved baseline generation module 142 to generate curved baseline L that is above and does not touch polyline P.
- the curved baseline generating module 142 initializes indexes used throughout the process.
- a polyline P is input to curved baseline generator module 142 executing on the portable end user device 102 or a connected device.
- Curved baseline generator module 142 is operable to generate, above and not touching polyline P, curved baseline L upon which a curved label is drawn.
- a supporting polyline Q is generated based upon polyline P.
- map display module 110 displays a curved map label above and the left of polyline P.
- p i lies to the right of the directed line through p i-1 and p i (Fig. 5). Otherwise, p i is said to be a left-turning point (Fig. 6).
- Preliminary treatment of polyline P is performed by modifying the individual points p, making up the polyline P.
- step 404 a determination is made whether
- program determines if the angle is less than 135 degrees. If true, the point p i is replaced by p' i at step 410.
- FIG. 7 illustrates an exemplary situation wherein point p' i is calculated by letting
- m be the midpoint of and determining a point C that satisfies a condition
- step 412 a determination is made as to whether point p i+1 may be ignored and is based upon a distance d defined at Fig. 3 step 200.
- Distance d is the expected distance between P and a curved base line L to be determined. If some
- point p i+1 may be ignored.
- Supporting set Q ⁇ q 1 ,q 2 ,..., q m ) (m ⁇ n) , which is also a polyline, is also built according to distance d.
- polyline Q ⁇ q 1 ,q 2 , ...,q m ⁇ (m ⁇ n) include the following properties.
- step 500 the curved baseline L is then built by generating a predetermined number of B-Spline points with Q as the supporting set, and then connecting the points to form a curved baseline L.
- Literature generating of B-Spine points includes, for example, Fujio Yamaguchi, "Curves and Surfaces in Computer Aided Geometric Design", 1988, Springer-Verlag (pp 169-198 and pp 233-245), hereby incorporated herein in its entirety.
- Fig.17 illustrates an exemplary flowchart detailing step 500 of Fig.3.
- a third order B-Spline curve and of degree 2 is defined as:
- polyline L is generated, it is used to draw a curved label.
- the over all run time of the algorithm is O(n).
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Ecology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Navigation (AREA)
- Instructional Devices (AREA)
Abstract
Apparatus and methods of generating a curved baseline for a map labeling include receiving a polyline P= {p1,p2,...,Pn} of n points, generating a supporting polyline Q = {q1, q2,...qm} (m ≥ n) of m points at an expected distance d between polyline P and a curved base line L. A predetermined number of B-Spline points is generated based upon supporting polyline Q. The B-Spline points are then connected to form a curved baseline L for displaying a label.
Description
APPARATUS AND METHOD FOR GENERATING CURVED BASELINE FOR MAP
LABELING
FIELD OF THE INVENTION
[0001] The present invention relates generally to apparatus and methods for displaying maps, and more specifically, to apparatus and methods that generate curved labeling on portable GPS (Global Positioning System) devices.
BACKGROUND OF THE INVENTION
[0002] Global positioning systems allow automatic route calculation from a current position to a destination location. Such systems guide a driver of a vehicle along a calculated trip route from the particular instantaneous vehicle location to the destination location by outputting trip instructions in conjunction with a visual display of route segments as the vehicle progresses.
[0003] One exemplary geographical position location system receives and analyzes location parameters derived from the Global Positioning System (GPS), a radio- navigation system, developed and operated by the U.S. Defense Department, which includes a series of 24 constellation satellites orbiting the earth at a distance of approximately 20,000 kilometers. The GPS position location parameters permit wireless device processors to determine their respective three dimensional positions and velocities using very precise location parameters and timing signals received from the satellites.
[0004] The displays on many portable GPS devices are small and the data populating the screen must be efficiently presented. Care must be taken to prevent overcrowding the screen with too much data. Furthermore, text labels accompanying objects should be accurately positioned so as to best associate the text with the object, i.e. road, river, etc., with minimal crossovers and crowding.
[0005] Accordingly, the interest and the demand of finding efficient map labeling methods is increasing. Most discussions of map labeling are concentrating on straight line, horizontal or slant, based labeling. However, not all roads and rivers are straight objects wherein their accompanying text may be drawn on a baseline calculated using a linear equation of the form y=mx+b. Curved labeling may deliver better results for labeling map polylines such as rivers and roads because it can be more faithful to the original polylines.
[0006] Alexander Wolff provides in reference [1] a method of curved labeling by generating circular arcs. The method executes in O(n2) time, where n is the number of points of the polyline.
[0007] However, the number of points of polylines can be very large and the computation burden of generating curved labels may compromise the map drawing performance of a handheld or vehicle navigation GPS device.
[0008] Accordingly there is a need for apparatus and methods that efficiently generate curved labels for maps drawn on portable GPS devices.
[0009] [1] Alexander Wolff, Lars Knipping, Marc van Kreveld, Tycho Strijk and
Pankaj K. Agarwal, 2002, A Simple and Efficient Algorithm for High-quality Line
Labeling. http://i11www.iti.uni-karlsruhe.de/map-labeling/papers/wkksa-seahq-00.pdf
SUMMARY OF THE INVENTION
[0010] The present invention provided an efficient method and apparatus for calculating a curved baseline for display text on an end user's portable map displaying device, and in particular, on a portable global positioning system (GPS) device, that may for instance, be handheld by a user and/or mounted in a vehicle.
[0011] Under control of processor within the portable end user device, position information retrieved from the GPS network, and map data that, in at least one embodiment, is stored in the end user device, a display of the current location of the device is displayed. Map information includes for example, a representation of objects such as roads, which are formed by polylines. In many cases, the polylines are best annotated with a curved label for visual clarity.
[0012] According to one aspect, a portable GPS device is configured to perform the actions performed on the end user device as disclosed above. Such a device may include a computer platform further including a memory that comprises a map display module that further includes a curved baseline generator module. The curved baseline generator module comprises an input of a polyline P of n points, where P= {p1,p2, ...,pn} and logic operable to generate a supporting polyline Q of m points at an expected distance d between P and a curved base line L, where Q = {q1,q2, ...,qm} {m ≥n) . The curved baseline generator module further includes logic operable to generate a predetermined number of B-Spline points based upon the generated supporting polyline Q. An output of
the curved baseline generator module comprises the B-Spline points, which is connected to form curved baseline L for displaying a label.
[0013] In a second aspect, a method to generate curved labels for maps drawn on portable GPS devices includes receiving a polyline P of n points, where P= {p1,p2, ...,pn} and generating a supporting polyline Q of m points an expected distance d between P and a to be determined curved base line L, where Q = {q1,q2, ...,qm} (m ≥n) , Based upon the supporting polyline Q, a predetermined number of B-Spline points are generated and outputted.
[0014] A third aspect of the method includes connecting the generated B-Spline points to form the curved baseline L for displaying a label.
[0015] A fourth further aspect includes a computer-readable medium embodying logic to perform the steps described in the second and third aspects described above.
[0016] Another aspect includes a processor capable of executing the logic stored in the computer-readable medium of the fourth aspect.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The present apparatus and methods are illustrated by way of example, and not by limitation, in the figures of the accompanying drawings, wherein elements having the same reference numeral designations represent like elements throughout and wherein:
[0018] Fig. 1 is a system diagram of a GPS navigation system that includes a portable end user device capable of drawing labels on a curved baseline according to the present invention;
[0019] Fig. 2 is a block diagram of an exemplary embodiment of a portable end user device using a method of generating a curved baseline for map labeling;
[0020] Fig. 3 is a flowchart of one embodiment of method of generating a curved baseline for map labeling, according to the device of Fig. 2;
[0021] Fig. 4 illustrates a more detailed flowchart generating the first point of supporting set Q and performing preliminary treatment for an zth point of Polyline P, where P = {p1,p2, ...,Pn-1};
[0022] Fig. 5 is a geometric drawing of a right-turning point of a polyline P;
[0023] Fig. 6 is a geometric drawing of a left-turning point of a polyline P;
[0024] Fig. 7 is a geometric drawing illustrating the generation of a point p'i from a left-turning point pi wherein the angle
is less than 135 degrees, according to Fig. 1;
[0025] Fig. 8 is a geometric diagram of the first point of supporting set Q;
[0026] Fig. 9 is a geometric diagram of the last point of supporting set Q;
[0027] Figs. 10 and 11 illustrate an exemplary method of generating the points between the first and last points of supporting set Q;
[0028] Fig. 12 is a geometric drawing illustrating finding a position/, the intersection of
I1 and I2 wherein point pi is a right-turning point;
[0029] Fig. 13 is a geometric drawing generating a point qj to add to Q when point pi is a left-turning point;
[0030] Fig. 14 is a geometric generating points qj, qj+1, and qj+2, to add to Q when point
pi is a right-turning point and
[0031] Fig. 15 a geometric drawing generating two points, qj and qj+1, to add to Q when point pi is a right-turning point and
[0032] Fig. 16 a geometric drawing generating two points, qj and qj+1, to add to Q when
[0033] Fig. 17 illustrates an exemplary flowchart of a method of generating the discrete points comprising curved base line L.
DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS [0034] Fig. 1 is an illustration of a navigation system 100 for determining the position of a portable user device 102. The system 100 may also provide the capability of guiding a user in navigating the user to a predetermined location.
[0035] In one exemplary embodiment, the system 100 determines the position of a portable user device 102 using location parameters derived from, a radio-navigation system, such as the Global Positioning System (GPS), developed and operated by the U.S. Defense Department. In some embodiments, the GPS navigation system 100 receives data from several satellites 132 orbiting the earth at a distance of approximately 20,000 kilometers. The GPS position location parameters permit a user device 102, in communication with the satellites, to determine their respective three dimensional positions and velocities using very precise location parameters and timing signals received from the satellites 132.
[0036] The user device 102 includes an integrated/external display unit, i.e., display screen 106, on which a map 134, or portion thereof, is displayed. In some embodiments the map 134 includes curved objects, e.g., roads, rivers, topographical boundaries, etc.,
which, for the sake of visual clarity, a curved baseline is best suited for displaying text related to the curved object.
[0037] In some embodiments, map data is stored on the user device 102. In other embodiments, a particular map 134, or map object, e.g., points of interest along a predetermined may be downloaded from another computer, i.e., remote server 120, over a communication network 130.
[0038] Non-limiting, the remote server 120 includes a memory 122 including maps and map related information stored in a map database 136. The remote server 120 includes a communication module 128 that under control of a processor assembly 126, receives a request for information from, and transmits the requested data to, the end user device 102 over a communications network 130.
[0039] The portable end user device 102 illustrated in Fig. 1, and provided in greater detail in Fig., 2, is embodied in a hand held computing device. In other embodiments, the end user device 102 is integral to, or removable mounted to, a vehicle such as an automobile (not shown).
[0040] Non-limiting, the portable end user device 102 may comprise a computer platform 104 operable to determine and display a position of the portable end user device
102 and display its position on an output display 106 integrally or remotely connected to the device 102. The map information displayed on the output display 106 is based upon map information 144 stored on internal/external memory devices 110, such as a compact disk (CD) and a secure digital (SD) product. Alternatively, map information may be is downloaded from a remote computing system 126. Still further, map information may be obtained from a desktop or notebook computer maintained by the user that may
communicate with the end user device 102 over a communication link that includes a hardwired connection or wireless connection, using such technologies as BLUETOOTH and infra-red (IR) radio transmissions.
[0041] As illustrated in Fig. 2, a polyline P is drawn on display 106 to represent an object, for example, a road. Furthermore, associated with polyline P, a curved baseline L is generated, but not drawn, at a predetermined distance from the polyline P, on which a curved label, for example, "Expedition Way," is drawn. Curved labels provide a more cognitive approach for labeling map polylines because the shape of curved labels can be drawn more faithful to the original polylines.
[0042] In some aspects, computer platform 104 includes a processor 108 for controlling the operation of the device 102. Processor 108 may comprise an application-specific integrated circuit (ASIC), or other chipset, processor, microprocessor, logic circuit, or other data processing device operable to perform one or more processing functions for the end user device 102. Furthermore, processor 108 may include various processing subsystems, embodied in hardware, firmware, software, and combinations thereof, that enable the functionality of the end user device 102.
[0043] In some aspects, computer platform 104 includes a location module 114 that comprises, in whole or in part, a geographic information system (GIS), such as a tool used to gather, transform, manipulate, analyze, and produce information related to the surface of the earth. In some aspects, such a GIS may include a global positioning system (GPS), such as a satellite navigational system formed by satellites 132, orbiting the earth and their corresponding receivers on the earth. The GPS satellites continuously transmit digital radio signals that contain data on the satellites' location and the exact
time to the earth-bound receiver. The satellites are equipped with atomic clocks that are precise, for example, to within a billionth of a second.
[0044] The computer platform 104 of portable end user device 102 further includes a communication module 116 operable to transfer data between components of the portable end user device 102 and between the portable end user device 102 and external devices, such as GPS satellite 132 and remote computer system 120.
[0045] For instance, communication module 116 may include one or any combination of input and/or output ports, transmit and receive chain components, transceivers, antenna, etc, i.e., a wired or wireless universal serial bus (USB) port. Communication module 116 may include, but is not limited to, technologies such as a one or any combination of a wireless GPS satellite interface; a serial port, i.e., a universal serial bus (USB) port and a FIREWIRE serial bus interface; an infrared interface; and a short range radio frequency interface, such as a BLUETOOTH technology interface.
[0046] Memory 110 includes any type of memory, including read-only memory (ROM), random-access memory (RAM), EPROM, EEPROM, flash memory cells, secondary or tertiary storage devices, such as magnetic media, optical media, tape, or soft or hard disk, whether resident on computer platform 102 or remote therefrom. Processor 108 is operable to execute programs stored in memory 110, including a map display module 136 that includes program instructions to receive inputs from location module 114 and display the position of portable end user device 102 on display unit 106 along with memory resident map information 144 stored on device 102 or downloaded from remote server 120.
[0047] Map display module 136 also includes control logic 140 operable to manage the operation of map display module 136 and, based upon commands from input/output logic 138, retrieve and store map information 144 on portable end user device 102 or on another device not shown.
[0048] Under control of processor 108, position information retrieved from satellites 132, as well as portions of map information 144, is processed and data is transmitted to display unit 106, to display the location of device 102 on a varying background of highways, roads, bridges, and rivers.
[0049] Still referring to Fig. 2, based upon map information 144, control logic 140 transmits a polyline P, comprising points {p1,p2, ...,pn}, to a curved baseline generator module 142. Curved baseline generator module 142 computes curved baseline L and transmits discrete points making up curved baseline L to control logic 140. Control logic 140 then operates to draw an appropriate curved label on display unit 106 using the curved baseline L. In some embodiments, curved baseline generator module 142 generates curved baseline L above, or left of polyline P, as shown in Fig. 2. Non-limiting, the position of the curved baseline L relative to the polyline P is predetermined. [0050] Depending upon the specific portable end user device 102, and more specifically, the available computing power within the portable device 102, curved baseline generating module 142 is located in the portable end user device 102 or alternatively, in a remote device in communication with portable device 102. [0051] Fig. 3 is a high-level embodiment of a method implemented by curved baseline generation module 142 to generate curved baseline L that is above and does not touch polyline P. At step 200 the curved baseline generating module 142 initializes indexes
used throughout the process. At step 300, a polyline P is input to curved baseline generator module 142 executing on the portable end user device 102 or a connected device.
[0052] Curved baseline generator module 142 is operable to generate, above and not touching polyline P, curved baseline L upon which a curved label is drawn. At step 400, a supporting polyline Q is generated based upon polyline P. At step 500, curved baseline
L is generated based upon polyline Q. At step 600, curved baseline generator module
142 outputs discrete points along curved baseline L upon which map display module 110 displays a curved map label above and the left of polyline P.
DEFINITIONS
[0053] In one aspect, curved baseline generating module 136 is operable to generate a curved baseline L based upon a polyline P= {p1,p2, ...,pn} with a plurality of points pi = (xi ,yi ), (i = 1,2,..,n) input at step 300. Polyline P is defined as a polyline having n points, hi one aspect, points xi ≤ xi+1 (i = 1,2,..,n - 1) and polyline P is directed from p1 to pn and the labels are placed on the upper side, i.e., the left side, of the polyline P without touch it.
[0054] Each point pi (i = 1,2,..,n) includes a turning property that, in one embodiment, is defined as follows, based upon the geometric drawings of Figs. 5 and 6: i) The first point p1 and the last point pn are both defined as left-turning points.
ii) For i = 2,3,. .. ,n - 1, pi is said to be a right-turning point if the point pi+1
lies to the right of the directed line through p i-1 and pi (Fig. 5). Otherwise, pi is said to be a left-turning point (Fig. 6).
PRELIMINARY TREATMENT
[0055] Preliminary treatment of polyline P is performed by modifying the individual points p, making up the polyline P. At Fig. 4, step 404, a determination is made whether
i is within the range 1 < i < n. If true, control passes to step 406, which further
determines if pi is a left-turning point. If pi is a left- turning point, at step 408 the
program determines if the angle is less than 135 degrees. If true, the point
pi is replaced by p'i at step 410.
[0056] Fig. 7 illustrates an exemplary situation wherein point p'i is calculated by letting
convenience, p'i is henceforth labeled p, ,
[0057] At Fig. 4, step 412, a determination is made as to whether point pi+1 may be ignored and is based upon a distance d defined at Fig. 3 step 200. Distance d, where d >
0, is the expected distance between P and a curved base line L to be determined. If some
BUILDING THE SET OF SUPPORTING POINTS Q
[0058] The preliminary treatment disclosed above generates a polyline P, wherein P =
{ p1 ,p2, ...,pn } . Supporting set Q = {q1,q2,..., qm) (m ≥n) , which is also a polyline, is also built according to distance d.
[0059] Referring to the geometric drawing of Fig. 8 and step 402 of Fig. 4, q1 , the first point of Q, is calculated as follows:
Then, q1 = p1 + w .
Point q1 of Fig. 8 satisfies the following three conditions:
i) {The line passing through the point q1 and p1 is
perpendicular to the line passing through the point p1 and p2 ).
ii) (The distance between q1 and p1 is equal to d).
iii) The point q1 is on the left side of the vector from p1 to p2 .
[0060] Referring to Fig. 9 and the flowcharts of Figs. 10 and 11, qm , the last point of Q, is calculated as follows:
Then, calculate qm = Pn + z , wherein point qm satisfies the following three conditions. i) (The line passing through the point qm and pn is
perpendicular to the line passing through the point pn_1 and pn ).
ii) (The distance between qm and pn is equal to d).
iii) The point qm is on the left side of the vector from pn_1 to pn . [0061] Referring to the flowcharts illustrated in Figs. 10 and 11, qm , the 2nd to (m-1)th
point of Q, is calculated wherein for 1 < i <= n - 1, assume points
have been generated corresponding to points Consider two lines, l1 and I2 , that satisfy the following two
conditions: i) l1 is to the left or above the segment pi-1pi and parallel to the segment Pi_1P i . The distance between l1 and the segment pi-1pi is equal to d, and ii) l2 is to the left or above the segment pipi+1 and parallel to the segment pipi+1 . The distance between l2 and the segment pi pi+1 is equal to d.
[0062] Referring to step 416 of Fig. 10, the position f, the intersection of l1 and l2 is determined as follows.
Letting and
calculate vector w and z according to: wx = d . uy , wy = -d . ux ; and zx = d . vy , zy = -d . vx .
Then, letting point a = pi + w and point b = pi + z calculate point c = (a +b) /2. The intersection f of I1 and I2 can be calculated by:
[0063] The diagram of Fig. 12 and step 424 of Fig. 10 shows the determination of point in the case wherein point pi is a right-turning point (the calculations are the same if pi is a left-turning point). If point pi (0 < i < n) is a left-turning point (Fig. 13), one point qj = f will be added to Q.
[0064] If point pi (0 < i < n) is a right-turning point, there are the following three cases, as illustrated in Figs. 14-16 : i) If
, i.e., Fig. 14, three points, q, qj+1, and qj+2 will be added to Q as shown in step 426 of Fig. 11. Referring back to Fig. 13, q=a, qj+1=a+(b-pi), and qj+2=b. ii) If , i.e., Fig. 15, two points, q and qj+1 are added at
step 428, wherein qj = a and qj+1 = b .
iii) If , i.e., Fig. 16, two points qj and qj+1 will be added
to Q. In this case, they are calculated as:
[0065] Based upon steps described above, polyline Q = {q1,q2, ...,qm} (m ≥n) include the following properties.
1) Q is above the original line polyline P and does not touch P.
2) Each triangle Δququ+1qu+2 (u=1,2,...,m-2) in Figs. 14-16 is above the original polyline P and does not touch P.
3) Because the operations required to build the supporting points Q are limited, the total run time to generate Q is O(n), the time required to execute the above procedure for n points.
BUILDING THE CURVED BASELINE BY GENERATING B-SPLINE POINTS [0066] Referring back to Fig. 3, step 500, the curved baseline L is then built by generating a predetermined number of B-Spline points with Q as the supporting set, and then connecting the points to form a curved baseline L. Literature generating of B-Spine points includes, for example, Fujio Yamaguchi, "Curves and Surfaces in Computer Aided Geometric Design", 1988, Springer-Verlag (pp 169-198 and pp 233-245), hereby incorporated herein in its entirety.
[0067] Fig.17 illustrates an exemplary flowchart detailing step 500 of Fig.3. From the preliminary treatment section, Q ={q1,q2,...,qm} (m≥n) , where n is the total number of points of the original polyline P. In one embodiment, a third order B-Spline curve and of degree 2 is defined as:
[0069] Calculate Si(tj) ( i = 1,2,.. , m - 2 and j = 0,1,2, ... ,k).
[0070] Connecting these points in order generates the following polyline:
Since S1(tk) = S2 (t0 ), S2(tk) = S3(t0), ..., Sm-3(t0) = Sm-2(tk) , there's no need to keep both Si(tk) and Si+1(t0) if 1≤i≤m-3. Only when i = m-2, the last point Sm-2(tk) is needed.
[0071] Once polyline L is generated, it is used to draw a curved label. According to a property of B-Spline generated points, polyline L has following three properties:
[0072] 1. L is above the original polyline P and does not touch it because each sub curve L1 = {Si(t0), Si(t1),..., Si(tk)} is totally contained in the triangle Δqiqi+1qi+2 (i = 1, 2, ... , m - 2) , based upon the teachings of Fujio Yamaguchi, as previously disclosed. [0073] 2. L is "continuous" for two reasons: i. Si is a polynomial of degree 2 on [0, 1] (i = 1, 2, ... , m - 2) , and
ii. Si(tk)= Si+1(t0) or Si(1)= Si+1(0) (i=1, 2, ..., m-3).
[0074] 2. L is "smooth" because the derivatives of function S, that is S' , are continuous, i.e.: i) The derivatives S'i is a polynomial of degree 1 on [0,1] (i = 1,2,...,m-2); and
ii) S'i(tk)=S'i+1(t0) or S'i(1)=S'i+1(0) (i = 1,2,...,m-3).
[0075] Following is an analysis of the performance of the method heretofore disclosed. [0076] For a fixed t (0 < t < 1) , from equation III, the number of multiplications for calculating Xi(t) (i = 0,1,2) is a constant, for example C1. Then, the number of multiplications for calculating one point Su(tv) for a fixed u and fixed v ( 1≤u≤m-2; 0≤v≤k-1 ) is 3C1 . The total number of multiplications for calculating k points Su(t0), Su(t1),..., Su(tk-1) for a fixed u ( 1 ≤u ≤m-2) is 3 kC1. Therefore, the total number of multiplications for generating L is 3(m - 2)kC1 + 3C1 = 3((m - 2)k + 1)C1 < 3mkC1. The extra 3C1 is for the last
point Sm-2(tk).
[0077] The total number of points of Q is no more than 3n, where n is the number of points of the original polyline, i.e., m ≤ 3n . Therefore, the total number of multiplications for calculating (m-2)k+1 points of L is no more than 9C1kn , Because both C1 and k are constants, the run time for generating L s O(n).
[0078] The preliminary treatment and the supporting set build runs in O(n) time.
Accordingly, the over all run time of the algorithm is O(n).
[0079] While the foregoing disclosure shows illustrative aspects and/or aspects, it should be noted that various changes and modifications could be made herein without departing from the scope of the described aspects and/or aspects as defined by the appended claims. Furthermore, although elements of the described aspects s described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Additionally, all or a portion of any aspect and/or aspects may be utilized with all or a portion of any other aspect and/or aspect, unless stated otherwise.
Claims
1. A method of generating a curved baseline for a map labeling, comprising the steps of: receiving a polyline P of n points, where P= {p1,p2, ...,pn} ; generating a supporting polyline Q of m points an expected distance d between P and a curved base line L, where Q = {q1,q2, ...,qm} (m ≥n) ; generating a predetermined number of B-Spline points based upon supporting polyline Q; and outputting the generated B-Spline points.
2. The method of claim 1, wherein said generating support polyline Q step further comprises the step of: generating points {q1,q2, ...,qm} such that each triangle Δququ+1 qu+2 (u = 1, 2, ... , m - 2) is above polyline P and does not touch P.
3. The method of claim 1, wherein said generating support polyline Q step further comprises the step of: generating points {q1,q2, ...,qm} such that Q satisfies
6. The method of claim 1, further comprising the step of connecting the B- Spline points to form a curved baseline L.
7. The method of claim 6, further comprising the step of using curved baseline L to draw a curved label.
8. At least one processor configured to perform the actions of: receiving a polyline P of n points, where P= {p1,p2, ...,pn}; generating a supporting polyline Q of m points an expected distance d between P and a curved base line L, where Q = {q1,q2, ...,qm} (m ≥n) ; generating a predetermined number of B-Spline points based upon supporting polyline Q.
9. A computer program product, comprising: a computer-readable medium comprising: a first set of codes for causing a computer to receive a polyline P of n points, where P= {p1,p2, ...,pn}; a second set of codes for causing a computer to generating a supporting polyline Q of m points at an expected distance d between P and a curved base line L, where Q = {q1,q2, ...,qm} (m ≥n) ; a third set of codes for causing a computer to generate a predetermined number of B-Spline points based upon supporting polyline Q; and a fourth set of codes for causing a computer to connect the B-Spline points in sequence.
10. A portable end user device operable to generate a curved baseline for map labeling, comprising a computer platform further including: a processor; a memory executable by the processor, the memory including a curved baseline generator module that includes: an input of apolyline P of n points, where P= {p1,p2, ...,pn}; logic operable to generate a supporting polyline Q of m points at an expected distance d between P and a curved base line L, where Q = {q1,q2, ...,qm} (m ≥n) ; logic operable to generate a predetermined number of B-Spline points based upon the generated supporting polyline Q; and an output comprising the B-Spline points forming the curved baseline L.
11. The device of claim 10, wherein the portable end user device is a portable GPS device.
12. The device of claim 10, further comprising a display unit operable to display a label drawn on the curved baseline L.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP08705813.7A EP2115719A4 (en) | 2007-02-16 | 2008-01-09 | Apparatus and method for generating curved baseline for map labeling |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/675,817 US7692655B2 (en) | 2007-02-16 | 2007-02-16 | Apparatus and method of generating curved baseline for map labeling |
US11/675,817 | 2007-02-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2008100656A1 true WO2008100656A1 (en) | 2008-08-21 |
Family
ID=39690444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2008/050650 WO2008100656A1 (en) | 2007-02-16 | 2008-01-09 | Apparatus and method for generating curved baseline for map labeling |
Country Status (3)
Country | Link |
---|---|
US (1) | US7692655B2 (en) |
EP (1) | EP2115719A4 (en) |
WO (1) | WO2008100656A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010100215A1 (en) | 2009-03-06 | 2010-09-10 | F.I.S. Fabbrica Italiana Sintetici S.P.A. | SYNTHESIS OF (4aS,7aS)-OCTAHYDRO-1H-PYRROLO[3,4-b]PYRIDINE |
FR2951831A1 (en) * | 2009-10-23 | 2011-04-29 | Goodkap | Satellite navigation device for use in service and satellite navigation providing system, has integration module integrated between navigation unit and modular service unit to allow exchange of data between two distinct units |
US8219317B2 (en) | 2008-09-22 | 2012-07-10 | Mitac International Corporation | Route navigation via a proximity point |
US8249804B2 (en) | 2008-08-20 | 2012-08-21 | Mitac International Corporation | Systems and methods for smart city search |
US8290703B2 (en) | 2008-01-18 | 2012-10-16 | Mitac International Corporation | Method and apparatus for access point recording using a position device |
US8498808B2 (en) | 2008-01-18 | 2013-07-30 | Mitac International Corp. | Method and apparatus for hybrid routing using breadcrumb paths |
US8554475B2 (en) | 2007-10-01 | 2013-10-08 | Mitac International Corporation | Static and dynamic contours |
US8700314B2 (en) | 2008-01-18 | 2014-04-15 | Mitac International Corporation | Method and apparatus to search for local parking |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9015263B2 (en) | 2004-10-29 | 2015-04-21 | Go Daddy Operating Company, LLC | Domain name searching with reputation rating |
US8396657B2 (en) * | 2005-12-22 | 2013-03-12 | Hewlett-Packard Development Company, L.P. | Techniques to improve location accuracy for a map |
US20090222338A1 (en) * | 2008-03-03 | 2009-09-03 | Hamilton Ii Rick A | Monitoring and Rewards Methodologies for "Green" Use of Vehicles |
EP2503291A1 (en) | 2011-03-22 | 2012-09-26 | Harman Becker Automotive Systems GmbH | Signposts in digital maps |
EP2503292B1 (en) | 2011-03-22 | 2016-01-06 | Harman Becker Automotive Systems GmbH | Landmark icons in digital maps |
EP2503290A1 (en) | 2011-03-22 | 2012-09-26 | Harman Becker Automotive Systems GmbH | Curved labeling in digital maps |
EP2503293B1 (en) * | 2011-03-22 | 2015-05-20 | Harman Becker Automotive Systems GmbH | Labelling of map elements in digital maps |
US9002926B2 (en) | 2011-04-22 | 2015-04-07 | Go Daddy Operating Company, LLC | Methods for suggesting domain names from a geographic location data |
US8489746B2 (en) * | 2011-04-22 | 2013-07-16 | Go Daddy Operating Company, LLC | Systems for suggesting domain names from a geographic location data |
US8237745B1 (en) | 2011-09-26 | 2012-08-07 | Google Inc. | Label positioning technique to reduce crawling during zoom activities |
US9671233B2 (en) * | 2012-11-08 | 2017-06-06 | Uber Technologies, Inc. | Dynamically providing position information of a transit object to a computing device |
US20140278838A1 (en) | 2013-03-14 | 2014-09-18 | Uber Technologies, Inc. | Determining an amount for a toll based on location data points provided by a computing device |
US9684918B2 (en) | 2013-10-10 | 2017-06-20 | Go Daddy Operating Company, LLC | System and method for candidate domain name generation |
US9715694B2 (en) | 2013-10-10 | 2017-07-25 | Go Daddy Operating Company, LLC | System and method for website personalization from survey data |
US10424036B2 (en) | 2014-06-02 | 2019-09-24 | Uber Technologies, Inc. | Maintaining data for use with a transport service during connectivity loss between systems |
US10204431B1 (en) | 2014-07-15 | 2019-02-12 | Google Llc | Polygon labeling by dominant shapes |
US9953105B1 (en) | 2014-10-01 | 2018-04-24 | Go Daddy Operating Company, LLC | System and method for creating subdomains or directories for a domain name |
US9785663B2 (en) | 2014-11-14 | 2017-10-10 | Go Daddy Operating Company, LLC | Verifying a correspondence address for a registrant |
US9779125B2 (en) | 2014-11-14 | 2017-10-03 | Go Daddy Operating Company, LLC | Ensuring accurate domain name contact information |
US20190087993A1 (en) * | 2016-04-26 | 2019-03-21 | Aisin Aw Co., Ltd. | Map display system and map display program |
AU2021206860B2 (en) * | 2020-10-27 | 2022-09-08 | Canva Pty Ltd | Systems and methods for applying effects to design elements |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724072A (en) * | 1995-03-13 | 1998-03-03 | Rutgers, The State University Of New Jersey | Computer-implemented method and apparatus for automatic curved labeling of point features |
US5988853A (en) * | 1996-10-05 | 1999-11-23 | Korea Telecom | Method for placing names for point-features on a map based on a plane sweeping technique |
US6565610B1 (en) * | 1999-02-11 | 2003-05-20 | Navigation Technologies Corporation | Method and system for text placement when forming maps |
US20060058949A1 (en) * | 2004-09-10 | 2006-03-16 | Telmap Ltd. | Placement of map labels |
Family Cites Families (137)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5515283A (en) * | 1994-06-20 | 1996-05-07 | Zexel Corporation | Method for identifying highway access ramps for route calculation in a vehicle navigation system |
US5802492A (en) * | 1994-06-24 | 1998-09-01 | Delorme Publishing Company, Inc. | Computer aided routing and positioning system |
US5543789A (en) * | 1994-06-24 | 1996-08-06 | Shields Enterprises, Inc. | Computerized navigation system |
US6321158B1 (en) * | 1994-06-24 | 2001-11-20 | Delorme Publishing Company | Integrated routing/mapping information |
DE19521929A1 (en) * | 1994-10-07 | 1996-04-11 | Mannesmann Ag | Facility for guiding people |
US5844570A (en) * | 1995-05-02 | 1998-12-01 | Ames Research Laboratories | Method and apparatus for generating digital map images of a uniform format |
US6370475B1 (en) * | 1997-10-22 | 2002-04-09 | Intelligent Technologies International Inc. | Accident avoidance system |
JPH0914984A (en) * | 1995-06-28 | 1997-01-17 | Aisin Aw Co Ltd | Navigation device for vehicle |
GB9520478D0 (en) * | 1995-10-06 | 1995-12-06 | West Glamorgan County Council | Monitoring system |
JP2826086B2 (en) * | 1995-12-28 | 1998-11-18 | アルパイン株式会社 | Navigation device |
EP0788084B1 (en) * | 1996-02-01 | 2004-04-21 | Aisin Aw Co., Ltd. | Navigation system for vehicles and waypoint entering and storage method |
US6539301B1 (en) * | 1996-08-02 | 2003-03-25 | Magellan Dis, Inc. | System and method for controlling a vehicle emergency response network |
US6141621A (en) * | 1996-08-02 | 2000-10-31 | Magellan Dis, Inc. | Method of providing a textual description of a remote vehicle location |
US6609062B2 (en) * | 1996-08-22 | 2003-08-19 | Wgrs Licensing Company, Llc | Nesting grid structure for a geographic referencing system and method of creating and using the same |
US6356210B1 (en) * | 1996-09-25 | 2002-03-12 | Christ G. Ellis | Portable safety mechanism with voice input and voice output |
JP3893647B2 (en) * | 1996-09-30 | 2007-03-14 | マツダ株式会社 | Navigation device |
US5861920A (en) * | 1996-11-08 | 1999-01-19 | Hughes Electronics Corporation | Hierarchical low latency video compression |
US6084989A (en) * | 1996-11-15 | 2000-07-04 | Lockheed Martin Corporation | System and method for automatically determining the position of landmarks in digitized images derived from a satellite-based imaging system |
JP3876462B2 (en) * | 1996-11-18 | 2007-01-31 | ソニー株式会社 | Map information providing apparatus and method |
US6405130B1 (en) * | 1996-12-11 | 2002-06-11 | Magellan Dis, Inc. | Navigation system using forward-looking origin selection for route re-calculation |
US6308134B1 (en) * | 1996-12-27 | 2001-10-23 | Magellan Dis, Inc. | Vehicle navigation system and method using multiple axes accelerometer |
US20010018628A1 (en) * | 1997-03-27 | 2001-08-30 | Mentor Heavy Vehicle Systems, Lcc | System for monitoring vehicle efficiency and vehicle and driver perfomance |
DE69736954T2 (en) * | 1997-06-20 | 2007-08-02 | Mitsubishi Denki K.K. | CARD INFORMATION DISPLAY DEVICE |
US6148261A (en) * | 1997-06-20 | 2000-11-14 | American Calcar, Inc. | Personal communication system to send and receive voice data positioning information |
US6133853A (en) * | 1998-07-30 | 2000-10-17 | American Calcar, Inc. | Personal communication and positioning system |
KR19990011004A (en) | 1997-07-21 | 1999-02-18 | 홍종만 | Parking lot guidance system and method |
JP3719315B2 (en) * | 1997-08-08 | 2005-11-24 | アイシン・エィ・ダブリュ株式会社 | Vehicle navigation device and storage medium |
US6680694B1 (en) | 1997-08-19 | 2004-01-20 | Siemens Vdo Automotive Corporation | Vehicle information system |
GB2328744B (en) * | 1997-08-28 | 2002-02-13 | Denso Corp | Route guidance apparatus |
US6229546B1 (en) * | 1997-09-09 | 2001-05-08 | Geosoftware, Inc. | Rapid terrain model generation with 3-D object features and user customization interface |
US6201540B1 (en) * | 1998-01-07 | 2001-03-13 | Microsoft Corporation | Graphical interface components for in-dash automotive accessories |
US6249740B1 (en) * | 1998-01-21 | 2001-06-19 | Kabushikikaisha Equos Research | Communications navigation system, and navigation base apparatus and vehicle navigation apparatus both used in the navigation system |
US6037942A (en) * | 1998-03-10 | 2000-03-14 | Magellan Dis, Inc. | Navigation system character input device |
US6092076A (en) * | 1998-03-24 | 2000-07-18 | Navigation Technologies Corporation | Method and system for map display in a navigation application |
US6108603A (en) * | 1998-04-07 | 2000-08-22 | Magellan Dis, Inc. | Navigation system using position network for map matching |
US6172641B1 (en) * | 1998-04-09 | 2001-01-09 | Magellan Dis, Inc. | Navigation system with audible route guidance instructions |
US6189130B1 (en) * | 1998-04-30 | 2001-02-13 | International Business Machines Corporation | System and method for determining density maps in hierarchical designs |
US6184823B1 (en) * | 1998-05-01 | 2001-02-06 | Navigation Technologies Corp. | Geographic database architecture for representation of named intersections and complex intersections and methods for formation thereof and use in a navigation application program |
KR19990040849U (en) | 1998-05-02 | 1999-12-06 | 신석균 | Pyramid box |
US6873907B1 (en) * | 1998-05-05 | 2005-03-29 | Magellan Dis, Inc. | Navigation system with user interface |
US6574551B1 (en) * | 1998-05-05 | 2003-06-03 | Magellan Dis, Inc. | Autoscaling of recommended route |
US6175801B1 (en) * | 1998-06-19 | 2001-01-16 | Magelan Dts, Inc. | Navigation system map panning directional indicator |
US6163269A (en) * | 1998-05-05 | 2000-12-19 | Magellan Dis, Inc. | Navigation system with anti-alias map display |
CA2240916C (en) * | 1998-05-15 | 2010-04-06 | International Road Dynamics Inc. | Truck traffic monitoring and warning systems and vehicle ramp advisory system |
JP4209496B2 (en) * | 1998-05-15 | 2009-01-14 | アイシン・エィ・ダブリュ株式会社 | Vehicle control device |
US6362751B1 (en) * | 1998-06-11 | 2002-03-26 | Magellan Dis, Inc. | Navigation system with a route exclusion list system |
US6078864A (en) * | 1998-07-17 | 2000-06-20 | Magellan Dis, Inc. | Navigation system with predetermined indication of next maneuver |
JP2000101853A (en) * | 1998-09-21 | 2000-04-07 | Fuji Photo Film Co Ltd | Image encryption method, image encryption device, recording medium recorded with procedure of image encryption, and recording medium recorded with image file for encrypted image |
US6178380B1 (en) * | 1998-10-22 | 2001-01-23 | Magellan, Dis, Inc. | Street identification for a map zoom of a navigation system |
US6212474B1 (en) * | 1998-11-19 | 2001-04-03 | Navigation Technologies Corporation | System and method for providing route guidance with a navigation application program |
US6917982B1 (en) * | 1998-12-19 | 2005-07-12 | International Business Machines Corporation | Method and system for controlling package-oriented network traffic |
US6360167B1 (en) * | 1999-01-29 | 2002-03-19 | Magellan Dis, Inc. | Vehicle navigation system with location-based multi-media annotation |
US6816596B1 (en) * | 2000-01-14 | 2004-11-09 | Microsoft Corporation | Encrypting a digital object based on a key ID selected therefor |
US6252814B1 (en) * | 1999-04-29 | 2001-06-26 | International Business Machines Corp. | Dummy wordline circuitry |
US6381536B1 (en) * | 1999-06-21 | 2002-04-30 | Nissan Motor Co., Ltd. | Apparatus for generating road information from stored digital map database |
JP3896728B2 (en) * | 1999-06-23 | 2007-03-22 | トヨタ自動車株式会社 | Portable terminal device and in-vehicle information processing device |
US6205397B1 (en) * | 1999-08-03 | 2001-03-20 | At&T Corp | Route engineering technique |
US6349257B1 (en) * | 1999-09-15 | 2002-02-19 | International Business Machines Corporation | System for personalized mobile navigation information |
US6484089B1 (en) * | 1999-10-15 | 2002-11-19 | Magellan Dis, Inc. | Navigation system with road condition sampling |
JP3589124B2 (en) * | 1999-11-18 | 2004-11-17 | トヨタ自動車株式会社 | Navigation device |
US6363322B1 (en) * | 1999-12-22 | 2002-03-26 | Magellan Dis, Inc. | Navigation system with unique audio tones for maneuver notification |
JP4323045B2 (en) | 2000-01-14 | 2009-09-02 | 株式会社日立製作所 | Navigation device |
US6430501B1 (en) * | 2000-01-19 | 2002-08-06 | Magellan Dis, Inc. | Navigation system with route indicators |
JP3471003B2 (en) * | 2000-02-02 | 2003-11-25 | 松下電器産業株式会社 | Intersection display method, map display device therefor, and recording medium |
US6397145B1 (en) * | 2000-03-06 | 2002-05-28 | Magellan Dis, Inc. | Navigation system with complex maneuver instruction |
US6587782B1 (en) * | 2000-03-14 | 2003-07-01 | Navigation Technologies Corp. | Method and system for providing reminders about points of interests while traveling |
US6278942B1 (en) * | 2000-03-21 | 2001-08-21 | Navigation Technologies Corp. | Method and system for providing routing guidance |
US7170518B1 (en) | 2000-03-27 | 2007-01-30 | Magellan Dis, Inc. | Selective rendering of cartographic entities for a navigation system |
JP2001289661A (en) * | 2000-04-07 | 2001-10-19 | Alpine Electronics Inc | Navigator |
US7562042B2 (en) * | 2000-04-07 | 2009-07-14 | Massachusetts Institute Of Technology | Data processor for implementing forecasting algorithms |
US6529822B1 (en) * | 2000-04-11 | 2003-03-04 | Magellan Dis, Inc. | Navigation system with zoomed maneuver instruction |
US6253151B1 (en) * | 2000-06-23 | 2001-06-26 | Navigation Technologies Corp. | Navigation system with feature for reporting errors |
JP2002048574A (en) | 2000-07-31 | 2002-02-15 | Fujitsu Ten Ltd | Map information distribution method and map information distribution system |
US6774932B1 (en) * | 2000-09-26 | 2004-08-10 | Ewing Golf Associates, Llc | System for enhancing the televised broadcast of a golf game |
US6385542B1 (en) * | 2000-10-18 | 2002-05-07 | Magellan Dis, Inc. | Multiple configurations for a vehicle navigation system |
US6408243B1 (en) * | 2000-10-26 | 2002-06-18 | Honda Giken Kogyo Kabushiki Kaisha | Service delivery system |
US7010308B2 (en) * | 2000-12-13 | 2006-03-07 | Telcontar | Managing and querying moving point data |
US6542814B2 (en) | 2001-03-07 | 2003-04-01 | Horizon Navigation, Inc. | Methods and apparatus for dynamic point of interest display |
US6487494B2 (en) * | 2001-03-29 | 2002-11-26 | Wingcast, Llc | System and method for reducing the amount of repetitive data sent by a server to a client for vehicle navigation |
US6842695B1 (en) * | 2001-04-17 | 2005-01-11 | Fusionone, Inc. | Mapping and addressing system for a secure remote access system |
KR20020084716A (en) | 2001-05-02 | 2002-11-11 | 엘지이노텍 주식회사 | Method and system serving for navigation and parking information via network |
US7333820B2 (en) | 2001-07-17 | 2008-02-19 | Networks In Motion, Inc. | System and method for providing routing, mapping, and relative position information to users of a communication network |
JP2003044992A (en) * | 2001-07-31 | 2003-02-14 | Pioneer Electronic Corp | Updating method for map data in communication navigation system, and server device, recording medium and communication navigation terminal device |
US7082365B2 (en) | 2001-08-16 | 2006-07-25 | Networks In Motion, Inc. | Point of interest spatial rating search method and system |
JP3841401B2 (en) * | 2001-09-26 | 2006-11-01 | 株式会社東芝 | Campus guidance device, server device, and program |
US6885874B2 (en) * | 2001-11-27 | 2005-04-26 | Motorola, Inc. | Group location and route sharing system for communication units in a trunked communication system |
JP3908056B2 (en) * | 2002-02-26 | 2007-04-25 | アルパイン株式会社 | Car navigation system |
US6748323B2 (en) * | 2002-07-31 | 2004-06-08 | Thales North America, Inc. | Displaying data |
US6728608B2 (en) | 2002-08-23 | 2004-04-27 | Applied Perception, Inc. | System and method for the creation of a terrain density model |
EP1555511A4 (en) | 2002-10-22 | 2011-12-21 | Hitachi Ltd | Map data delivering method for communication-type navigation system |
JP2004144531A (en) * | 2002-10-23 | 2004-05-20 | Hitachi Ltd | Information providing system and information providing device for moving object |
US6782319B1 (en) * | 2002-11-26 | 2004-08-24 | Navteq North America, Llc | Method for organizing map data |
US6631322B1 (en) * | 2002-12-06 | 2003-10-07 | General Electric Co. | Method and apparatus for vehicle management |
JP2004205261A (en) * | 2002-12-24 | 2004-07-22 | Denso Corp | Navigation system |
US7421334B2 (en) | 2003-04-07 | 2008-09-02 | Zoom Information Systems | Centralized facility and intelligent on-board vehicle platform for collecting, analyzing and distributing information relating to transportation infrastructure and conditions |
US20040243307A1 (en) | 2003-06-02 | 2004-12-02 | Pieter Geelen | Personal GPS navigation device |
KR100471303B1 (en) | 2003-06-11 | 2005-02-21 | 현대자동차주식회사 | Parking guide service apparatus of vehicle and method thereof |
US7233860B2 (en) | 2003-07-16 | 2007-06-19 | Magellan Navigation, Inc. | Intelligent modular navigation information capability |
US7031836B2 (en) * | 2003-10-28 | 2006-04-18 | Thales Navigation, Inc. | Grid mapping utility for a GPS device |
US7487040B2 (en) * | 2003-11-14 | 2009-02-03 | Bernard Catalinotto | System and method for establishing a local page and grid numbering system in a geographic referencing system |
DE50310628D1 (en) | 2003-12-19 | 2008-11-20 | Bayerische Motoren Werke Ag | EXPERIENCED |
EP1695295B1 (en) | 2003-12-19 | 2008-07-02 | Bayerische Motoren Werke Aktiengesellschaft | Verification of the validity range of traffic status information |
JP2005300234A (en) | 2004-04-07 | 2005-10-27 | Denso Corp | Navigation system equipped with licensing function |
US20070088494A1 (en) | 2004-06-29 | 2007-04-19 | Rothman Michael A | System and method for enabling wireless traffic message passing |
US20060080031A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
WO2006039660A2 (en) | 2004-10-01 | 2006-04-13 | Networks In Motion, Inc. | Off board navigation solution |
US7480566B2 (en) * | 2004-10-22 | 2009-01-20 | Alpine Electronics, Inc. | Method and apparatus for navigation system for searching easily accessible POI along route |
US7571157B2 (en) * | 2004-12-29 | 2009-08-04 | Aol Llc | Filtering search results |
KR100696801B1 (en) | 2005-03-04 | 2007-03-19 | 엘지전자 주식회사 | Navigation system and interesting location seaching method thereof |
JP4498176B2 (en) | 2005-03-14 | 2010-07-07 | アルパイン株式会社 | Navigation device and moving body position correcting method |
JP4135110B2 (en) | 2005-03-15 | 2008-08-20 | ソニー株式会社 | Point search device and search method |
JP3987877B2 (en) | 2005-04-08 | 2007-10-10 | 松下電器産業株式会社 | Map information updating apparatus and map information updating method |
US7885758B2 (en) | 2005-06-30 | 2011-02-08 | Marvell World Trade Ltd. | GPS-based traffic monitoring system |
US20070050128A1 (en) | 2005-08-31 | 2007-03-01 | Garmin Ltd., A Cayman Islands Corporation | Method and system for off-board navigation with a portable device |
US7698061B2 (en) | 2005-09-23 | 2010-04-13 | Scenera Technologies, Llc | System and method for selecting and presenting a route to a user |
US20080270016A1 (en) | 2005-11-21 | 2008-10-30 | Ford Motor Company | Navigation System for a Vehicle |
US20070130153A1 (en) | 2005-12-02 | 2007-06-07 | Palm, Inc. | Techniques to communicate and process location information from communications networks on a mobile computing device |
JP2007155582A (en) | 2005-12-07 | 2007-06-21 | Casio Hitachi Mobile Communications Co Ltd | Navigation system, navigation method, and program |
JP4643436B2 (en) | 2005-12-27 | 2011-03-02 | アルパイン株式会社 | Own vehicle position determination device |
US7590490B2 (en) | 2006-01-09 | 2009-09-15 | Mitac International Corporation | Smart detour |
KR101202068B1 (en) | 2006-02-08 | 2012-11-15 | 에스케이플래닛 주식회사 | Map Data Upgrade Method for Telematics Service of Mobile Communication Terminal, Server and System Using the Same |
US7450003B2 (en) | 2006-02-24 | 2008-11-11 | Yahoo! Inc. | User-defined private maps |
JP5183029B2 (en) | 2006-03-10 | 2013-04-17 | 日立オートモティブシステムズ株式会社 | Map update program and map update terminal |
JP4929870B2 (en) | 2006-06-23 | 2012-05-09 | 日産自動車株式会社 | Navigation device |
US20080091726A1 (en) * | 2006-10-16 | 2008-04-17 | Bluetie, Inc. | Methods for scheduling and completing reservations within an application and systems thereof |
US7512487B1 (en) | 2006-11-02 | 2009-03-31 | Google Inc. | Adaptive and personalized navigation system |
US7797187B2 (en) * | 2006-11-13 | 2010-09-14 | Farecast, Inc. | System and method of protecting prices |
US7778769B2 (en) | 2006-11-27 | 2010-08-17 | International Business Machines Corporation | Method and system for calculating least-cost routes based on historical fuel efficiency, street mapping and location based services |
US20080133120A1 (en) | 2006-11-30 | 2008-06-05 | Romanick Ian D | Method for determining and outputting travel instructions for most fuel-efficient route |
US20080134088A1 (en) | 2006-12-05 | 2008-06-05 | Palm, Inc. | Device for saving results of location based searches |
US20090138190A1 (en) | 2007-11-26 | 2009-05-28 | Magellan Navigation, Inc. | System and Method of Providing Traffic Data to a Mobile Device |
US20090171584A1 (en) | 2007-12-31 | 2009-07-02 | Magellan Navigation, Inc. | System and Method for Accessing a Navigation System |
US20090182498A1 (en) | 2008-01-11 | 2009-07-16 | Magellan Navigation, Inc. | Systems and Methods to Provide Navigational Assistance Using an Online Social Network |
US9354068B2 (en) | 2008-01-14 | 2016-05-31 | Blackberry Limited | System and method for dynamically downloading and displaying map data |
US8290703B2 (en) | 2008-01-18 | 2012-10-16 | Mitac International Corporation | Method and apparatus for access point recording using a position device |
US8498808B2 (en) | 2008-01-18 | 2013-07-30 | Mitac International Corp. | Method and apparatus for hybrid routing using breadcrumb paths |
US8700314B2 (en) | 2008-01-18 | 2014-04-15 | Mitac International Corporation | Method and apparatus to search for local parking |
-
2007
- 2007-02-16 US US11/675,817 patent/US7692655B2/en active Active
-
2008
- 2008-01-09 WO PCT/US2008/050650 patent/WO2008100656A1/en active Application Filing
- 2008-01-09 EP EP08705813.7A patent/EP2115719A4/en not_active Ceased
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724072A (en) * | 1995-03-13 | 1998-03-03 | Rutgers, The State University Of New Jersey | Computer-implemented method and apparatus for automatic curved labeling of point features |
US5988853A (en) * | 1996-10-05 | 1999-11-23 | Korea Telecom | Method for placing names for point-features on a map based on a plane sweeping technique |
US6565610B1 (en) * | 1999-02-11 | 2003-05-20 | Navigation Technologies Corporation | Method and system for text placement when forming maps |
US20060058949A1 (en) * | 2004-09-10 | 2006-03-16 | Telmap Ltd. | Placement of map labels |
Non-Patent Citations (1)
Title |
---|
See also references of EP2115719A4 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8554475B2 (en) | 2007-10-01 | 2013-10-08 | Mitac International Corporation | Static and dynamic contours |
US8290703B2 (en) | 2008-01-18 | 2012-10-16 | Mitac International Corporation | Method and apparatus for access point recording using a position device |
US8498808B2 (en) | 2008-01-18 | 2013-07-30 | Mitac International Corp. | Method and apparatus for hybrid routing using breadcrumb paths |
US8700314B2 (en) | 2008-01-18 | 2014-04-15 | Mitac International Corporation | Method and apparatus to search for local parking |
US8249804B2 (en) | 2008-08-20 | 2012-08-21 | Mitac International Corporation | Systems and methods for smart city search |
US8219317B2 (en) | 2008-09-22 | 2012-07-10 | Mitac International Corporation | Route navigation via a proximity point |
WO2010100215A1 (en) | 2009-03-06 | 2010-09-10 | F.I.S. Fabbrica Italiana Sintetici S.P.A. | SYNTHESIS OF (4aS,7aS)-OCTAHYDRO-1H-PYRROLO[3,4-b]PYRIDINE |
FR2951831A1 (en) * | 2009-10-23 | 2011-04-29 | Goodkap | Satellite navigation device for use in service and satellite navigation providing system, has integration module integrated between navigation unit and modular service unit to allow exchange of data between two distinct units |
Also Published As
Publication number | Publication date |
---|---|
US7692655B2 (en) | 2010-04-06 |
EP2115719A4 (en) | 2015-03-18 |
EP2115719A1 (en) | 2009-11-11 |
US20080198162A1 (en) | 2008-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7692655B2 (en) | Apparatus and method of generating curved baseline for map labeling | |
US11355012B2 (en) | Mobile device and method and system for transmission of data thereto | |
EP2475962B1 (en) | Systems and methods for detecting bifurcations | |
EP2462404B1 (en) | Methods of pre-processing probe data | |
US6546335B1 (en) | System, functional data, and methods to bias map matching | |
US6856899B2 (en) | Systems and methods for a navigational device with improved route calculation capabilities | |
US9506764B2 (en) | System and method of generating a route across an electronic map | |
US20080201074A1 (en) | System and method for creating and sharing navigation routes with electronic devices | |
EP2898292A1 (en) | Method and system for determining a deviation in the course of a stretch of a road | |
WO2011053389A1 (en) | Methods and apparatuses for determining a geometric feature of a navigable feature | |
CN105008860A (en) | Method and apparatus for creating map data | |
CN102192752A (en) | Navigation apparatus, navigation method and program | |
US11443465B2 (en) | Method, apparatus, and computer program product for generating turn paths through an intersection | |
US11288955B2 (en) | Traffic analysis based on historical global positioning system data | |
US7130740B2 (en) | Method and apparatus for generation of real-time graphical descriptions in navigational systems | |
WO2011095226A1 (en) | Apparatus and method for generating a view | |
WO2011072753A1 (en) | Traffic analysis based on historical global positioning system data | |
KR20130135655A (en) | System and method for search service | |
CN101017090A (en) | Navigation method for searching point of destination by telephone number and system therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08705813 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008705813 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |