Skip To Content

Minimum Bounding Volume

Summary

Creates multipatch features that represent the volume of space occupied by a set of 3D features.

Usage

  • The Sphere or Envelope methods (geometry_type="SPHERE" or geometry_type = "ENVELOPE" in Python) provide a quick representation of the volume of space occupied by a set of 3D features.

  • The Convex hull option (geometry_type="CONVEX_HULL" in Python) provides greater detail than the Sphere or Envelope methods, but will not capture local depressions in the input features.

  • The Concave hull option (geometry_type="CONCAVE_HULL" in Python) provides the greatest amount of detail about the shape of the bounding volume, but is computationally heavy and should not be used with large collections of input data.

Syntax

MinimumBoundingVolume_3d (in_features, {z_value}, out_feature_class, {geometry_type}, {group}, {group_field}, {mbv_fields})
ParameterExplanationData Type
in_features

The LAS dataset or 3D features whose minimum bounding volume will be evaluated.

LAS Dataset Layer; Feature Layer
z_value
(Optional)

The source of Z values for the input data.

Field
out_feature_class

The feature class that will be produced by this tool.

Feature Class
geometry_type
(Optional)

The method used to determine the geometry of the minimum bounding volume.

  • CONVEX_HULLThe smallest convex region surrounding the input data.
  • SPHEREThe smallest sphere enclosing the input data.
  • ENVELOPEThe XYZ extent of an input data.
  • CONCAVE_HULLThe concave hull that encloses the input data.
String
group
(Optional)

Specifies how the input features will be grouped; each group will be enclosed with one output multipatch.

  • NONEInput features will not be grouped. This is the default. This option is not available for point input.
  • ALLAll input features will be treated as one group.
  • LISTInput features will be grouped based on their common values in the specified field or fields in the group field parameter.
String
group_field
[group_field,...]
(Optional)

The field or fields in the input features that will be used to group features, when LIST is specified as group_option. At least one group field is required for the LIST option. All features that have the same value in the specified field or fields will be treated as a group.

Field
mbv_fields
(Optional)

Determines whether to add the geometric attributes in the output multipatch feature class or to omit them.

  • NO_MBV_FIELDSThe geometric attributes are not added to the output feature. This is the default.
  • MBV_FIELDSThe geometric attributes are added to the output feature.
Boolean

Code sample

MinimumBoundingVolume example 1 (Python window)

The following sample demonstrates the use of this tool in the Python window.

arcpy.env.workspace = 'C:/data'
arcpy.ddd.MinimumBoundingVolume('tree_canopy.shp', 'Shape.Z', 
                                'canopy_volume.shp', 'CONCAVE_HULL',
                                group='List', group_field='Season'
                                mbv_fields='MBV_FIELDS')
MinimumBoundingVolume example 2 (stand-alone script)

The following sample demonstrates the use of this tool in a stand-alone Python script.

'''****************************************************************************
Name: Detect Periods of Activity
Description: 
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_features = arcpy.GetParameterAsText(0)
out_volume = arcpy.GetParameterAsText(1)
grouping_field = arcpy.GetParameterAsText(2)


try:
    arcpy.MinimumBoundingVolume_3d(in_features, 'Shape.Z', out_volume, 
                                   'CONCAVE_HULL','LIST', group_field)

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

Licensing information

  • ArcGIS Desktop Basic: Requires 3D Analyst
  • ArcGIS Desktop Standard: Requires 3D Analyst
  • ArcGIS Desktop Advanced: Requires 3D Analyst

Related topics