1

Update My question is a duplicate of Extracting centerline of a Complex-Polygon in PostGIS/Python (though if anyone has a programmatic solution - that is, not ArcGIS but rather Py, C, Java, etc. - I would be interested).

Let's say I have shape such as the below: enter image description here

From this shape, I want to perform a negative buffer that produces the following: enter image description here

The rough idea was to perform a negative buffer that exceeded the diameter of the geometry at any given point. This does not work, though, and leads to an empty geometry.

How might I perform a geometric operation on a shape so as to impute its centermost points? Is some form of negative buffering a reasonable approach? Or, is there a more well-word path to achieving the spline of such geometries?

3
  • 1
    check this function out postgis.net/docs/ST_ApproximateMedialAxis.html you will have to enable or create the SFCGAL extension to use it
    – ziggy
    Aug 14, 2017 at 18:23
  • Awesome - thanks much! Any chance someone's already done the heavy lifting on implementing this in vanilla Python (aware it will be slower). Either way, this is the solution!
    – kuanb
    Aug 14, 2017 at 18:46
  • i think the function comes from this library sfcgal.org
    – ziggy
    Aug 15, 2017 at 13:12

1 Answer 1

2

As commented by @ziggy:

check this function out https://postgis.net/docs/ST_ApproximateMedialAxis.html you will have to enable or create the SFCGAL extension to use it

and

i think the function comes from this library http://sfcgal.org/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.