Global Positioning System Reference
In-Depth Information
8.4.1 Creating a Destination List
Cartography, networking, and building a destination list make up the core
of a map product. While nodes can be looked up via IDs, a destination list
can add much more complexity as it reflects the administrative hierarchy
of a map area. If the navigation GUI can be set to different languages, then
each string has to be mapped to a geo location. If the navigation system
allows speech input, every destination entry or grapheme in every language
(not to speak of dialects) has to be mapped to one or more phonemes. 6
For the initial roaf project, extractOSMnodes(NodeListmapNodes) cre-
ates a simple representation of a database (table):
List<String[]> mapGeoDB = new ArrayList<String[]>()
The array list is an extendable table and the first row ( index0 ) holds the
hard-coded field names:
final String[] dbFieldnames
= { "nodeID", "city", "state", "country", "continent" };
mapGeoDB.add ( dbFieldnames );
The first column contains the unique (primary) key to look up coordi-
nates and uses the hard-coded filters COUNTRY,CONT (analog to a sqlWHERE
clause).
For a more complex destination list, OSM data references the openGeoDB ,
which can be downloaded. As navigational software becomes prevalent in
remote devices, destination databases will exist independent of map data.
Navigation systems will be able to access databases (of any size) with local
knowledge.
In order to locate a destination, the destination entry has to be asso-
ciated to a node. The process of finding geographical coordinates for an
address or vice versa is called (reverse) geocoding or geomatching. Geocod-
ing is the common practice to enrich maps by mapping address lists (stores,
hotels etc.) to the geometry of the map.
For the GER product, cities are represented by a single node, while com-
mercial map vendors make sure that every administrative area has a single
node representation in the network. A \city center" is carefully selected for
every place. Once all named places of the OSM file have been parsed into
the array list, the list can be transferred into the two-dimensional fixed-
size array destinations , which is printed in the main method. Navigation
systems usually store these strings in separate, large and indexed files.
8.4.2 Building a Graph
After all OSM nodes and destinations have been parsed into their data
structures, the method extract MapLinks(NodeListmapNodes) retrieves the
6 Search for SAMPA (Speech Assessment Methods Phonetic Alphabet) to learn more.
 
Search WWH ::




Custom Search