com.esri.arcgis.datasourcesraster
Class Mensuration

java.lang.Object
  extended by com.esri.arcgis.datasourcesraster.Mensuration
All Implemented Interfaces:
IMensuration, IMensuration3D, com.esri.arcgis.interop.RemoteObjRef, ISupportErrorInfo, Serializable

public class Mensuration
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IMensuration, IMensuration3D, ISupportErrorInfo

Implenments interface IMensuration to provide commercial basic mensuration services for the Esri Mensuration System.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
Mensuration()
          Constructs a Mensuration using ArcGIS Engine.
Mensuration(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
Mensuration theMensuration = (Mensuration) obj;
 
Method Summary
 void convertAngular(int fromUnit, int toUnit, double inputValue, double[] pOutputValue)
          Converts angular measurement from 'fromUnit' to 'toUnit.
 void convertArea(int fromUnit, int toUnit, double inputValue, double[] pOutputValue)
          Converts area measurement from 'fromUnit' to 'toUnit.
 String convertDisplayCoordUnit(int desiredDisplayUnit, IPoint pGeographicPt)
          Gets different coordinate unit display representation for input point (latitude, longitude).
 void convertErrCovarianceUnits(int inHorizAngularUnit, int outHorizAngularUnit, int inHorizLinearUnit, int outHorizLinearUnit, int inVertUnit, int outVertUnit, int horizontalUnitType, IDoubleArray pCovariance)
          Converts the covariance matrix's units.
 void convertLinear(int fromUnit, int toUnit, double inputValue, double[] pOutputValue)
          Converts linear measurement from 'fromUnit' to 'toUnit.
 boolean equals(Object o)
          Compare this object with another
 void getAngle3D(IPoint pFirstPoint, IPoint pSecondPoint, IAngularMeasurement[] ppAzimuthAngle, IAngularMeasurement[] ppElevationAngle)
          Computes the 3D angle of the line connecting the two input 2D map points.
 void getAreaAndPerimeter(IPolygon pPolygon, IPolygonMeasurement[] ppPolygonMeasurement)
          Computes the area and perimeter of a polygon with no interior holes.
 void getAreaAndPerimeter3D(IPolygon pPolygon, IPolygonMeasurement[] ppPolygonMeasurement)
          Computes the 3D area and perimeter of a 2D polygon with no interior holes.
 void getAzimuthAngle(IPoint pFirstPoint, IPoint pSecondPoint, IAngularMeasurement[] ppAngleMeasurement)
          Computes the azimuth angle of the line connecting the two input map points.
 void getCentroid(IPolygon pPolygon, IPointMeasurement[] ppPointMeasurement)
          Gets the coordinates of the centroid of a polygon and the associated error covariance matrix.
 void getCentroid3D(IPolygon pPolygon, IPointMeasurement[] ppPointMeasurement)
          Computes the 3D centroid of a 2D polygon with no interior holes..
static String getClsid()
          getClsid.
 IDoubleArray getDefaultPointingErrCovariance()
          Default pointing error covariance matrix.
 IRaster getDEM()
          The DEM for the raster to be used for mensuration.
 double getDesiredPrecision()
          The iteration precision of the image-to-ground and ground-to-image calculations.
 void getDistance(IPoint pFirstPoint, IPoint pSecondPoint, IDistanceMeasurement[] ppDistMeasurement)
          Computes the actual distance between two points given their map points.
 void getDistance3D(IPoint pFirstPoint, IPoint pSecondPoint, IDistanceMeasurement[] ppDistMeasurement)
          Computes the 3D actual distance between two points given their 2D map points.
 void getHeightFromBaseAndTop(IPoint pBaseOfObject, IPoint pTopOfObject, IHeightMeasurement[] ppHtMeasurement)
          Estimates the height of an object given the base and the top map points of the object.
 void getHeightFromBaseAndTopShadow(IPoint pBaseOfObject, IPoint pTopShadowOfObject, IHeightMeasurement[] ppHtMeasurement)
          Estimates the height of an object given the map point of the object's base and the tip of the object's top shadow.
 void getHeightFromTopAndTopShadow(IPoint pTopOfObject, IPoint pTopShadowOfObject, IHeightMeasurement[] ppHtMeasurement)
          Estimates the height of an object given the top map point of the object and the tip of the object's top shadow.
 String getName()
          The name of this IMensuration object.
 void getPoint(IPoint pPoint, IPointMeasurement[] ppPointMeasurement)
          Gets the coordinates of a map point and the associated error covariance matrix.
 void getPoint3D(IPoint pInPoint, IPointMeasurement[] ppPointMeasurement)
          Computes a 3D point given a 2D map points.
 String getSensorModel()
          The name of the sensor model currently being used by this IMensuration object.
 IPropertySet getSensorModelProperties()
          The properties of the current sensor model.
 Object getSensorModelProperty(String propertyName)
          Gets a property value of the sensor model currently being used by this IMensuration.
 String getTMName()
          The name of the TerrainModel used by this IMensuration object.
 String getVersion()
          The version of this IMensuration.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 boolean isCanErrorPropagate()
          Indicates if the sensor model associated with the current image segment supports error propagation.
 boolean isCanMeasure()
          Indicates if the specified image segment can be used for mensuration.
 boolean isCanMeasure3D()
          Indicates if 3D mensuration is supported.
 boolean isCanMeasureHeightBaseToTop()
          Indicates if the sensor model associated with the current image segment supports height mensuration.
 boolean isCanMeasureHeightBaseToTopShadow()
          Indicates if the sensor model associated with the current image segment supports shadow mensuration.
 boolean isCanMeasureHeightTopToTopShadow()
          Indicates if the sensor model associated with the current image segment supports shadow mensuration.
 boolean isCanMeasureMonoscopic()
          Indicates if the sensor model associated with the current image segment supports monoscopic mensuration.
 boolean isCanMeasureMultiImages()
          Indicates if the sensor model associated with the current image segment supports multi-image mensuration.
 boolean isCanMeasureStereoscopic()
          Indicates if the sensor model associated with the current image segment supports stereoscopic mensuration.
 boolean isValid()
          Indicates if all the required system parameters and resources of this IMensuration have been successfully initialized.
 void putSensorModelProperty(String propertyKey, String propertyValue)
          Sets a property value of the sensor model.
 void putTerrainParameters(String terrainModelDataSrc, String terrainModelName)
          Sets the name of the terrain model and the associated terrain model data source information.
 void setDefaultPointingErrCovariance(IDoubleArray ppPointingErrCovMatrix)
          Default pointing error covariance matrix.
 void setDEMByRef(IRaster ppRaster)
          The DEM for the raster to be used for mensuration.
 void setDesiredPrecision(double pPrecision)
          The iteration precision of the image-to-ground and ground-to-image calculations.
 void setRasterByRef(IRaster rhs1)
          The raster object to be used for mensuration.
 void significantFigures(double measurementValue, double uncertainty, String[] pMeasurement, String[] pUncertainty)
          Truncates input mensuration and uncertainty values based on acceptable rules for reporting measurement and uncertianty values.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

Mensuration

public Mensuration()
            throws IOException,
                   UnknownHostException
Constructs a Mensuration using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

Mensuration

public Mensuration(Object obj)
            throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
Mensuration theMensuration = (Mensuration) obj;

Construct a Mensuration using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to Mensuration.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

isCanErrorPropagate

public boolean isCanErrorPropagate()
                            throws IOException,
                                   AutomationException
Indicates if the sensor model associated with the current image segment supports error propagation.

Product Availability

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

Specified by:
isCanErrorPropagate in interface IMensuration
Returns:
The pErrorPropagationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasure

public boolean isCanMeasure()
                     throws IOException,
                            AutomationException
Indicates if the specified image segment can be used for mensuration.

Product Availability

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

Specified by:
isCanMeasure in interface IMensuration
Returns:
The pMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureHeightBaseToTop

public boolean isCanMeasureHeightBaseToTop()
                                    throws IOException,
                                           AutomationException
Indicates if the sensor model associated with the current image segment supports height mensuration.

Product Availability

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

Specified by:
isCanMeasureHeightBaseToTop in interface IMensuration
Returns:
The pHeightMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureMonoscopic

public boolean isCanMeasureMonoscopic()
                               throws IOException,
                                      AutomationException
Indicates if the sensor model associated with the current image segment supports monoscopic mensuration.

Product Availability

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

Specified by:
isCanMeasureMonoscopic in interface IMensuration
Returns:
The pMonoscopicMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureMultiImages

public boolean isCanMeasureMultiImages()
                                throws IOException,
                                       AutomationException
Indicates if the sensor model associated with the current image segment supports multi-image mensuration.

Product Availability

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

Specified by:
isCanMeasureMultiImages in interface IMensuration
Returns:
The pMultiImageMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureHeightTopToTopShadow

public boolean isCanMeasureHeightTopToTopShadow()
                                         throws IOException,
                                                AutomationException
Indicates if the sensor model associated with the current image segment supports shadow mensuration.

Product Availability

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

Specified by:
isCanMeasureHeightTopToTopShadow in interface IMensuration
Returns:
The pShadowMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureHeightBaseToTopShadow

public boolean isCanMeasureHeightBaseToTopShadow()
                                          throws IOException,
                                                 AutomationException
Indicates if the sensor model associated with the current image segment supports shadow mensuration.

Product Availability

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

Specified by:
isCanMeasureHeightBaseToTopShadow in interface IMensuration
Returns:
The pShadowMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasureStereoscopic

public boolean isCanMeasureStereoscopic()
                                 throws IOException,
                                        AutomationException
Indicates if the sensor model associated with the current image segment supports stereoscopic mensuration.

Product Availability

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

Specified by:
isCanMeasureStereoscopic in interface IMensuration
Returns:
The pStereoscopicMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertAngular

public void convertAngular(int fromUnit,
                           int toUnit,
                           double inputValue,
                           double[] pOutputValue)
                    throws IOException,
                           AutomationException
Converts angular measurement from 'fromUnit' to 'toUnit.

Product Availability

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

Specified by:
convertAngular in interface IMensuration
Parameters:
fromUnit - A com.esri.arcgis.system.esriDirectionUnits constant (in)
toUnit - A com.esri.arcgis.system.esriDirectionUnits constant (in)
inputValue - The inputValue (in)
pOutputValue - The pOutputValue (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertArea

public void convertArea(int fromUnit,
                        int toUnit,
                        double inputValue,
                        double[] pOutputValue)
                 throws IOException,
                        AutomationException
Converts area measurement from 'fromUnit' to 'toUnit.

Product Availability

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

Specified by:
convertArea in interface IMensuration
Parameters:
fromUnit - A com.esri.arcgis.system.esriAreaUnits constant (in)
toUnit - A com.esri.arcgis.system.esriAreaUnits constant (in)
inputValue - The inputValue (in)
pOutputValue - The pOutputValue (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertDisplayCoordUnit

public String convertDisplayCoordUnit(int desiredDisplayUnit,
                                      IPoint pGeographicPt)
                               throws IOException,
                                      AutomationException
Gets different coordinate unit display representation for input point (latitude, longitude).

Product Availability

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

Specified by:
convertDisplayCoordUnit in interface IMensuration
Parameters:
desiredDisplayUnit - A com.esri.arcgis.datasourcesraster.esriDisplayCoordUnitType constant (in)
pGeographicPt - A reference to a com.esri.arcgis.geometry.IPoint (in)
Returns:
The pDisplayUnit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertLinear

public void convertLinear(int fromUnit,
                          int toUnit,
                          double inputValue,
                          double[] pOutputValue)
                   throws IOException,
                          AutomationException
Converts linear measurement from 'fromUnit' to 'toUnit.

Product Availability

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

Specified by:
convertLinear in interface IMensuration
Parameters:
fromUnit - A com.esri.arcgis.system.esriUnits constant (in)
toUnit - A com.esri.arcgis.system.esriUnits constant (in)
inputValue - The inputValue (in)
pOutputValue - The pOutputValue (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertErrCovarianceUnits

public void convertErrCovarianceUnits(int inHorizAngularUnit,
                                      int outHorizAngularUnit,
                                      int inHorizLinearUnit,
                                      int outHorizLinearUnit,
                                      int inVertUnit,
                                      int outVertUnit,
                                      int horizontalUnitType,
                                      IDoubleArray pCovariance)
                               throws IOException,
                                      AutomationException
Converts the covariance matrix's units.

Product Availability

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

Specified by:
convertErrCovarianceUnits in interface IMensuration
Parameters:
inHorizAngularUnit - A com.esri.arcgis.system.esriDirectionUnits constant (in)
outHorizAngularUnit - A com.esri.arcgis.system.esriDirectionUnits constant (in)
inHorizLinearUnit - A com.esri.arcgis.system.esriUnits constant (in)
outHorizLinearUnit - A com.esri.arcgis.system.esriUnits constant (in)
inVertUnit - A com.esri.arcgis.system.esriUnits constant (in)
outVertUnit - A com.esri.arcgis.system.esriUnits constant (in)
horizontalUnitType - The horizontalUnitType (in)
pCovariance - A reference to a com.esri.arcgis.system.IDoubleArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultPointingErrCovariance

public IDoubleArray getDefaultPointingErrCovariance()
                                             throws IOException,
                                                    AutomationException
Default pointing error covariance matrix.

Product Availability

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

Specified by:
getDefaultPointingErrCovariance in interface IMensuration
Returns:
A reference to a com.esri.arcgis.system.IDoubleArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultPointingErrCovariance

public void setDefaultPointingErrCovariance(IDoubleArray ppPointingErrCovMatrix)
                                     throws IOException,
                                            AutomationException
Default pointing error covariance matrix.

Product Availability

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

Specified by:
setDefaultPointingErrCovariance in interface IMensuration
Parameters:
ppPointingErrCovMatrix - A reference to a com.esri.arcgis.system.IDoubleArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDEM

public IRaster getDEM()
               throws IOException,
                      AutomationException
The DEM for the raster to be used for mensuration.

Product Availability

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

Specified by:
getDEM in interface IMensuration
Returns:
A reference to a com.esri.arcgis.geodatabase.IRaster
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDEMByRef

public void setDEMByRef(IRaster ppRaster)
                 throws IOException,
                        AutomationException
The DEM for the raster to be used for mensuration.

Product Availability

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

Specified by:
setDEMByRef in interface IMensuration
Parameters:
ppRaster - A reference to a com.esri.arcgis.geodatabase.IRaster (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDesiredPrecision

public double getDesiredPrecision()
                           throws IOException,
                                  AutomationException
The iteration precision of the image-to-ground and ground-to-image calculations.

Product Availability

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

Specified by:
getDesiredPrecision in interface IMensuration
Returns:
The pPrecision
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDesiredPrecision

public void setDesiredPrecision(double pPrecision)
                         throws IOException,
                                AutomationException
The iteration precision of the image-to-ground and ground-to-image calculations.

Product Availability

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

Specified by:
setDesiredPrecision in interface IMensuration
Parameters:
pPrecision - The pPrecision (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAreaAndPerimeter

public void getAreaAndPerimeter(IPolygon pPolygon,
                                IPolygonMeasurement[] ppPolygonMeasurement)
                         throws IOException,
                                AutomationException
Computes the area and perimeter of a polygon with no interior holes.

Product Availability

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

Specified by:
getAreaAndPerimeter in interface IMensuration
Parameters:
pPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
ppPolygonMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPolygonMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAzimuthAngle

public void getAzimuthAngle(IPoint pFirstPoint,
                            IPoint pSecondPoint,
                            IAngularMeasurement[] ppAngleMeasurement)
                     throws IOException,
                            AutomationException
Computes the azimuth angle of the line connecting the two input map points.

Product Availability

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

Specified by:
getAzimuthAngle in interface IMensuration
Parameters:
pFirstPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
pSecondPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppAngleMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IAngularMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentroid

public void getCentroid(IPolygon pPolygon,
                        IPointMeasurement[] ppPointMeasurement)
                 throws IOException,
                        AutomationException
Gets the coordinates of the centroid of a polygon and the associated error covariance matrix.

Product Availability

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

Specified by:
getCentroid in interface IMensuration
Parameters:
pPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
ppPointMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPointMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDistance

public void getDistance(IPoint pFirstPoint,
                        IPoint pSecondPoint,
                        IDistanceMeasurement[] ppDistMeasurement)
                 throws IOException,
                        AutomationException
Computes the actual distance between two points given their map points.

Product Availability

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

Specified by:
getDistance in interface IMensuration
Parameters:
pFirstPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
pSecondPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppDistMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IDistanceMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHeightFromBaseAndTop

public void getHeightFromBaseAndTop(IPoint pBaseOfObject,
                                    IPoint pTopOfObject,
                                    IHeightMeasurement[] ppHtMeasurement)
                             throws IOException,
                                    AutomationException
Estimates the height of an object given the base and the top map points of the object.

Product Availability

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

Specified by:
getHeightFromBaseAndTop in interface IMensuration
Parameters:
pBaseOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
pTopOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppHtMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IHeightMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHeightFromBaseAndTopShadow

public void getHeightFromBaseAndTopShadow(IPoint pBaseOfObject,
                                          IPoint pTopShadowOfObject,
                                          IHeightMeasurement[] ppHtMeasurement)
                                   throws IOException,
                                          AutomationException
Estimates the height of an object given the map point of the object's base and the tip of the object's top shadow.

Product Availability

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

Specified by:
getHeightFromBaseAndTopShadow in interface IMensuration
Parameters:
pBaseOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
pTopShadowOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppHtMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IHeightMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHeightFromTopAndTopShadow

public void getHeightFromTopAndTopShadow(IPoint pTopOfObject,
                                         IPoint pTopShadowOfObject,
                                         IHeightMeasurement[] ppHtMeasurement)
                                  throws IOException,
                                         AutomationException
Estimates the height of an object given the top map point of the object and the tip of the object's top shadow.

Product Availability

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

Specified by:
getHeightFromTopAndTopShadow in interface IMensuration
Parameters:
pTopOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
pTopShadowOfObject - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppHtMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IHeightMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPoint

public void getPoint(IPoint pPoint,
                     IPointMeasurement[] ppPointMeasurement)
              throws IOException,
                     AutomationException
Gets the coordinates of a map point and the associated error covariance matrix.

Product Availability

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

Specified by:
getPoint in interface IMensuration
Parameters:
pPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppPointMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPointMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSensorModelProperty

public Object getSensorModelProperty(String propertyName)
                              throws IOException,
                                     AutomationException
Gets a property value of the sensor model currently being used by this IMensuration.

Product Availability

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

Specified by:
getSensorModelProperty in interface IMensuration
Parameters:
propertyName - The propertyName (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
The name of this IMensuration object.

Product Availability

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

Specified by:
getName in interface IMensuration
Returns:
The pName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putSensorModelProperty

public void putSensorModelProperty(String propertyKey,
                                   String propertyValue)
                            throws IOException,
                                   AutomationException
Sets a property value of the sensor model.

Product Availability

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

Specified by:
putSensorModelProperty in interface IMensuration
Parameters:
propertyKey - The propertyKey (in)
propertyValue - The propertyValue (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putTerrainParameters

public void putTerrainParameters(String terrainModelDataSrc,
                                 String terrainModelName)
                          throws IOException,
                                 AutomationException
Sets the name of the terrain model and the associated terrain model data source information.

Product Availability

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

Specified by:
putTerrainParameters in interface IMensuration
Parameters:
terrainModelDataSrc - The terrainModelDataSrc (in)
terrainModelName - The terrainModelName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRasterByRef

public void setRasterByRef(IRaster rhs1)
                    throws IOException,
                           AutomationException
The raster object to be used for mensuration.

Product Availability

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

Specified by:
setRasterByRef in interface IMensuration
Parameters:
rhs1 - A reference to a com.esri.arcgis.geodatabase.IRaster (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSensorModel

public String getSensorModel()
                      throws IOException,
                             AutomationException
The name of the sensor model currently being used by this IMensuration object.

Product Availability

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

Specified by:
getSensorModel in interface IMensuration
Returns:
The pSensorModelName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSensorModelProperties

public IPropertySet getSensorModelProperties()
                                      throws IOException,
                                             AutomationException
The properties of the current sensor model.

Product Availability

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

Specified by:
getSensorModelProperties in interface IMensuration
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

significantFigures

public void significantFigures(double measurementValue,
                               double uncertainty,
                               String[] pMeasurement,
                               String[] pUncertainty)
                        throws IOException,
                               AutomationException
Truncates input mensuration and uncertainty values based on acceptable rules for reporting measurement and uncertianty values.

Product Availability

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

Specified by:
significantFigures in interface IMensuration
Parameters:
measurementValue - The measurementValue (in)
uncertainty - The uncertainty (in)
pMeasurement - The pMeasurement (out: use single element array)
pUncertainty - The pUncertainty (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTMName

public String getTMName()
                 throws IOException,
                        AutomationException
The name of the TerrainModel used by this IMensuration object.

Product Availability

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

Specified by:
getTMName in interface IMensuration
Returns:
The pTerrainModelName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isValid

public boolean isValid()
                throws IOException,
                       AutomationException
Indicates if all the required system parameters and resources of this IMensuration have been successfully initialized.

Product Availability

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

Specified by:
isValid in interface IMensuration
Returns:
The pSysInitialized
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVersion

public String getVersion()
                  throws IOException,
                         AutomationException
The version of this IMensuration.

Product Availability

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

Specified by:
getVersion in interface IMensuration
Returns:
The pServiceVersion
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanMeasure3D

public boolean isCanMeasure3D()
                       throws IOException,
                              AutomationException
Indicates if 3D mensuration is supported.

Product Availability

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

Specified by:
isCanMeasure3D in interface IMensuration3D
Returns:
The p3DMensurationCapable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPoint3D

public void getPoint3D(IPoint pInPoint,
                       IPointMeasurement[] ppPointMeasurement)
                throws IOException,
                       AutomationException
Computes a 3D point given a 2D map points.

Product Availability

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

Specified by:
getPoint3D in interface IMensuration3D
Parameters:
pInPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppPointMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPointMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentroid3D

public void getCentroid3D(IPolygon pPolygon,
                          IPointMeasurement[] ppPointMeasurement)
                   throws IOException,
                          AutomationException
Computes the 3D centroid of a 2D polygon with no interior holes..

Product Availability

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

Specified by:
getCentroid3D in interface IMensuration3D
Parameters:
pPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
ppPointMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPointMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDistance3D

public void getDistance3D(IPoint pFirstPoint,
                          IPoint pSecondPoint,
                          IDistanceMeasurement[] ppDistMeasurement)
                   throws IOException,
                          AutomationException
Computes the 3D actual distance between two points given their 2D map points.

Product Availability

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

Specified by:
getDistance3D in interface IMensuration3D
Parameters:
pFirstPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
pSecondPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppDistMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IDistanceMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAngle3D

public void getAngle3D(IPoint pFirstPoint,
                       IPoint pSecondPoint,
                       IAngularMeasurement[] ppAzimuthAngle,
                       IAngularMeasurement[] ppElevationAngle)
                throws IOException,
                       AutomationException
Computes the 3D angle of the line connecting the two input 2D map points.

Product Availability

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

Specified by:
getAngle3D in interface IMensuration3D
Parameters:
pFirstPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
pSecondPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
ppAzimuthAngle - A reference to a com.esri.arcgis.datasourcesraster.IAngularMeasurement (out: use single element array)
ppElevationAngle - A reference to a com.esri.arcgis.datasourcesraster.IAngularMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAreaAndPerimeter3D

public void getAreaAndPerimeter3D(IPolygon pPolygon,
                                  IPolygonMeasurement[] ppPolygonMeasurement)
                           throws IOException,
                                  AutomationException
Computes the 3D area and perimeter of a 2D polygon with no interior holes.

Product Availability

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

Specified by:
getAreaAndPerimeter3D in interface IMensuration3D
Parameters:
pPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
ppPolygonMeasurement - A reference to a com.esri.arcgis.datasourcesraster.IPolygonMeasurement (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.