|
|
|
@@ -21,24 +21,27 @@ if config["mode"] == "bounding-boxes": |
|
|
|
CMD = """\ |
|
|
|
mapshaper -i {7} \ |
|
|
|
-rectangle bbox={0},{1},{2},{3} name=rect \ |
|
|
|
-clip rect target=ne_10m_land \ |
|
|
|
-proj crs="+proj=nsper +h=10000000 +lon_0={4} +lat_0={5}" target=ne_10m_land,rect \ |
|
|
|
-clip rect target={8} \ |
|
|
|
-proj crs="+proj=nsper +h=10000000 +lon_0={4} +lat_0={5}" target={8},rect \ |
|
|
|
-each 'console.log(this.bounds.concat([this.area]))' target=rect \ |
|
|
|
-o "{6}" target=ne_10m_land |
|
|
|
-o "{6}" target={8} |
|
|
|
""" |
|
|
|
|
|
|
|
prepared = CMD.format(lon0, lat0, lon1, lat1, center_lon, center_lat, path, config["shapefile"]) |
|
|
|
result = subprocess.check_output( |
|
|
|
prepared, |
|
|
|
shell=True |
|
|
|
) |
|
|
|
try: |
|
|
|
prepared = CMD.format(lon0, lat0, lon1, lat1, center_lon, center_lat, path, config["shapefile"], config["layer"]) |
|
|
|
result = subprocess.check_output( |
|
|
|
prepared, |
|
|
|
shell=True |
|
|
|
) |
|
|
|
|
|
|
|
data = json.loads(result.decode("utf-8")) |
|
|
|
data = json.loads(result.decode("utf-8")) |
|
|
|
|
|
|
|
height = data[3] - data[1] |
|
|
|
area = data[4] |
|
|
|
height = data[3] - data[1] |
|
|
|
area = data[4] |
|
|
|
|
|
|
|
results.append([item["name"], area, height]) |
|
|
|
results.append([item["name"], area, height]) |
|
|
|
except: |
|
|
|
print(result.decode("utf-8")) |
|
|
|
|
|
|
|
print(json.dumps(results)) |
|
|
|
elif config["mode"] == "filter": |
|
|
|
|