-
-
-
-def FindClosestBlock(blocks, target_coords):
- """
- Find the closest block (from within blocks) to the GPS
- coordinates given by target_coords.
- """
-
- # Empty by default. Hopefully we're passed some blocks.
- closest_block = None
- min_distance = 999999999.0 # Don't look at me like that.
-
- for block in blocks:
- this_distance = GPS.CalculateDistance(target_coords, block.coordinates)
- if (this_distance < min_distance):
- closest_block = block
- min_distance = this_distance
-
- return closest_block
-
-
-
-def FindAveragePopulationDensity(coords, geo_file_path):
- grp = GeoRecordParser()
- blocks = grp.parse_blocks(geo_file_path)
- closest_block = FindClosestBlock(blocks, coords)
-
- return closest_block.population_density()