This is a front-end for Terraserver, a large geographical database. Improvements made here:
The software is fairly simple. The six CGIs are Bourne shell scripts. The UTM/Lat-Long coordinate conversions are done by two programs I wrote. The image manipulation for the Save command is done using the pbmplus package, which I also mostly wrote.
Most of the map data is just referenced from Terraserver, it's not stored at acme.com at all. This makes it feasible to host the mapper service on my puny box. I hope the Terrasever folks don't mind. They do have a very liberal policy on linking to their images. Actually, I hope they pick up my improvements, or better yet hire me to implement them.
While Terraserver has topo maps in all scales, they only have aerial photos up as far as 64 meters/pixel. To get around this limitation, I fetched the 64 m/p photos for the entire USA and used them to create larger scale photos, all the way up to 1 km / pixel. These maps are stored here at acme.com, not on Terraserver. This tiny subset of Terraserver's maps takes up 400MB in 46,000 files; the larger-scale versions I created take up 136MB in 17,000 files.
The geographical names data is from the USGS's GNIS project. The mapper uses the "concise" dataset, with only forty thousand entries. The full dataset has almost two million entries! ZIP code data for the Find page comes from the U.S. Census Bureau.
Some Q & A about the ACME Mapper:
# A Terraserver tile URL looks like this:
# http://terraserver-usa.com/tile.ashx?t=1&s=10&x=2809&y=20964&z=10
# The parameters are as follows:
# T: theme, 0=relief 1=image 2=topo
# S: scale, ranges are:
# T=0: 20-24
# T=1: 10-16
# T=2: 11-21
# X: UTM easting / pixels per tile / meters per pixel
# Y: UTM northing / pixels per tile / meters per pixel
# Z: UTM numeric zone
# Pixels per tile is 200. Meters per pixel is 2 ^ ( scale - 10 ).