14

I would like to be able to create a convex hull in ArcGIS Desktop 9.x, but I cannot find an appropriate tool.

How does one go about creating one?

I am interested in answers for all license levels: ArcView, ArcEditor and ArcInfo.

  • 1
    There is a convex hull option in the qgis 1.7.4 geoprocessing tools that appears to do exactly the same thing as the tool in Arcgis 10 with the convex hull and group options – user7905 May 31 '12 at 14:02
5

I've used Hawth's Tools "Create Minimum Convex Polygons" under the Animal Movements menu. You can use a feature selection within ArcMap.

  • Nice. This seems to be the most broadly applicable answer. Here's a link to a description of this tool: spatialecology.com/htools/createmcp.php – Charles Roper Jul 22 '10 at 19:46
  • I found this only for point features. If you have polygon or line then it fails. – SIslam Dec 26 '14 at 6:28
14

At version 10, there is now a Minimum Bounding Geometry (Data Management) geoprocessing tool which:

Creates a feature class containing polygons which represent a specified minimum bounding geometry enclosing each input feature or each group of input features.

However:

The Geometry Type (geometry_type) options CONVEX_HULL, CIRCLE, and ENVELOPE are only available with an ArcInfo license.

  • 1
    Wow, the new Minimum Bounding Geometry tool looks excellent. Unfortunately, CONVEX_HULL, CIRCLE, and ENVELOPE are only available with an ArcInfo license. More info: help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//… – Charles Roper Aug 4 '10 at 15:03
  • 5
    in version 10, see resources.arcgis.com/gallery/file/geoprocessing/… which produces all regardless of license level – user681 Jan 24 '11 at 20:06
  • @DanPatterson Esri's recent site cleanup has broken your link - do you know the new URL? What was the name of the tool/script? – Stephen Lead Jan 18 '15 at 22:18
  • The site appears to be in a state of flux...I will have to check on migrations within Geonet since I know they are ongoing. I will update when I find out... – user681 Jan 18 '15 at 23:16
3

There is such a tool.

Open ArcToolbox > Cartography > Masking > Feature Outline Masks

  • That's for ArcInfo only. I've updated the question slightly to better help ArcView and ArcEditor users. – Charles Roper Jul 22 '10 at 19:33
  • That is true. :P – George Silva Jul 22 '10 at 19:45
3

Old question, but since appears quite high when searching for "convex hull arcgis", thought I'd add the Create Convex Hulls Geoprocessing Sample.

This uses the geometry convexhull() method (requires 10.1 or above, tested in 10.2). Works fine in ArcGIS basic, the code in the (python) toolbox is also a good reference for using this method elsewhere.

2

In ArcGIS, you use Minimum bounding geometry tool in ArcToolBox

Minimum bounding geometry or hull polygon

it's here for you: https://www.youtube.com/watch?v=7CkbEbmz08w

1

This an old arcscript that worked well http://arcscripts.esri.com/details.asp?dbid=12084 (ignore 0k filesize error on arcscripts it is 359kb) creates the convex hull of a set of points or or the convex envelope (minimum bounding box) of a set of points

Note:uses VBA but works in arcview, arceditor arc/info.

1

As the accepted answer to this question refers to Hawth's tools, which is now superseded, I decided to post this it's successor, Geospatial Modelling Environment.

The command genmcp (Generate Minimum Convex Polygons) will do the job. The tool accepts a point input and optional unique identifier and outputs polygons. A where clause can be specified to identify a subset of the input features.

NB, GME has some dependencies: ArcGIS and R most importantly.

1

Starting with ArcGIS 10, arcpy.geometry class has a read-only property hullRectangle which will return a space-delimited string of the coordinate pairs of the convex hull rectangle.

You can easily iterate through every feature creating convex hulls and then preserving them as needed. This is available in all license levels.

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.hullRectangle

Output:

u'1592326,2415 7543305,0318 1592303,39647295 7543680,88044691 1594546,11624981 7543817,19860157 1594568,96127687 7543441,34995466'

Starting with ArcGIS 10.1, there is a method convexHull() for returning a geometry object directly:

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.convexHull()
arcpy.CopyFeatures_management(c,'outhull')

An example of a convex hull for a polyline feature:

enter image description here

Reference links:

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.