com.esri.arcgis.geometry
Class Vector3D

java.lang.Object
  extended by com.esri.arcgis.geometry.Vector3D
All Implemented Interfaces:
IVector, IVector3D, com.esri.arcgis.interop.RemoteObjRef, IClone, ISupportErrorInfo, Serializable

public class Vector3D
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IVector, IVector3D, IClone, ISupportErrorInfo

A 3D vector containing dx, dy, and dz components.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
Vector3D()
          Constructs a Vector3D using ArcGIS Engine.
Vector3D(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
Vector3D theVector3D = (Vector3D) obj;
 
Method Summary
 IVector addVector(IVector otherVector)
          Construct a new vector by adding a different vector to this vector.
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 void constructAddVector(IVector vector1, IVector vector2)
          Set this vector by adding two input vectors.
 void constructCrossProduct(IVector vector1, IVector vector2)
          Set this vector equal to the cross product of the two input vectors.
 void constructDifference(IPoint point1, IPoint point2)
          Set the vector by taking the difference of point1 and point2 (so the vector would go from point2 to point1).
 void constructSubtractVector(IVector vector1, IVector vector2)
          Set this vector by subtracting the second input vector from the first one.
 IVector crossProduct(IVector otherVector)
          Returns the cross product of this vector and another vector.
 double dotProduct(IVector otherVector)
          Returns the dot product of this vector and another vector.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 double getAzimuth()
          The vector's azimuth angle in radians.
static String getClsid()
          getClsid.
 double getComponentByIndex(int componentIndex)
          The component corresponding to a given index.
 int getDimension()
          The dimension of this vector.
 double getInclination()
          The vector's inclination in radians.
 double getMagnitude()
          The length of the vector.
 double getXComponent()
          The vector's X component.
 double getYComponent()
          The vector's Y component.
 double getZComponent()
          The vector's Z component.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 boolean isEmpty()
          Indicates if the vector is empty (unset).
 boolean isEqual(IClone other)
          Returns TRUE when the receiver and other have the same properties.
 boolean isIdentical(IClone other)
          Returns TRUE when the receiver and other are the same object.
 void move(double dx, double dy, double dz)
          Move the vector by adding a shift value to each component.
 void normalize()
          Normalize the vector (scale it to magnitude = 1).
 void polarMove(double dAzimuth, double dInclination, double dRadius)
          Modify the vector by adding to its polar components.
 void polarQuery(double[] azimuth, double[] inclination, double[] radiusLength)
          Get the vector's polar components.
 void polarSet(double azimuth, double inclination, double radiusLength)
          Set the vector using polar components.
 void queryComponents(double[] dx, double[] dy, double[] dz)
          Get the values of the vector's components.
 void rotate(double angle, IVector3D axis)
          Rotate the vector around an axis defined by another vector.
 void scale(double scaleFactor)
          Scale the vector by the given factor.
 void setAzimuth(double azimuth)
          The vector's azimuth angle in radians.
 void setComponentByIndex(int componentIndex, double componentValue)
          The component corresponding to a given index.
 void setComponents(double dx, double dy, double dz)
          Set the values of the vector's components.
 void setEmpty()
          Makes the vector empty (unset).
 void setInclination(double inclination)
          The vector's inclination in radians.
 void setMagnitude(double magnitude)
          The length of the vector.
 void setXComponent(double dx)
          The vector's X component.
 void setYComponent(double dy)
          The vector's Y component.
 void setZComponent(double dz)
          The vector's Z component.
 IVector subtractVector(IVector otherVector)
          Construct a new vector by subtracting a different vector from this vector.
 
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

Vector3D

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

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

Vector3D

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

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

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

getDimension

public int getDimension()
                 throws IOException,
                        AutomationException
The dimension of this vector.

Description

Returns the Dimension of the Vector. The Dimension corresponds to the number of unique Components that define the vector.

Remarks

Vector Dimension Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDimension in interface IVector
Returns:
The dimension
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEmpty

public boolean isEmpty()
                throws IOException,
                       AutomationException
Indicates if the vector is empty (unset).

Description

Returns TRUE if all of the components of the vector have undefined (NaN) values. An Empty vector is NOT the same as a Null vector.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setEmpty

public void setEmpty()
              throws IOException,
                     AutomationException
Makes the vector empty (unset).

Description

Sets the vector equal to an empty vector in which all components have undefined (NaN) values.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setEmpty in interface IVector
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getComponentByIndex

public double getComponentByIndex(int componentIndex)
                           throws IOException,
                                  AutomationException
The component corresponding to a given index.

Product Availability

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

Specified by:
getComponentByIndex in interface IVector
Parameters:
componentIndex - The componentIndex (in)
Returns:
The componentValue
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setComponentByIndex

public void setComponentByIndex(int componentIndex,
                                double componentValue)
                         throws IOException,
                                AutomationException
The component corresponding to a given index.

Description

Sets the value of the component of the specified index equal to the input component value. The first component has index 0. An Nth Dimensional vector has N components (0, 1, . . ., N-2, N-1).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setComponentByIndex in interface IVector
Parameters:
componentIndex - The componentIndex (in)
componentValue - The componentValue (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMagnitude

public double getMagnitude()
                    throws IOException,
                           AutomationException
The length of the vector.

Description

Returns and sets the magnitude of the vector. The magnitude is analgous to the length of the vector.

Remarks

IVector Magnitude Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMagnitude in interface IVector
Returns:
The magnitude
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMagnitude

public void setMagnitude(double magnitude)
                  throws IOException,
                         AutomationException
The length of the vector.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

normalize

public void normalize()
               throws IOException,
                      AutomationException
Normalize the vector (scale it to magnitude = 1).

Description

Normalizes the Vector to a unit vector with Magnitude = 1 and the same direction as the original vector.

Remarks

Normalize is the same as Scaling the vector by 1 / Magnitude.

IVector Normalize Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
normalize in interface IVector
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

scale

public void scale(double scaleFactor)
           throws IOException,
                  AutomationException
Scale the vector by the given factor.

Description

Multiplies each component of the Vector by a given Scale factor. If the scale factor is positive, the resulting scaled vector has the same direction as the original vector. If the scale factor is negative, the resulting scaled vector has the opposite direction as the original vector. The Magnitude of the scaled vector = OriginalMagnitude * Abs(ScaleFactor).

Remarks

Scaling a Vector by 1 / Magnitude effectively Normalizes the vector and results in a unit vector.

IVector Scale Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

addVector

public IVector addVector(IVector otherVector)
                  throws IOException,
                         AutomationException
Construct a new vector by adding a different vector to this vector.

Description

Returns a newly constructed Vector by adding the components of the base vector to the corresponding components of the input vector.

Remarks

IVector AddVector Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

subtractVector

public IVector subtractVector(IVector otherVector)
                       throws IOException,
                              AutomationException
Construct a new vector by subtracting a different vector from this vector.

Description

Returns a newly constructed Vector by subtracting the components of the input vector from the corresponding components of the base vector.

Remarks

IVector SubtractVector Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

constructAddVector

public void constructAddVector(IVector vector1,
                               IVector vector2)
                        throws IOException,
                               AutomationException
Set this vector by adding two input vectors.

Description

Constructs a new Vector by adding the components of the first vector to the corresponding components of the second vector.

Remarks

IVector ConstructAddVector Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

constructSubtractVector

public void constructSubtractVector(IVector vector1,
                                    IVector vector2)
                             throws IOException,
                                    AutomationException
Set this vector by subtracting the second input vector from the first one.

Description

Constructs a new Vector by subtracting the components of the second vector from the corresponding components of the first vector.

Remarks

IVector ConstructSubtractVector Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

dotProduct

public double dotProduct(IVector otherVector)
                  throws IOException,
                         AutomationException
Returns the dot product of this vector and another vector.

Description

Returns a double representing the Dot Product of the base vector and the input vector. The Dot Product is the sum of multiplying corresponding components of each vector.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
dotProduct in interface IVector
Parameters:
otherVector - A reference to a com.esri.arcgis.geometry.IVector (in)
Returns:
The result
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getXComponent

public double getXComponent()
                     throws IOException,
                            AutomationException
The vector's X component.

Description

Returns and sets the X Component of the 3 Dimensional vector. The X Component corresponds to the displacement from the origin along the X-Axis.

Remarks

Vector3D XComponent Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getXComponent in interface IVector3D
Returns:
The dx
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setXComponent

public void setXComponent(double dx)
                   throws IOException,
                          AutomationException
The vector's X component.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getYComponent

public double getYComponent()
                     throws IOException,
                            AutomationException
The vector's Y component.

Description

Returns and sets the Y Component of the 3 Dimensional vector. The Y Component corresponds to the displacement from the origin along the Y-Axis.

Remarks

Vector3D YComponent Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getYComponent in interface IVector3D
Returns:
The dy
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setYComponent

public void setYComponent(double dy)
                   throws IOException,
                          AutomationException
The vector's Y component.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getZComponent

public double getZComponent()
                     throws IOException,
                            AutomationException
The vector's Z component.

Description

Returns and sets the Z Component of the 3 Dimensional vector. The Z Component corresponds to the displacement from the origin along the Z-Axis.

Remarks

Vector3D ZComponent Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getZComponent in interface IVector3D
Returns:
The dz
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZComponent

public void setZComponent(double dz)
                   throws IOException,
                          AutomationException
The vector's Z component.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getInclination

public double getInclination()
                      throws IOException,
                             AutomationException
The vector's inclination in radians.

Description

Returns and sets the Inclination of the 3 Dimensional vector. The Inclination is the angle between the XY-Plane and the vector measured in the Z-direction. The Inclination is measured in radians and has a value between -Pi/2 and Pi/2.

Remarks

Vector3D Inclination Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getInclination in interface IVector3D
Returns:
The inclination
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setInclination

public void setInclination(double inclination)
                    throws IOException,
                           AutomationException
The vector's inclination in radians.

Remarks

Note: That property cannot be set unless the vector as three well defined components (X, Y, Z).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getAzimuth

public double getAzimuth()
                  throws IOException,
                         AutomationException
The vector's azimuth angle in radians.

Description

Returns and sets the Azimuth of the 3 Dimensional vector. The Azimuth is the angle between the YZ-Plane and the vector measured in the X-direction. The Azimuth is measured in radians in a clockwise direction and has a value between 0 and 2*Pi.

Remarks

Vector3D Azimuth Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAzimuth in interface IVector3D
Returns:
The azimuth
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAzimuth

public void setAzimuth(double azimuth)
                throws IOException,
                       AutomationException
The vector's azimuth angle in radians.

Remarks

Note: That property cannot be set unless the vector as three well defined components (X, Y, Z).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

move

public void move(double dx,
                 double dy,
                 double dz)
          throws IOException,
                 AutomationException
Move the vector by adding a shift value to each component.

Description

Moves the Vector3D by adding a given input factor to each of the X, Y, and Z Components. The result is the same as adding another Vector3D defined by the inputs to the base Vector3D.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
move in interface IVector3D
Parameters:
dx - The dx (in)
dy - The dy (in)
dz - The dz (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryComponents

public void queryComponents(double[] dx,
                            double[] dy,
                            double[] dz)
                     throws IOException,
                            AutomationException
Get the values of the vector's components.

Description

Returns the X Component, Y Component, and X Component of the 3 Dimensional vector.

Remarks

Vector3D QueryComponents Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
queryComponents in interface IVector3D
Parameters:
dx - The dx (out: use single element array)
dy - The dy (out: use single element array)
dz - The dz (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setComponents

public void setComponents(double dx,
                          double dy,
                          double dz)
                   throws IOException,
                          AutomationException
Set the values of the vector's components.

Description

Sets the X Component, Y Component, and Z Component of the 3 Dimensional vector.

Remarks

Vector3D SetComponents Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setComponents in interface IVector3D
Parameters:
dx - The dx (in)
dy - The dy (in)
dz - The dz (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructDifference

public void constructDifference(IPoint point1,
                                IPoint point2)
                         throws IOException,
                                AutomationException
Set the vector by taking the difference of point1 and point2 (so the vector would go from point2 to point1).

Description

Constructs a Vector3D defined by the difference between the first point and the second point. The first point and the Origin define a Vector3D, and the Origin and the second point define a second Vector3D. Thus, the constructed difference Vector3D is the Constructed Subtract Vector between the first vector and the second vector.

Remarks

IVector3D ConstructDifference Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
constructDifference in interface IVector3D
Parameters:
point1 - A reference to a com.esri.arcgis.geometry.IPoint (in)
point2 - 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.

rotate

public void rotate(double angle,
                   IVector3D axis)
            throws IOException,
                   AutomationException
Rotate the vector around an axis defined by another vector. The angle is in radians.

Description

Rotates the base Vector3D a given input angle measured in radians around the specified axis defined by the input Vector3D. To rotate a vector in a given plane defined by two vectors, use the CrossProduct of those vectors as the axis of rotation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
rotate in interface IVector3D
Parameters:
angle - The angle (in)
axis - A reference to a com.esri.arcgis.geometry.IVector3D (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

polarSet

public void polarSet(double azimuth,
                     double inclination,
                     double radiusLength)
              throws IOException,
                     AutomationException
Set the vector using polar components. Angles are in radians.

Description

Sets the X Component, Y Component, and Z Component values of the 3 Dimensional vector that correspond to the input Azimuth, Inclination, and Radius Length (Magnitude) values. The Azimuth and Inclination are measured in radians.

Remarks

Vector3D PolarSet Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
polarSet in interface IVector3D
Parameters:
azimuth - The azimuth (in)
inclination - The inclination (in)
radiusLength - The radiusLength (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

polarQuery

public void polarQuery(double[] azimuth,
                       double[] inclination,
                       double[] radiusLength)
                throws IOException,
                       AutomationException
Get the vector's polar components. Angles are in radians.

Description

Returns the Azimuth, Inclination, and Radius Length (Magnitude) of the 3 Dimensional vector.

Remarks

Vector3D PolarQuery Example

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
polarQuery in interface IVector3D
Parameters:
azimuth - The azimuth (out: use single element array)
inclination - The inclination (out: use single element array)
radiusLength - The radiusLength (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

polarMove

public void polarMove(double dAzimuth,
                      double dInclination,
                      double dRadius)
               throws IOException,
                      AutomationException
Modify the vector by adding to its polar components. Angles are in radians.

Description

Moves the Vector3D in Polar coordinates by adding a given input factor to each of the Azimuth, Inclination, and Radius Components. This can be thought of as applying a Polar rotation and modification to the base Vector.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
polarMove in interface IVector3D
Parameters:
dAzimuth - The dAzimuth (in)
dInclination - The dInclination (in)
dRadius - The dRadius (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

crossProduct

public IVector crossProduct(IVector otherVector)
                     throws IOException,
                            AutomationException
Returns the cross product of this vector and another vector.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
crossProduct in interface IVector3D
Parameters:
otherVector - A reference to a com.esri.arcgis.geometry.IVector (in)
Returns:
A reference to a com.esri.arcgis.geometry.IVector
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructCrossProduct

public void constructCrossProduct(IVector vector1,
                                  IVector vector2)
                           throws IOException,
                                  AutomationException
Set this vector equal to the cross product of the two input vectors.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
constructCrossProduct in interface IVector3D
Parameters:
vector1 - A reference to a com.esri.arcgis.geometry.IVector (in)
vector2 - A reference to a com.esri.arcgis.geometry.IVector (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

esri_clone

public IClone esri_clone()
                  throws IOException,
                         AutomationException
Clones the receiver and assigns the result to *clone.

Product Availability

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

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

assign

public void assign(IClone src)
            throws IOException,
                   AutomationException
Assigns the properties of src to the receiver.

Description

Use Assign method to assign the properties of source object to receiver object. Both objects need to have the same CLSIDs. Both source and receiver objects need to be instantiated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isEqual

public boolean isEqual(IClone other)
                throws IOException,
                       AutomationException
Returns TRUE when the receiver and other have the same properties.

Description

IsEqual returns True if the receiver and the source have the same properties. Note, this does not imply that the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isEqual in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The equal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isIdentical

public boolean isIdentical(IClone other)
                    throws IOException,
                           AutomationException
Returns TRUE when the receiver and other are the same object.

Description

IsIdentical returns true if the receiver and the source reference the same object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isIdentical in interface IClone
Parameters:
other - A reference to a com.esri.arcgis.system.IClone (in)
Returns:
The identical
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.