# Deerfield Illinois USA house addressing grids

## Law

The law says

(1) The south line of section 32 and 33, township 43 North, Range 12, East of the 3rd Principal Meridian shall be the base line for streets running north and south. The east line of Section 28 and 33, Township 43 North, East of the 3rd Principal Meridian shall be the base line for streets running east and west. There shall be one (1) number for every twenty (20) feet of frontage, the numbers at each intersection, each block comprising one-eighth (1/8) of a mile, shall start with one hundred (100) or a multiple thereof.

## Coding

After for example using OpenStreetMap iD editor's USGS topographic map layer, as one quick way of finding items along the above east line of those sections, we then note down what we found. (Linux shell coding:)

nx=-87.8275970 ny=42.1817060
sx=-87.8284360 sy=42.1527288

Now we will use Proj tools:

First we get the azimuth of the (north-south) meridian for our system. (We assume the east-west base line is perpendicular.)

set -- \$(echo \$sy \$sx \$ny \$nx | geod +ellps=GRS80 -f %.9f -I)

We will use that azimuth for +alpha, the only way we figured how to make +proj=omerc work. No we can't just use +proj=tmerc or +proj=merc, as ......

So now we can pump longitude latitude pairs,

echo \$x \$y | proj +proj=omerc +alpha=\$1 +gamma=0 +lonc=\$sx +lat_0=\$sy +units=us-mi +k_0=800 -f %.0f | perl -nwle '/^(-?)(\d+)\s+(-?)(\d+)\$/ or die "Odd!!"; printf "%s%s\t%s%s\n", \$2, \$1 ? "" : "E", \$4, \$3 ? "S" : "";'

to get grid pairs like

 798E 321 545 604S 2111 607

Dan Jacobson