Python code to find the quickest route to the highest point within a radius of 5 km circle around the entry point. The Code was built as part of the assessment for the geospatial programming module.
The code is presented in two Jupyter notebooks as required by the assessment rules. One of the notebooks hold the code main.ipynb while the other serve as interface interface.ipynb. The code was developed and submitted by @Ibrahim2311 Ibrahim Alhadidi and myself.
The program is deigned to help in a emergency situation where an extreme flood is taking place on the Isle of Wight. To help residents escape the danger the authorities advise that they proceed on foot to the highest point on land within a radius of 5 km.
The authorities provided the developers with a Digital Elevation Model (DEM) of the island, road network, Integrated Transport Network (ITN) file and a raster map of the island.
The program must be self-contained and run completely offline. No use of online mapping services is allowed
- Download the repository using the following code
git clone https://github.com/razekmh/Quickest-route-to-highest-point.git
- Unzip the elevation.7z file inside the /material/elevation/
- Make sure you have the correct dependencies installed
- Run the interface.ipynb notebook
- Run the first cell, and enter coordinates when prompted
The notebook should look like this when the code run correctly
The program is using a list of geospatial libraries - listed below -. Some of the libraries are known to have installation issues and conflicts. Please do use a package management system like anaconda or use the recommended versions.
The program was tested using the following versions:
Item | Version |
---|---|
OS | Windows 10 64x |
python | 3.7 64x |
GDAL | 3.0.2 |
Fiona | 1.8.13 |
pyproj | 2.4.2 |
Shapely | 1.6.4 |
cartopy | 0.17.0 |
geopandas | 0.6.2 |
networkx | 2.4 |
rasterio | 1.1.2 |
rtree | 0.9.3 |
numpy | 1.17.4+mkl |
scipy | 1.4.1 |