Mapper Data Flows

  1. When system starts up and Model Constructor is fired up a copy of the MapperUI is created.

  2. The user enters zone center point, GPS coordinates for the upper left and lower right of the map, and a picture of a map for the region.

  3. An update version of the zone geometry is placed into the MapperUI

  4. When the user is done the zone geometry is sent to both the Mapper (also created in the Model's constructor after the MapperUI) and the Data Store for backup.

  5. Then the Model can request the number of zones from the Mapper

  1. Address sent to the Mapper to be converted into an address

  2. Black Box of Wonder mysteriously converts (hash function of address) the address into a GPS coordinate. Then the GPS coordinate is tested against all of the zone polygons to see which zone the point is inside.

  3. Once the zone number is determined it gets sent back to the scheduler

Or alternatively...

  1. Model gives GPS coordinate to the Mapper (presumably from a cab update) to be converted into a zone number.

  2. Then the GPS coordinate is tested against all of the zone polygons to see which zone the point is inside and the result is returned to the model.