building-boundary
building-boundary copied to clipboard
Small fixes to run this code in 2023
I don't know if the code is still maintained but here are several small fixes I introduced to try and run it without CGAL bindings. Putting them here if it can help.
As the libraries versions are not fixed, I stumbled upon compatibilities issues with newer versions of them.
- Numpy has deprecated
np.bool
since1.24.0
. I replaced it withbool
as it seemsnp.bool
was only an alias on Pythonbool
type - Shapely MultiPolygons need to be accessed through
.geoms
to iterate over them - Shapely
cascaded_union
is deprecated and will soon be replaced byunary_union
I also added two checks to prevent what seem to me as unnecessary breaking exceptions:
- In
compute_shape()
infit.py
I noticed that when @Geodan/concave-hull returns an invalid polygon (it does happen from time to time) the union will break. Added a check to prevent merging alpha shape geometry with invalid concave-hull geometry - In
triangle_geometry()
inalpha_shape.py
I encountered some cases wheresqrt()
had to deal with a very small negative number. I added atry: ... except ValueError: ...
around it and initialized the area value to0