BRIEF DESCRIPTION OF THE DRAWINGS
The invention is described in greater detail below with reference to the Figs. that show merely exemplary embodiments.
The Figs. show:
FIG. 1, a schematic representation of a geographic region, within which a navigation system is situated;
FIG. 2, a representation according to FIG. 1 of the geographic region shown in FIG. 1, namely with superimposed tiling;
FIG. 3, a representation according to FIGS. 1 and 2 of the geographic region shown in FIG. 2, namely once again with superimposed tile structure;
FIG. 4, an enlarged representation according to FIGS. 1 to 3 of a section of an image illustrated on the monitor of a navigation system, as well as the data file structure of the corresponding isoline data file;
FIG. 5, a schematic representation of the data file structure of an isoline data file according to FIG. 4;
FIG. 6, a section of an image illustrated on the monitor of a navigation system in the form of a 2-D view;
FIG. 7, a representation according to FIG. 6 of a section of an image illustrated on the monitor in the form of a 2½-D or Quasi-3-D view; and
FIG. 8, a representation according to FIG. 6 of the image illustrated on the monitor in FIG. 6 without isolines.
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows a schematic representation of a geographic region or a map M, within the map region of which the navigation system such as, for example, a navigation system of a motor vehicle, is currently situated. One can distinguish a few schematically illustrated area boundaries, as well as the instantaneous geographic position P of the motor vehicle and of the navigation system which is determined by the navigation system and marked with “P,”
FIG. 2 shows the same map region M as FIG. 1, wherein a grid is superimposed on the map region M in FIG. 2. In this case, the grid corresponds to a logical division of the map region M into tiles. The division of the map region M into tiles serves for storing the isoline data assigned to the map region M—for example, the data of isohypses or contour lines—in corresponding isoline data files in a precisely structured fashion.
The square B bordered by a bold line in FIG. 2 symbolizes the extent of the geographic area B or the extent of one of the six isoline data files A, B, C, D, E, F assigned to the map region M. In this case, the coordinates of the corner points [Top.Left] and [Bot.Right] of the square B are defined as follows based on the given boundaries of the geographic area B [GeoArea.left], [GeoArea.right], [GeoArea.top], [GeoArea.bottom]:
Top.Left={GeoArea.left, GeoArea.top}
and
Bot.Right={GeoArea.right, GeoArea.bottom}.
In order to reference the section IV or the tile IV of the isoline data file “B” and to directly access the corresponding section IV within the isoline data file “B,” within which the current geographic position P of the navigation system is situated, it is necessary to deduce the corresponding section IV of the isoline data file “B” based on the current geographic position P.
This is preferably realized as described below (on the example of the geographic area B and the tile IV situated therein).
- Referencing the tile-ID and the isoline data to be drawn which is contained therein based on the geographic position P (x, y) of the navigation system:
- a) Determining the number of columns [Number.Columns] based on the given width of the geographic area B [GeoArea.Width} and based on the given width of the tiles [Tile size.x]:
- =1+(GeoArea.Width/Tile size.x)*
- b) Determining the column [Current.Column] in which the navigation system is currently situated at the position P based on the given left boundary [GeoArea.left] of the geographic area B, based on the geographic width [x] of the instantaneous position P and based on the given width of the tiles [Tile size.x]:
- minimum of {(x−[GeoArea.left)/Tile size.x, Number.Columns−1}*
- c) Determining the number of lines [Number.Lines] based on the given height of the geographic area B [GeoArea.Height] and based on the given height of the tiles [Tile size.y]:
- 1+(GeoArea.Height/Tile size.y)*
- d) Determining the line [Current.Line] in which the navigation system is currently situated at the position P based on the given upper boundary [GeoArea.top] of the geographic area B, based on the geographic length [y] of the instantaneous position P and based on the given height of the tiles [Tile size.y]:
- =minimum of {(y−GeoArea.top)/Tile size.y, Number.Lines−1}*
- e) Determining the serial number [Tile.No] of the tile in which the navigation system is currently situated at the position P:
- =Current.Line*Number.Columns+Current.Column
- *) The numeral 1 is respectively added and subtracted again in order to make it possible to carry out the calculation with integral variables in this case. Since possibly created decimal places are cut off in this case, a residual line or residual column at the edge of the geographic area may be respectively lost. For reasons of simplicity, a line and a column generally are therefore additionally stored, namely regardless of the fact whether it respectively is partially filled or empty.
In the example illustrated in FIGS. 1 and 2, this results in the value Tile.No=4 for the serial number of the tile IV containing the instantaneous position P of the navigation system. The position P of the navigation system therefore is situated in the tile IV.
FIGS. 3 and 4 show how the corresponding isoline data is determined and illustrated on the monitor of the navigation system based on the previously determined number of the tile IV, the geographic position of which corresponds to the position P of the navigation system.
For this purpose, the navigation system merely needs to initially select the isoline data file B that belongs to the geographic area B and subsequently jump to the position 1839 that corresponds to the previously determined tile IV within the selected isoline data file B. In the present example, the isoline data belonging to the tile IV begins in the isoline data file B at the position identified by the data file offset pointer 1839.
The navigation system therefore jumps to the position in the isoline data file B which is identified by the pointer 1839 and now only needs to successively process the isolines 1, 2, 3, 4 . . . beginning at this position and successively illustrate the polygon data contained therein on the monitor.
This process is symbolically illustrated in FIG. 4, on the left side of which a monitor section of the navigation system that corresponds to the area tile IV is illustrated with an area characteristic W (for example, a forest) displayed on the monitor and with a number of already drawn polygon data or isolines 1 to 4. The corresponding data file segment of the isoline data file B which is assigned to the geographic area B in FIG. 3 is schematically illustrated on the right side of FIG. 4.
The isoline data file B comprises a data file header H that contains information for identifying the data file (in this example, “File B”), information on the size of the geographic area B covered by the isoline data file B, as well as information on the maximum number of corner points per polygon 1, 2, 3, 4 . . . The latter serves, in particular, for adjusting a corresponding data file buffer with such a size that the maximum polygon size [max.points] expected just fits into the data file buffer already before the actual drawing routine in order to save space.
After the data file header H, the isoline data file B contains the data of the nine tiles I to IX of the isoline data file B in a linearly continuous fashion, wherein the isolines 1, 2, 3, 4 . . . contained in the respective tiles I to IX or the corresponding polygon data are respectively indicated for each of the tiles I to IX. This data comprises, in particular, the number of colors used in the respective tiles I to IX and the corresponding color values of the polygons 1, 2, 3, 4 . . . , as well as the numerical values linked with the polygons or isolines 1, 2, 3, 4 . . . (in the case of isohypses, in particular, the elevation above mean sea level) and the actual coordinates of the corner points of the polygon data or isolines l, 2, 3, 4 . . . . In this case, the data of the individual isolines or polygons 1, 2, 3, 4 . . . , as well as the data of the corner points of each polygon, are contained in the isoline data file B in the form of a strictly successive linear arrangement.
This specific arrangement of the data contained in the isoline data file B provides the decisive advantage that the corresponding drawing routines of the navigation system can process the data of the isoline data, file B beginning with the corresponding data file offset (in the discussed example, the tile IV with the data file offset 1839) without any data file jumps. Consequently, the data contained in the isoline data file B can be cycled in a purely successive fashion and with a minimum of computing operations such that the polygons or isolines 1, 2, 3, 4 . . . can be illustrated on the monitor of the navigation system in the correct sequence—with the lowest computing expenditure possible and with the highest drawing speed possible.
FIG. 5 once again shows in more detailed and graphical form the data file structure of one exemplary embodiment of an isoline data file B. One can distinguish, in particular, the data file header H with the comprehensive tile information on the geographic area B covered by the isoline data file “File B,” as well as the data file segments 1, II, III, IV . . . serving as placeholders and containing the information on the individual tiles I to III and, with respect to the tile IV, the contents and information on the individual isolines or polygons and subpolygons 1, 2, 3, 4 . . . contained in the tile IV.
This figure also makes it clear that the special, strictly linear data file structure of the illustrated isoline data file B makes it possible to achieve a particularly simple and fast calculation and illustration of the isolines 1, 2, 3, 4 . . . on the monitor of the navigation system. In addition, such an isoline data file can—as already described in detail above—be combined with the data of any road map, wherein the road map and the isoline data can always be simultaneously made available, handled and, if applicable, exchanged or updated completely separate of one another.
In FIGS. 6 and 7, it is once again graphically symbolized which decisive improvements can be achieved in the illustration and intuitive perception of a road map if the road map is illustrated with additional isohypses or contour line data. Although neither FIG. 6 nor FIG. 7 by no means shows a true three-dimensional illustration, the perspectively tilted 2½-D or Quasi-3-D illustration shown in FIG. 7 and the 2-D illustration shown in FIG. 6 that corresponds to a bird's-eye view impart a downright plastic image of the landscape relief due to the isolines that are shaded differently in dependence on the elevation above mean sea level.
FIG. 8 shows the road map illustrating exactly the same map section as FIGS. 6 and 7, however, without isolines and without corresponding shades of gray. In comparison with the map illustrations according to FIGS. 6 and 7, one can immediately recognize the minimal information content—for example, for the driver of a motor vehicle—and the thusly very limited orientation options of the road map according to FIG. 8.
This clearly demonstrates that the invention makes it possible to decisively improve the quality of the illustration of road maps on monitors of navigation systems, as well as the associated intuitive orientation of the user in the surroundings.
The invention makes it possible, in particular, to combine existing road maps with separate isoline data, namely of any arbitrary origin, in a constructively and technically simple and therefore cost-efficient fashion.
The invention consequently provides a decisive contribution to improving the illustration of road maps on navigation systems, as well as to improving the orientation and safety of the user during the utilization of navigation systems, particularly in motor vehicles.
LIST OF REFERENCE SYMBOLS
- M Geographic region, map
- P (x, y) Current geographic position
- A, B, C, D . . . Partial geographic area, isoline data file
- I, II, III, IV . . . Area tile, data file segment
1, 2, 3, 4 . . . Isoline, isohypse, polygon
- H Data file header
- W Area characteristic
- [Number.Columns] Number of columns of the geographic area
- [Number.Lines} Number of lines of the geographic area
- [Current.Column] Column of the geographic area that contains P
- [Current.Line] Line of the geographic area that contains P
- [GeoArea.Width] Width of the geographic area
- [GeoArea.Height] Height of the geographic area
- [GeoArea.left] Left/western boundary of the geographic area
- [GeoArea.right] Right/eastern boundary of the geographic area
- [GeoArea.top] Upper/northern boundary of the geographic area
- [GeoArea.bottom] Lower/southern boundary of the geographic area
- [Top.Left] North-eastern corner coordinate of the geographic area
- [Bot.Left] South-western corner coordinate of the geographic area
- [Tile size.x] Width of the tile
- [Tile size.y] Height of the tile
- [Tile.No] Serial number of the tile that contains P
- [max.points] Maximum polygon size of the isoline data file