Your geocode should be output in such a way that you

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: et address, ZIP code". (although you are welcome to implement geocoding for other types of queries as well see the extensions section below). Your geocode should be output in such a way that you can efficiently look up a latitude and longitude given an address. One way to structure your geocode index, for example, is to have the keys be zip codes and street names and the values be address ranges with appropriate street coordinates. Your output would then be sorted first numerically by zip code, and then alphabetically by street name. You could then seek into the index (think binary search) to quickly find the latitude and longitude for a desired address. (You may wish to consider java's RandomAccessFile class for this) Extensions This project has virtually limitless room for extensions. None of them are required. Here are just a few we have thought of (ranked roughly from easiest to hardest): • Exploit other data present in the datasets. Currently we are asking you to use records type 1 and 2 from the TIGER/Line data. There are about fifteen others with a range of other useful data (census, economic census, further address resolution data, etc. Find a way to use this data in this project • Build the geocode index to support other types of queries, some ideas for query types are: ◦ City, State ◦ County, State ◦ State ◦ Street address + city + state • Exploit other data sets. Several examples are the National Hydrography Dataset (NHD), satellite tiles, etc • Currently we are making a simplifying assumption that the world is a flat rectilinear coordinate system. (ie, we are not compensating for the spherical coordinates.) Correct this so the tiles represent actual squares in terms of land distance and not in terms of degree distance. • Label placement: this is deceptively hard. There are at least three types of label placement. Point labeling(cities, features, etc), line labeling(roads, rivers, etc), and shape labeling(lakes, seas, etc). With each you must figure out which labels to place at which...
View Full Document

Ask a homework question - tutors are online