I've been searching for a function to make the Convex Hull of a Spatial Object with N points, to make an spatial approximation with n-corners, as shown in the article "Comparison of Approximations of Complex Objects Used for Approximation-based Query Processing in Spatial Database Systems", by Thomas Brinkhoff, Hans-Peter Kriegel and Ralf Schneider. I haven't found any function to make this, I searched for any GEOS function but didn't find. Does anybody know what can I use for it?

  • 3
    After reading the article, I don't believe there is a function that provides the functionality that you want. Am I correct in thinking you are refering to the minimum bounding N corner refered to in section 2.4? – MickyT Dec 5 '16 at 21:56
  • GEOS has an implementation of Convex Hull, which uses the Graham Scan algorithm.. CH rather than n-C according in the section @MickyT refers to – Steven Kay Dec 5 '16 at 22:19
  • CGAL may be worth looking into as well. I didn't find anything specific in there, but I only gave it a cursory glance. – MickyT Dec 5 '16 at 22:58
  • @MickyT Yes, the question is refering to the minimum bounding N corner. It is a convex hull with a fixed set of points (like 5, or 7). We have looked into CGAL library but without success. – Anderson Carniel Dec 11 '16 at 22:17
  • @AndersonCarniel You might find something on the math stack, the trick is knowing what to search for. This looked hopeful, but I don't have time to investigate further into it at the moment. math SE question that sort of led me to this. Still not quite what you want I think, but could get you there. – MickyT Dec 11 '16 at 22:45


It is often used to determine an affected area based on a set of point observations.

Also worth nothing,

It is usually used with MULTI and Geometry Collections. Although it is not an aggregate - you can use it in conjunction with ST_Collect to get the convex hull of a set of points. ST_ConvexHull(ST_Collect(somepointfield)).

So run inputs to ST_Collect first if you're using it as an aggregate.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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