com.esri.arcgis.analyst3d
Class Hit3D

java.lang.Object
  extended by com.esri.arcgis.analyst3d.Hit3D
All Implemented Interfaces:
IHit3D, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class Hit3D
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IHit3D

A container for information regarding a hit in 3D picking.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
Hit3D(Object obj)
          Construct a Hit3D using a reference to such an object returned from ArcGIS Engine or Server.
 
Method Summary
 boolean equals(Object o)
          Compare this object with another
 void getDepthRange(double[] pDMin, double[] pDMax)
          Returns the depth range of the hit as reported by OpenGL.
 double getDistanceToObserver()
          The 3D distance from the observer to the hit point.
 double getDistanceToRay()
          The 3D distance between the hit point and the picking ray.
 Object getObject()
          The object (feature) that is hit.
 Object getOwner()
          The owner (layer) that is hit.
 IPoint getPoint()
          The location of the hit.
 int hashCode()
          the hashcode for this object
 boolean isExactHit()
          Indicates whether an exact hit.
 void setDepthRange(double dMin, double dMax)
          Sets the depth range of the hit as reported by OpenGL.
 void setDistanceToObserver(double pDistanceToObs)
          The 3D distance from the observer to the hit point.
 void setDistanceToRay(double pDistanceToRay)
          The 3D distance between the hit point and the picking ray.
 void setExactHit(boolean hit)
          Indicates whether an exact hit.
 void setObjectByRef(Object ppObject)
          The object (feature) that is hit.
 void setOwnerByRef(Object ppOwner)
          The owner (layer) that is hit.
 void setPointByRef(IPoint ppPoint)
          The location of the hit.
 
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

Hit3D

public Hit3D(Object obj)
      throws IOException
Construct a Hit3D using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to Hit3D.
Casting to this class from the return value of a method will not work, as this class represents an abstract class in ArcObjects.
*
Hit3D o = (Hit3D)obj; // will not work

Hit3D o = new Hit3D(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server

Throws:
IOException - if there are interop problems Hit3D theHit3D = (Hit3D) obj;
Method Detail

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

setPointByRef

public void setPointByRef(IPoint ppPoint)
                   throws IOException,
                          AutomationException
The location of the hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Specified by:
setPointByRef in interface IHit3D
Parameters:
ppPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPoint

public IPoint getPoint()
                throws IOException,
                       AutomationException
The location of the hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPoint in interface IHit3D
Returns:
A reference to a com.esri.arcgis.geometry.IPoint
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOwnerByRef

public void setOwnerByRef(Object ppOwner)
                   throws IOException,
                          AutomationException
The owner (layer) that is hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Specified by:
setOwnerByRef in interface IHit3D
Parameters:
ppOwner - A reference to another Object (IUnknown) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOwner

public Object getOwner()
                throws IOException,
                       AutomationException
The owner (layer) that is hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getOwner in interface IHit3D
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setObjectByRef

public void setObjectByRef(Object ppObject)
                    throws IOException,
                           AutomationException
The object (feature) that is hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Specified by:
setObjectByRef in interface IHit3D
Parameters:
ppObject - A reference to another Object (IUnknown) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getObject

public Object getObject()
                 throws IOException,
                        AutomationException
The object (feature) that is hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getObject in interface IHit3D
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDistanceToObserver

public void setDistanceToObserver(double pDistanceToObs)
                           throws IOException,
                                  AutomationException
The 3D distance from the observer to the hit point.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

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

getDistanceToObserver

public double getDistanceToObserver()
                             throws IOException,
                                    AutomationException
The 3D distance from the observer to the hit point.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDistanceToObserver in interface IHit3D
Returns:
The pDistanceToObs
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDistanceToRay

public void setDistanceToRay(double pDistanceToRay)
                      throws IOException,
                             AutomationException
The 3D distance between the hit point and the picking ray.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

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

getDistanceToRay

public double getDistanceToRay()
                        throws IOException,
                               AutomationException
The 3D distance between the hit point and the picking ray.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDistanceToRay in interface IHit3D
Returns:
The pDistanceToRay
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDepthRange

public void setDepthRange(double dMin,
                          double dMax)
                   throws IOException,
                          AutomationException
Sets the depth range of the hit as reported by OpenGL.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDepthRange in interface IHit3D
Parameters:
dMin - The dMin (in)
dMax - The dMax (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDepthRange

public void getDepthRange(double[] pDMin,
                          double[] pDMax)
                   throws IOException,
                          AutomationException
Returns the depth range of the hit as reported by OpenGL.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDepthRange in interface IHit3D
Parameters:
pDMin - The pDMin (out: use single element array)
pDMax - The pDMax (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExactHit

public void setExactHit(boolean hit)
                 throws IOException,
                        AutomationException
Indicates whether an exact hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

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

isExactHit

public boolean isExactHit()
                   throws IOException,
                          AutomationException
Indicates whether an exact hit.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires 3D Analyst Extension.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isExactHit in interface IHit3D
Returns:
The hit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.