auto fix geometry with buffer(0)
Browse files
app.py
CHANGED
@@ -103,8 +103,8 @@ def shape_3d_to_2d(shape):
|
|
103 |
|
104 |
def preprocess_gdf(gdf):
|
105 |
gdf = gdf.to_crs(epsg=7761) # epsg for Gujarat
|
106 |
-
|
107 |
gdf["geometry"] = gdf["geometry"].apply(shape_3d_to_2d)
|
|
|
108 |
return gdf
|
109 |
|
110 |
|
@@ -342,7 +342,9 @@ if isinstance(file_url, str):
|
|
342 |
buffer = st.number_input("Buffer (m)", value=50, min_value=0, step=1)
|
343 |
|
344 |
input_gdf = preprocess_gdf(gpd.read_file(file_url))
|
345 |
-
|
|
|
|
|
346 |
|
347 |
# Input: Geometry
|
348 |
def format_fn(x):
|
|
|
103 |
|
104 |
def preprocess_gdf(gdf):
|
105 |
gdf = gdf.to_crs(epsg=7761) # epsg for Gujarat
|
|
|
106 |
gdf["geometry"] = gdf["geometry"].apply(shape_3d_to_2d)
|
107 |
+
gdf["geometry"] = gdf.buffer(0) # Fixes some invalid geometries
|
108 |
return gdf
|
109 |
|
110 |
|
|
|
342 |
buffer = st.number_input("Buffer (m)", value=50, min_value=0, step=1)
|
343 |
|
344 |
input_gdf = preprocess_gdf(gpd.read_file(file_url))
|
345 |
+
# print(input_gdf.is_valid)
|
346 |
+
# print(gpd.read_file(file_url).is_valid)
|
347 |
+
# print(input_gdf.iloc[0].geometry.__geo_interface__)
|
348 |
|
349 |
# Input: Geometry
|
350 |
def format_fn(x):
|