This document is archived and information here might be outdated.  Recommended version.


ITinSurface3.GetVolumeAndArea Method (ArcObjects .NET 10.8 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Geodatabase > ESRI.ArcGIS.GeoDatabase > Interfaces > IT > ITinSurface3 Interface > ITinSurface3.GetVolumeAndArea Method
ArcGIS Developer Help

ITinSurface3.GetVolumeAndArea Method

Returns TIN's volume/area above or below an input z value.

[Visual Basic .NET]
Public Sub GetVolumeAndArea ( _
    ByVal pAOI As IGeometry, _
    ByVal referenceHeight As Double, _
    ByVal Type As esriPlaneReferenceType, _
    ByRef pbIsOutsideDataArea As Boolean, _
    [ByRef pVolume As Object], _
    [ByRef pSurfaceArea As Object], _
    [ByRef pProjectedArea As Object] _
)
[C#]
public void GetVolumeAndArea (
    IGeometry pAOI,
    double referenceHeight,
    esriPlaneReferenceType Type,
    ref bool pbIsOutsideDataArea,
    ref object pVolume,
    ref object pSurfaceArea,
    ref object pProjectedArea
);
[C++]
HRESULT GetVolumeAndArea(
  IGeometry* pAOI,
  double referenceHeight,
  esriPlaneReferenceType Type,
  Boolean* pbIsOutsideDataArea,
  Variant* pVolume,
  Variant* pSurfaceArea,
  Variant* pProjectedArea
);
[C++]
Parameters
pAOI [in]

pAOI is a parameter of type IGeometry* referenceHeight [in]
referenceHeight is a parameter of type double Type [in]
Type is a parameter of type esriPlaneReferenceType pbIsOutsideDataArea [out]
pbIsOutsideDataArea is a parameter of type bool* pVolume
pVolume is a parameter of type VARIANT* pSurfaceArea
pSurfaceArea is a parameter of type VARIANT* pProjectedArea
pProjectedArea is a parameter of type VARIANT*

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Description

Calculates volume, area, and surface area from the TIN. Volume is the cubic area between a reference plane and the TIN. The area values are based on the portions of the TIN which are above or below a reference plane. Surface area is measured along the slope of a surface and is therefore greater than the 2D, projected area.

pAOI is the area of interest. It can be NULL, an envelope, or a polygon. If it's NULL the calculation will be based on the entire data area of the TIN. For envelopes and polygons the calculation is constrained to be inside their extent.

referenceHeight is a double that indicates the height of a horizontal plane from which calculations will be based.

esriReferencePlaneType controls on which side of the reference plane the calculation is made. If you choose to calculate volume above the plane, the cubic area of consideration is that which is above the plane and the underside of the surface. If you choose below the plane the area of consideration is below the plane and the topside of the surface. If you choose to calculate one of the area properties the returned values will be based on the those portions of the TIN which are above or below the reference plane.

pTrackCancel is a reference to a CancelTracker to support progress reporting and the ability to halt the process. To bypass this feature pass a NULL pointer.

pblsOutsideDataArea is an output boolean that will be set to TRUE if pAOI falls outside the horizontal data extent of the TIN. If TRUE the resulting volume and area are really NoData even though they will be set to 0.0. Note, it's possible for those values to be 0.0 when pAOI is inside the TIN and these are valid results. This parameter is used to distinguish between the two cases.

pVolume, pSurfaceArea, and pProjectedArea are output results. These are optional. If you're not interested in one of these parameters don't specify it and time will not be spent in its calculation.

 

Notes:

The TIN must not be in edit mode when calling this method. An error will be returned if it is.

See Also

ITinSurface3 Interface