2025-02-14 16:20:27 -05:00
|
|
|
import shapely
|
|
|
|
|
2025-02-11 11:29:16 -05:00
|
|
|
COORD_SYSTEM = 4326
|
2025-02-10 20:05:00 -05:00
|
|
|
|
|
|
|
class Coord():
|
2025-02-11 16:45:32 -05:00
|
|
|
__slots__ = 'lon', 'lat',
|
2025-02-10 20:05:00 -05:00
|
|
|
|
2025-02-11 16:45:32 -05:00
|
|
|
def __init__(self, lon: float, lat: float):
|
2025-02-10 20:05:00 -05:00
|
|
|
self.lon: float = lon
|
2025-02-11 16:45:32 -05:00
|
|
|
self.lat: float = lat
|
2025-02-10 20:05:00 -05:00
|
|
|
|
|
|
|
def __str__(self):
|
2025-02-11 16:45:32 -05:00
|
|
|
return '%f, %f' % (self.lon, self.lat)
|
2025-02-14 16:20:27 -05:00
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def from_wkt(wkt: str):
|
|
|
|
try:
|
|
|
|
point = shapely.from_wkt(wkt)
|
|
|
|
|
|
|
|
return Coord(point.x, point.y)
|
|
|
|
except:
|
|
|
|
return None
|