The stack needed for this :
- Python ^3.6
- Django ^3.1 (with GeoDjango plugin)
- Django Rest Framework
- Postgres (with
postgis
extension)
Geometric Representation
There are many standard formats of representing map data. Lets take a quick look at them:
GeoJson :
{
"type": "Feature",
"properties": {
"name": "Coors Field",
"amenity": "Baseball Stadium",
"popupContent": "This is where the Rockies play!",
},
"geometry": {
"type": "Point",
"coordinates": [ -104.99404, 39.75621]
}
}
Geometric Markup Language
<gml:Point gml:id="p21" srsName="http://www.opengis.net/def/crs/EPSG/0/4326">
<gml:coordinates>45.67, 88.56</gml:coordinates>
</gml:Point>
Well Known Text (WKT)
POINT(2 2)
LINESTRING(0 0 0,1 0 0,1 1 2)
Since we are making a REST backend, we would be using GeoJson in our HTTP payload.
Read more about it here- Designing A Geospatial Rest Backend Using GeoDjango