com.esri.arcgis.geometry
Class GeographicCoordinateSystem

java.lang.Object
  extended bycom.esri.arcgis.geometry.GeographicCoordinateSystem
All Implemented Interfaces:
IClone, ICompareCoordinateSystems, IControlPrecision, IControlPrecision2, IESRISpatialReference, IESRISpatialReferenceGEN, IGeographicCoordinateSystem, IGeographicCoordinateSystem2, IGeographicCoordinateSystemEdit, IPersist, IPersistStream, IPRJSpatialReference, IPRJSpatialReferenceGEN, ISpatialReference, ISpatialReference2, ISpatialReference2GEN, ISpatialReference3, ISpatialReferenceInfo, ISpatialReferenceResolution, ISpatialReferenceTolerance, ISRPersistStream, ISupportErrorInfo, java.io.Serializable

public class GeographicCoordinateSystem
extends java.lang.Object
implements ISpatialReference2GEN, IESRISpatialReferenceGEN, IPRJSpatialReferenceGEN, IGeographicCoordinateSystem, IGeographicCoordinateSystem2, IGeographicCoordinateSystemEdit, ISpatialReference, ISpatialReference2, ISpatialReference3, ISpatialReferenceInfo, IESRISpatialReference, IPRJSpatialReference, IClone, ICompareCoordinateSystems, IPersist, IPersistStream, ISRPersistStream, ISupportErrorInfo, IControlPrecision, IControlPrecision2, ISpatialReferenceTolerance, ISpatialReferenceResolution

Creates a geographic coordinate system.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Remarks

The IClone::IsIdentical method is not implemented.

See Also:
Serialized Form

Constructor Summary
GeographicCoordinateSystem()
          Constructs a GeographicCoordinateSystem using ArcGIS Engine.
GeographicCoordinateSystem(java.lang.Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
 
Method Summary
 void applyPrecision(_WKSPoint[] points, double[] ms, double[] zs)
          Applies the measure and z value precisions.
 void applyPrecision(int cPoints, _WKSPoint points, double[] ms, double[] zs)
          Applies the measure and z value precisions.
 void applyXYPrecision(_WKSPoint[] points)
          Applies the XY precision.
 void applyXYPrecision(int cPoints, _WKSPoint points)
          Applies the XY precision.
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 void changed()
          Notify this object that some of its parts have changed (parameter values, z unit, etc.).
 void constructFromHorizon()
          Defines the XY resolution and domain extent of this spatial reference based on the extent of its horizon.
 void define(java.lang.Object name, java.lang.Object alias, java.lang.Object abbreviation, java.lang.Object remarks, java.lang.Object useage, java.lang.Object datum, java.lang.Object primeMeridian, java.lang.Object geographicUnit)
          Defines the properties for a geographic coordinate system.
 void defineEx(java.lang.String name, java.lang.String alias, java.lang.String abbreviation, java.lang.String remarks, java.lang.String useage, IDatum datum, IPrimeMeridian primeMeridian, IAngularUnit geographicUnit)
          Defines the properties for a geographic coordinate system.
 boolean equals(java.lang.Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 void exportSpatialReferenceToPRJ(java.lang.String[] str, int[] cBytesWrote)
          Exports the spatial reference to a buffer.
 void exportToESRISpatialReference(java.lang.String[] str, int[] cBytesWrote)
          Exports this spatial reference component to a buffer.
 java.lang.String getAbbreviation()
          The abbreviated name of this spatial reference component.
 java.lang.String getAlias()
          The alias of this spatial reference component.
 double getAngularConversionFactor(IGeographicCoordinateSystem2 pDstGCS)
          A factor to convert angular units from current GCS to destination GCS.
 IClone getAsIClone()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ICompareCoordinateSystems getAsICompareCoordinateSystems()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IControlPrecision getAsIControlPrecision()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IControlPrecision2 getAsIControlPrecision2()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IESRISpatialReference getAsIESRISpatialReference()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IESRISpatialReferenceGEN getAsIESRISpatialReferenceGEN()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IGeographicCoordinateSystem getAsIGeographicCoordinateSystem()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IGeographicCoordinateSystem2 getAsIGeographicCoordinateSystem2()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IGeographicCoordinateSystemEdit getAsIGeographicCoordinateSystemEdit()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IPersist getAsIPersist()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IPersistStream getAsIPersistStream()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IPRJSpatialReference getAsIPRJSpatialReference()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IPRJSpatialReferenceGEN getAsIPRJSpatialReferenceGEN()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReference getAsISpatialReference()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReference2 getAsISpatialReference2()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReference2GEN getAsISpatialReference2GEN()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReference3 getAsISpatialReference3()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReferenceInfo getAsISpatialReferenceInfo()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReferenceResolution getAsISpatialReferenceResolution()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISpatialReferenceTolerance getAsISpatialReferenceTolerance()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISRPersistStream getAsISRPersistStream()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISupportErrorInfo getAsISupportErrorInfo()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 void getClassID(GUID[] pClassID)
          Supported Platforms
static java.lang.String getClsid()
           
 IAngularUnit getCoordinateUnit()
          The angular unit of this geographic coordinate system.
 IDatum getDatum()
          The horizontal datum of this geographic coordinate system.
 void getDomain(double[] xMin, double[] xMax, double[] yMin, double[] yMax)
          Get the domain extent.
 int getESRISpatialReferenceSize()
          The number of bytes required to hold the persistant representation of this spatial reference component.
 int getFactoryCode()
          The factory code of the spatial reference.
 void getFalseOriginAndUnits(double[] falseX, double[] falseY, double[] xyUnits)
          Get the false origin and units.
 void getGCSParams(double[] p_180, double[] pDelta)
          Returns the 180 degrees equivalent and horizon delta in proper GCS units.
 void getHorizon(_WKSEnvelope[] horizonEnvelope)
          Returns a standard horizon polygon, its envelope and whether it is inclusive or exclusive; the horizon polygon may be 0.
 double getLeftLongitude(boolean inDegrees)
          The least (left) longitude bounding a 360 degree range.
 void getMDomain(double[] outMMin, double[] outMMax)
          Get the measure domain extent.
 void getMFalseOriginAndUnits(double[] falseM, double[] mUnits)
          Get the measure false origin and units.
 double getMResolution()
          The M, or measure, resolution of this spatial reference.
 double getMTolerance()
          The tolerance used to determine equality of M values.
 int getMToleranceValid()
          Returns true if the M tolerance is well defined (not NaN) and >= the minimum M tolerance.
 java.lang.String getName()
          The name of this spatial reference component.
 void getPrecisionSizeMax(int[] byteCount)
          Returns the number of bytes needed to store the false x, false y and xy units of this spatial reference.
 IPrimeMeridian getPrimeMeridian()
          The prime meridian of this geographic coordinate system.
 int getPRJSpatialReferenceSize()
          The number of bytes required to hold the persistant representation of the spatial reference.
 java.lang.String getRemarks()
          The comment string of this spatial reference component.
 double getRightLongitude(boolean inDegrees)
          The greatest (right) longitude bounding a 360 degree range.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          Supported Platforms
 java.lang.String getUsage()
          The usage notes of this geographic coordinate system.
 IVerticalCoordinateSystem getVerticalCoordinateSystem()
          The VCS associated with this spatial reference.
 double getXYResolution(boolean bStandardUnits)
          The XY resolution (distance in SR units between distinguishable grid points) of this spatial reference.
 double getXYTolerance()
          The xy tolerance used to control point coalescing in the X and Y dimensions.
 int getXYToleranceValid()
          Returns esriSRToleranceOK if the XY tolerance is well defined (not NaN) and >= the minimum XY tolerance.
 ILinearUnit getZCoordinateUnit()
          The unit for the Z coordinate.
 void getZDomain(double[] outZMin, double[] outZMax)
          Get the Z domain extent.
 void getZFalseOriginAndUnits(double[] falseZ, double[] zUnits)
          Get the Z false origin and units.
 double getZResolution(boolean bStandardUnits)
          The Z resolution (height/depth distance between distinguishable grid points) of this spatial reference.
 double getZTolerance()
          The tolerance used to control point coalescing strictly along the Z axis.
 int getZToleranceValid()
          Returns true if the Z tolerance is well defined (not NaN) and >= the minimum Z tolerance.
 int hashCode()
          the hashcode for this object
 boolean hasMPrecision()
          Returns true when m-value precision information has been defined.
 boolean hasXYPrecision()
          Returns true when (x,y) precision information has been defined.
 boolean hasZPrecision()
          Returns true when z-value precision information has been defined.
 void importFromESRISpatialReference(java.lang.String str, int[] cBytesRead)
          Defines this spatial reference component from the specified ESRISpatialReference buffer.
 void importSpatialReferenceFromPRJ(java.lang.String str, int[] cBytesRead)
          Defines the spatial reference from the specified ESRISpatialReference buffer.
 void interfaceSupportsErrorInfo(GUID riid)
          Supported Platforms
 void isDirty()
          Supported Platforms
 boolean isEqual(IClone other)
          Returns TRUE when the receiver and other have the same properties.
 boolean isEqualLeftLongitude(ISpatialReference other, boolean compareVCS)
          For geographic coordinate systems, this version of IsEqual includes considers their left longitude properties.
 boolean isEqualNoVCS(ISpatialReference other)
          Compares spatial references without considering any vertical coordinate system that may be associated with the spatial reference.
 boolean isHighPrecision()
          TRUE if a high precision integer grid is being used to round coordinate values.
 boolean isIdentical(IClone other)
          Returns TRUE when the receiver and other are the same object.
 boolean isMPrecisionEqual(ISpatialReference otherSR)
          Returns true if the measure precisions of the two spatial references are the same.
 boolean isMToleranceEqual(ISpatialReference otherSR)
          Returns true if the measure tolerances of the two spatial references are the same.
 void isPrecisionEqual(ISpatialReference otherSR, boolean[] isPrecisionEqual)
          Returns TRUE when the precision information for the two spatial references is the same.
 boolean isUsePrecision()
          Returns TRUE if the precision information can be used for snapping.
 boolean isXYPrecisionEqual(ISpatialReference otherSR)
          Returns true if the XY precisions of the two spatial references are the same.
 boolean isXYToleranceEqual(ISpatialReference otherSR)
          Returns true if the XY tolerances of the two spatial references are the same.
 boolean isZPrecisionEqual(ISpatialReference otherSR)
          Returns true if the Z precisions of the two spatial references are the same.
 boolean isZToleranceEqual(ISpatialReference otherSR)
          Returns true if the Z tolerances of the two spatial references are the same.
 void load(IStream pstm)
          Supported Platforms
 void loadPrecision(IStream pStream)
          Initializes this spatial reference's false x, false y and xy units from information in the specified stream.
 void projectionHint(IGeometry geometry, ISpatialReference targetSR, int[] direction, ITransformation[] pXForm, int[] projectionHint)
          Projection hint for speeding up projections.
 void save(IStream pstm, int fClearDirty)
          Supported Platforms
 void savePrecision(IStream pStream, int fClearDirty)
          Saves this spatial reference's false x, false y and xy units to the specified stream.
 void setDefaultMResolution()
          Sets the m coordinate grid resolution to 1 mm for a low precision spatial reference or 1/10 mm for a high precision spatial reference.
 void setDefaultMTolerance()
          Sets the default tolerance used to determine equality of M values (2.0 * m resolution).
 void setDefaultXYResolution()
          defaults: PCS(hi): 1/10 mm; PCS(lo): 1 mm; GCS(hi): 1/10,000 arc-second; GCS(lo): 1/500 arc-second; UCS(hi): 1/10 mm (assumed); UCS(lo): 1 mm (assumed).
 void setDefaultXYTolerance()
          Sets the default cluster tolerance used to control point coalescing in the X and Y dimensions (the equivalent of 1 mm in the current spatial reference units).
 void setDefaultZResolution()
          Sets the z coordinate grid resolution to 1 mm for a low precision spatial reference or 1/10 mm for a high precision spatial reference.
 void setDefaultZTolerance()
          Sets the default value for the Z cluster tolerance used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).
 void setDomain(double xMin, double xMax, double yMin, double yMax)
          Set the xy domain extent.
 void setExtentHint(_WKSEnvelope rhs1)
          Calculates a 360 degree longitude range from information in the specified envelope and the domain extent of the GCS.
 void setFalseOriginAndUnits(double falseX, double falseY, double xyUnits)
          Set the false origin and units.
 void setIsHighPrecision(boolean isHighPrecision)
          TRUE if a high precision integer grid is being used to round coordinate values.
 void setLeftLongitude(boolean inDegrees, double leftLongitude)
          The least (left) longitude bounding a 360 degree range.
 void setMDomain(double inMMin, double inMMax)
          Set the measure domain extent.
 void setMFalseOriginAndUnits(double falseM, double mUnits)
          Set the measure false origin and units.
 void setMinimumMTolerance()
          Sets the minimum tolerance (i.e., pre 9.2) used to determine equality of M values (2.0 * m resolution).
 void setMinimumXYTolerance()
          Sets the xy cluster tolerance to be 2.0 * resolution.
 void setMinimumZTolerance()
          Sets the minimum value for the Z cluster tolerance (i.e., pre 9.2) used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).
 void setMResolution(double interval)
          The M, or measure, resolution of this spatial reference.
 void setMTolerance(double mTolerance)
          The tolerance used to determine equality of M values.
 void setRightLongitude(boolean inDegrees, double rightLongitude)
          The greatest (right) longitude bounding a 360 degree range.
 void setUsePrecision(boolean usePrecision)
          Returns TRUE if the precision information can be used for snapping.
 void setVerticalCoordinateSystemByRef(IVerticalCoordinateSystem vcs)
          The VCS associated with this spatial reference.
 void setXYResolution(boolean bStandardUnits, double xYResolution)
          The XY resolution (distance in SR units between distinguishable grid points) of this spatial reference.
 void setXYTolerance(double xYTolerance)
          The xy tolerance used to control point coalescing in the X and Y dimensions.
 void setZCoordinateUnit(ILinearUnit zunit)
          The unit for the Z coordinate.
 void setZDomain(double inZMin, double inZMax)
          Set the z domain extent.
 void setZFalseOriginAndUnits(double falseZ, double zUnits)
          Set the Z false origin and units.
 void setZResolution(boolean bStandardUnits, double zResolution)
          The Z resolution (height/depth distance between distinguishable grid points) of this spatial reference.
 void setZTolerance(double zTolerance)
          The tolerance used to control point coalescing strictly along the Z axis.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeographicCoordinateSystem

public GeographicCoordinateSystem()
                           throws java.io.IOException,
                                  java.net.UnknownHostException
Constructs a GeographicCoordinateSystem using ArcGIS Engine.

Throws:
java.io.IOException - if there are interop problems
java.net.UnknownHostException - if there are interop problems

GeographicCoordinateSystem

public GeographicCoordinateSystem(java.lang.Object obj)
                           throws java.io.IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.

Construct a GeographicCoordinateSystem using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to GeographicCoordinateSystem.
GeographicCoordinateSystem theGeographicCoordinateSystem = (GeographicCoordinateSystem) obj;

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

getClsid

public static java.lang.String getClsid()

getAsISpatialReference2GEN

public ISpatialReference2GEN getAsISpatialReference2GEN()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIESRISpatialReferenceGEN

public IESRISpatialReferenceGEN getAsIESRISpatialReferenceGEN()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIPRJSpatialReferenceGEN

public IPRJSpatialReferenceGEN getAsIPRJSpatialReferenceGEN()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIGeographicCoordinateSystem

public IGeographicCoordinateSystem getAsIGeographicCoordinateSystem()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIGeographicCoordinateSystem2

public IGeographicCoordinateSystem2 getAsIGeographicCoordinateSystem2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIGeographicCoordinateSystemEdit

public IGeographicCoordinateSystemEdit getAsIGeographicCoordinateSystemEdit()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReference

public ISpatialReference getAsISpatialReference()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReference2

public ISpatialReference2 getAsISpatialReference2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReference3

public ISpatialReference3 getAsISpatialReference3()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReferenceInfo

public ISpatialReferenceInfo getAsISpatialReferenceInfo()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIESRISpatialReference

public IESRISpatialReference getAsIESRISpatialReference()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIPRJSpatialReference

public IPRJSpatialReference getAsIPRJSpatialReference()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIClone

public IClone getAsIClone()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsICompareCoordinateSystems

public ICompareCoordinateSystems getAsICompareCoordinateSystems()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIPersist

public IPersist getAsIPersist()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIPersistStream

public IPersistStream getAsIPersistStream()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISRPersistStream

public ISRPersistStream getAsISRPersistStream()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISupportErrorInfo

public ISupportErrorInfo getAsISupportErrorInfo()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIControlPrecision

public IControlPrecision getAsIControlPrecision()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIControlPrecision2

public IControlPrecision2 getAsIControlPrecision2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReferenceTolerance

public ISpatialReferenceTolerance getAsISpatialReferenceTolerance()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISpatialReferenceResolution

public ISpatialReferenceResolution getAsISpatialReferenceResolution()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


equals

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


hashCode

public int hashCode()
the hashcode for this object


getName

public java.lang.String getName()
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: ISpatialReference2GEN
The name of this spatial reference component.

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

getAlias

public java.lang.String getAlias()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReference2GEN
The alias of this spatial reference component.

Specified by:
getAlias in interface ISpatialReference2GEN
Returns:
The alias
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAbbreviation

public java.lang.String getAbbreviation()
                                 throws java.io.IOException,
                                        AutomationException
Description copied from interface: ISpatialReference2GEN
The abbreviated name of this spatial reference component.

Specified by:
getAbbreviation in interface ISpatialReference2GEN
Returns:
The abbreviation
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getRemarks

public java.lang.String getRemarks()
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: ISpatialReference2GEN
The comment string of this spatial reference component.

Specified by:
getRemarks in interface ISpatialReference2GEN
Returns:
The remarks
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFactoryCode

public int getFactoryCode()
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISpatialReference2GEN
The factory code of the spatial reference.

Remarks

The factory code is an integer identifier that is unique by projection engine object type, such as a projected coordinate system. You can use a factory code in the ISpatialReferenceFactory::CreateProjectedCoordinateSystem method for example. If you create a custom projected coordinate system, the factory code is zero.

Specified by:
getFactoryCode in interface ISpatialReference2GEN
Returns:
The code
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hasXYPrecision

public boolean hasXYPrecision()
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true when (x,y) precision information has been defined.

Specified by:
hasXYPrecision in interface ISpatialReference2GEN
Returns:
The hasXYPrecision
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hasZPrecision

public boolean hasZPrecision()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true when z-value precision information has been defined.

Specified by:
hasZPrecision in interface ISpatialReference2GEN
Returns:
The hasZPrecision
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

hasMPrecision

public boolean hasMPrecision()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true when m-value precision information has been defined.

Specified by:
hasMPrecision in interface ISpatialReference2GEN
Returns:
The hasMPrecision
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isPrecisionEqual

public void isPrecisionEqual(ISpatialReference otherSR,
                             boolean[] isPrecisionEqual)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReference2GEN
Returns TRUE when the precision information for the two spatial references is the same.

Specified by:
isPrecisionEqual in interface ISpatialReference2GEN
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
isPrecisionEqual - The isPrecisionEqual (in/out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFalseOriginAndUnits

public void setFalseOriginAndUnits(double falseX,
                                   double falseY,
                                   double xyUnits)
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: ISpatialReference2GEN
Set the false origin and units.

Specified by:
setFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseX - The falseX (in)
falseY - The falseY (in)
xyUnits - The xyUnits (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZFalseOriginAndUnits

public void setZFalseOriginAndUnits(double falseZ,
                                    double zUnits)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: ISpatialReference2GEN
Set the Z false origin and units.

Specified by:
setZFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseZ - The falseZ (in)
zUnits - The zUnits (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setMFalseOriginAndUnits

public void setMFalseOriginAndUnits(double falseM,
                                    double mUnits)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: ISpatialReference2GEN
Set the measure false origin and units.

Specified by:
setMFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseM - The falseM (in)
mUnits - The mUnits (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getFalseOriginAndUnits

public void getFalseOriginAndUnits(double[] falseX,
                                   double[] falseY,
                                   double[] xyUnits)
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: ISpatialReference2GEN
Get the false origin and units.

Specified by:
getFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseX - The falseX (in/out: use single element array)
falseY - The falseY (in/out: use single element array)
xyUnits - The xyUnits (in/out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getZFalseOriginAndUnits

public void getZFalseOriginAndUnits(double[] falseZ,
                                    double[] zUnits)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: ISpatialReference2GEN
Get the Z false origin and units.

Specified by:
getZFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseZ - The falseZ (in/out: use single element array)
zUnits - The zUnits (in/out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getMFalseOriginAndUnits

public void getMFalseOriginAndUnits(double[] falseM,
                                    double[] mUnits)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: ISpatialReference2GEN
Get the measure false origin and units.

Specified by:
getMFalseOriginAndUnits in interface ISpatialReference2GEN
Parameters:
falseM - The falseM (in/out: use single element array)
mUnits - The mUnits (in/out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDomain

public void getDomain(double[] xMin,
                      double[] xMax,
                      double[] yMin,
                      double[] yMax)
               throws java.io.IOException,
                      AutomationException
Description copied from interface: ISpatialReference2GEN
Get the domain extent.

Specified by:
getDomain in interface ISpatialReference2GEN
Parameters:
xMin - The xMin (in/out: use single element array)
xMax - The xMax (in/out: use single element array)
yMin - The yMin (in/out: use single element array)
yMax - The yMax (in/out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setDomain

public void setDomain(double xMin,
                      double xMax,
                      double yMin,
                      double yMax)
               throws java.io.IOException,
                      AutomationException
Description copied from interface: ISpatialReference2GEN
Set the xy domain extent.

Specified by:
setDomain in interface ISpatialReference2GEN
Parameters:
xMin - The xMin (in)
xMax - The xMax (in)
yMin - The yMin (in)
yMax - The yMax (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getZDomain

public void getZDomain(double[] outZMin,
                       double[] outZMax)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: ISpatialReference2GEN
Get the Z domain extent.

Specified by:
getZDomain in interface ISpatialReference2GEN
Parameters:
outZMin - The outZMin (in/out: use single element array)
outZMax - The outZMax (in/out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setZDomain

public void setZDomain(double inZMin,
                       double inZMax)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: ISpatialReference2GEN
Set the z domain extent.

Specified by:
setZDomain in interface ISpatialReference2GEN
Parameters:
inZMin - The inZMin (in)
inZMax - The inZMax (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMDomain

public void getMDomain(double[] outMMin,
                       double[] outMMax)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: ISpatialReference2GEN
Get the measure domain extent.

Specified by:
getMDomain in interface ISpatialReference2GEN
Parameters:
outMMin - The outMMin (in/out: use single element array)
outMMax - The outMMax (in/out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMDomain

public void setMDomain(double inMMin,
                       double inMMax)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: ISpatialReference2GEN
Set the measure domain extent.

Specified by:
setMDomain in interface ISpatialReference2GEN
Parameters:
inMMin - The inMMin (in)
inMMax - The inMMax (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getZCoordinateUnit

public ILinearUnit getZCoordinateUnit()
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: ISpatialReference2GEN
The unit for the Z coordinate.

Specified by:
getZCoordinateUnit in interface ISpatialReference2GEN
Returns:
A reference to a com.esri.arcgis.geometry.ILinearUnit
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setZCoordinateUnit

public void setZCoordinateUnit(ILinearUnit zunit)
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: ISpatialReference2GEN
The unit for the Z coordinate.

Specified by:
setZCoordinateUnit in interface ISpatialReference2GEN
Parameters:
zunit - A reference to a com.esri.arcgis.geometry.ILinearUnit (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

changed

public void changed()
             throws java.io.IOException,
                    AutomationException
Description copied from interface: ISpatialReference2GEN
Notify this object that some of its parts have changed (parameter values, z unit, etc.).

Specified by:
changed in interface ISpatialReference2GEN
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isXYPrecisionEqual

public boolean isXYPrecisionEqual(ISpatialReference otherSR)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true if the XY precisions of the two spatial references are the same.

Specified by:
isXYPrecisionEqual in interface ISpatialReference2GEN
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isXYPrecisionEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMPrecisionEqual

public boolean isMPrecisionEqual(ISpatialReference otherSR)
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true if the measure precisions of the two spatial references are the same.

Specified by:
isMPrecisionEqual in interface ISpatialReference2GEN
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isMPrecisionEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isZPrecisionEqual

public boolean isZPrecisionEqual(ISpatialReference otherSR)
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReference2GEN
Returns true if the Z precisions of the two spatial references are the same.

Specified by:
isZPrecisionEqual in interface ISpatialReference2GEN
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isZPrecisionEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyXYPrecision

public void applyXYPrecision(_WKSPoint[] points)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReference2GEN
Applies the XY precision.

Specified by:
applyXYPrecision in interface ISpatialReference2GEN
Parameters:
points - A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyPrecision

public void applyPrecision(_WKSPoint[] points,
                           double[] ms,
                           double[] zs)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReference2GEN
Applies the measure and z value precisions.

Specified by:
applyPrecision in interface ISpatialReference2GEN
Parameters:
points - A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in)
ms - The ms (in)
zs - The zs (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getESRISpatialReferenceSize

public int getESRISpatialReferenceSize()
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: IESRISpatialReferenceGEN
The number of bytes required to hold the persistant representation of this spatial reference component.

Specified by:
getESRISpatialReferenceSize in interface IESRISpatialReferenceGEN
Returns:
The cBytes
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

importFromESRISpatialReference

public void importFromESRISpatialReference(java.lang.String str,
                                           int[] cBytesRead)
                                    throws java.io.IOException,
                                           AutomationException
Description copied from interface: IESRISpatialReferenceGEN
Defines this spatial reference component from the specified ESRISpatialReference buffer.

Specified by:
importFromESRISpatialReference in interface IESRISpatialReferenceGEN
Parameters:
str - The str (in)
cBytesRead - The cBytesRead (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

exportToESRISpatialReference

public void exportToESRISpatialReference(java.lang.String[] str,
                                         int[] cBytesWrote)
                                  throws java.io.IOException,
                                         AutomationException
Description copied from interface: IESRISpatialReferenceGEN
Exports this spatial reference component to a buffer.

Specified by:
exportToESRISpatialReference in interface IESRISpatialReferenceGEN
Parameters:
str - The str (out: use single element array)
cBytesWrote - The cBytesWrote (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPRJSpatialReferenceSize

public int getPRJSpatialReferenceSize()
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: IPRJSpatialReferenceGEN
The number of bytes required to hold the persistant representation of the spatial reference.

Specified by:
getPRJSpatialReferenceSize in interface IPRJSpatialReferenceGEN
Returns:
The cBytes
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

importSpatialReferenceFromPRJ

public void importSpatialReferenceFromPRJ(java.lang.String str,
                                          int[] cBytesRead)
                                   throws java.io.IOException,
                                          AutomationException
Description copied from interface: IPRJSpatialReferenceGEN
Defines the spatial reference from the specified ESRISpatialReference buffer.

Specified by:
importSpatialReferenceFromPRJ in interface IPRJSpatialReferenceGEN
Parameters:
str - The str (in)
cBytesRead - The cBytesRead (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

exportSpatialReferenceToPRJ

public void exportSpatialReferenceToPRJ(java.lang.String[] str,
                                        int[] cBytesWrote)
                                 throws java.io.IOException,
                                        AutomationException
Description copied from interface: IPRJSpatialReferenceGEN
Exports the spatial reference to a buffer.

Description

Converts a spatial reference object into a PRJ file. A PRJ file stores the coordinate system information for a coverage, GRID, or TIN.

A sample representation (reformatted for display) is below.

Projection    UTM   
Zone          10  
Datum         NAD83     
Zunits        NO     
Units         METERS     
Spheroid      GRS1980     
Xshift        0.0000000000     
Yshift        0.0000000000  
Parameters    

If the spatial reference cannot be represented with the workstation PRJ format, E_SPATIALREFERENCE_CANTDEFINESR is returned.

Specified by:
exportSpatialReferenceToPRJ in interface IPRJSpatialReferenceGEN
Parameters:
str - The str (out: use single element array)
cBytesWrote - The cBytesWrote (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUsage

public java.lang.String getUsage()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: IGeographicCoordinateSystem
The usage notes of this geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getUsage in interface IGeographicCoordinateSystem
Returns:
The usage
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDatum

public IDatum getDatum()
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IGeographicCoordinateSystem
The horizontal datum of this geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Description

Returns the vertical or horizontal datum of the vertical coordinate system as IHVDatum. QI with IVerticalDatum or IDatum. A vertical datum means that the VCS is gravity-related. A (horizontal) datum means that the VCS is ellipsoid/spheroid-based.

Specified by:
getDatum in interface IGeographicCoordinateSystem
Returns:
A reference to a com.esri.arcgis.geometry.IDatum
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPrimeMeridian

public IPrimeMeridian getPrimeMeridian()
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: IGeographicCoordinateSystem
The prime meridian of this geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPrimeMeridian in interface IGeographicCoordinateSystem
Returns:
A reference to a com.esri.arcgis.geometry.IPrimeMeridian
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCoordinateUnit

public IAngularUnit getCoordinateUnit()
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: IGeographicCoordinateSystem
The angular unit of this geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCoordinateUnit in interface IGeographicCoordinateSystem
Returns:
A reference to a com.esri.arcgis.geometry.IAngularUnit
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGCSParams

public void getGCSParams(double[] p_180,
                         double[] pDelta)
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: IGeographicCoordinateSystem2
Returns the 180 degrees equivalent and horizon delta in proper GCS units.

Supported Platforms

Windows, Solaris, Linux

Description

GetGCSParams calculates the edge of the horizon for a geographic coordinate system. For example, if your coordinate system is in decimal degrees, 180 is returned. If the units are in grads, 200 is returned. It also returns a delta, a small offset value, in the correct unit of measure.

Specified by:
getGCSParams in interface IGeographicCoordinateSystem2
Parameters:
p_180 - The p_180 (out: use single element array)
pDelta - The pDelta (out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getHorizon

public void getHorizon(_WKSEnvelope[] horizonEnvelope)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IGeographicCoordinateSystem2
Returns a standard horizon polygon, its envelope and whether it is inclusive or exclusive; the horizon polygon may be 0.

Supported Platforms

Windows, Solaris, Linux

Description

GetHorizon returns an envelope. See also the IProjectedCoordinateSystem2::GetHorizon method.

Specified by:
getHorizon in interface IGeographicCoordinateSystem2
Parameters:
horizonEnvelope - A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (in/out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getAngularConversionFactor

public double getAngularConversionFactor(IGeographicCoordinateSystem2 pDstGCS)
                                  throws java.io.IOException,
                                         AutomationException
Description copied from interface: IGeographicCoordinateSystem2
A factor to convert angular units from current GCS to destination GCS.

Supported Platforms

Windows, Solaris, Linux

Description

AngularConversionFactor calculates the value to convert the unit of measure in the current geographic coordinate system to the destination or target geographic coordinate system.

Specified by:
getAngularConversionFactor in interface IGeographicCoordinateSystem2
Parameters:
pDstGCS - A reference to a com.esri.arcgis.geometry.IGeographicCoordinateSystem2 (in)
Returns:
The pFactor
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLeftLongitude

public double getLeftLongitude(boolean inDegrees)
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IGeographicCoordinateSystem2
The least (left) longitude bounding a 360 degree range.

Supported Platforms

Windows, Solaris, Linux

Description

Returns or sets the minimum longitude value for a particular geographic coordinate system.

The ExtentHint, LeftLongitude, and RightLongitude properties are interrelated. Usually, data in a geographic coordinate system has longitude values between -180 and 180 if the unit of measure is degrees. Some datasets are designed to use a minimum longitude value of 0 or -360. The LeftLongitude property controls whether the data is considered as -360 to 0, -180 to 180, or 0 to 360. If two datasets have spatial references with different LeftLongitude values, one needs to be converted to match the other one. You can do this with the GeoNormalize method on IGeometry. ExtentHint is calculated internally by looking at the extent of the data. If the results used to set the LeftLongitude property are incorrect, you can use an envelope to set ExtentHint.

Specified by:
getLeftLongitude in interface IGeographicCoordinateSystem2
Parameters:
inDegrees - The inDegrees (in)
Returns:
The leftLongitude
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLeftLongitude

public void setLeftLongitude(boolean inDegrees,
                             double leftLongitude)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: IGeographicCoordinateSystem2
The least (left) longitude bounding a 360 degree range.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setLeftLongitude in interface IGeographicCoordinateSystem2
Parameters:
inDegrees - The inDegrees (in)
leftLongitude - The leftLongitude (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRightLongitude

public double getRightLongitude(boolean inDegrees)
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: IGeographicCoordinateSystem2
The greatest (right) longitude bounding a 360 degree range.

Supported Platforms

Windows, Solaris, Linux

Description

Returns or sets the maximum longitude value for a particular geographic coordinate system.

The ExtentHint, LeftLongitude, and RightLongitude properties are interrelated. Usually, data in a geographic coordinate system has longitude values between -180 and 180 if the unit of measure is degrees. Some datasets are designed to use a minimum longitude value of 0 or -360. The LeftLongitude property controls whether the data is considered as -360 to 0, -180 to 180, or 0 to 360. If two datasets have spatial references with different LeftLongitude values, one needs to be converted to match the other one. You can do this with the GeoNormalize method on IGeometry. ExtentHint is calculated internally by looking at the extent of the data. If the results used to set the LeftLongitude property are incorrect, you can use an envelope to set ExtentHint.

Specified by:
getRightLongitude in interface IGeographicCoordinateSystem2
Parameters:
inDegrees - The inDegrees (in)
Returns:
The rightLongitude
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setRightLongitude

public void setRightLongitude(boolean inDegrees,
                              double rightLongitude)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IGeographicCoordinateSystem2
The greatest (right) longitude bounding a 360 degree range.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRightLongitude in interface IGeographicCoordinateSystem2
Parameters:
inDegrees - The inDegrees (in)
rightLongitude - The rightLongitude (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExtentHint

public void setExtentHint(_WKSEnvelope rhs1)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: IGeographicCoordinateSystem2
Calculates a 360 degree longitude range from information in the specified envelope and the domain extent of the GCS.

Supported Platforms

Windows, Solaris, Linux

Description

The ExtentHint, LeftLongitude, and RightLongitude properties are interrelated. Usually, data in a geographic coordinate system has longitude values between -180 and 180 if the unit of measure is degrees. Some datasets are designed to use a minimum longitude value of 0 or -360. The LeftLongitude property controls whether the data is considered as -360 to 0, -180 to 180, or 0 to 360. If two datasets have spatial references with different LeftLongitude values, one needs to be converted to match the other one. You can do this with the GeoNormalize method on IGeometry. ExtentHint is calculated internally by looking at the extent of the data. If the results used to set the LeftLongitude property are incorrect, you can use an envelope to set ExtentHint.

Specified by:
setExtentHint in interface IGeographicCoordinateSystem2
Parameters:
rhs1 - A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

defineEx

public void defineEx(java.lang.String name,
                     java.lang.String alias,
                     java.lang.String abbreviation,
                     java.lang.String remarks,
                     java.lang.String useage,
                     IDatum datum,
                     IPrimeMeridian primeMeridian,
                     IAngularUnit geographicUnit)
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IGeographicCoordinateSystemEdit
Defines the properties for a geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Specified by:
defineEx in interface IGeographicCoordinateSystemEdit
Parameters:
name - The name (in)
alias - The alias (in)
abbreviation - The abbreviation (in)
remarks - The remarks (in)
useage - The useage (in)
datum - A reference to a com.esri.arcgis.geometry.IDatum (in)
primeMeridian - A reference to a com.esri.arcgis.geometry.IPrimeMeridian (in)
geographicUnit - A reference to a com.esri.arcgis.geometry.IAngularUnit (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

define

public void define(java.lang.Object name,
                   java.lang.Object alias,
                   java.lang.Object abbreviation,
                   java.lang.Object remarks,
                   java.lang.Object useage,
                   java.lang.Object datum,
                   java.lang.Object primeMeridian,
                   java.lang.Object geographicUnit)
            throws java.io.IOException,
                   AutomationException
Description copied from interface: IGeographicCoordinateSystemEdit
Defines the properties for a geographic coordinate system.

Supported Platforms

Windows, Solaris, Linux

Description

Use the Define method of IGeographicCoordinateSystemEdit to set the properties of a geographic coordinate system. A geographic coordinate system is defined (at minimum) by a name, an angular unit of measure, a horizontal datum, and a prime meridian.

Specified by:
define in interface IGeographicCoordinateSystemEdit
Parameters:
name - A Variant (in, optional, pass null if not required)
alias - A Variant (in, optional, pass null if not required)
abbreviation - A Variant (in, optional, pass null if not required)
remarks - A Variant (in, optional, pass null if not required)
useage - A Variant (in, optional, pass null if not required)
datum - A Variant (in, optional, pass null if not required)
primeMeridian - A Variant (in, optional, pass null if not required)
geographicUnit - A Variant (in, optional, pass null if not required)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

applyXYPrecision

public void applyXYPrecision(int cPoints,
                             _WKSPoint points)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReference2
Applies the XY precision.

Supported Platforms

Windows, Solaris, Linux

Description

The ApplyXYPrecision method snaps XY coordinate values to the spatial reference's coordinate grid. Normally, the geodatabase calls this method when appropriate, however you may need to use it when comparing locally generated coordinates against features coming from a geodatabase.

Remarks

The cPoints value is the number of points to which you wish to apply the XY precision (1/resolution). A WKSPoint is a structure that contains the X and Y values of a coordinate pair.

Specified by:
applyXYPrecision in interface ISpatialReference2
Parameters:
cPoints - The cPoints (in)
points - A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

applyPrecision

public void applyPrecision(int cPoints,
                           _WKSPoint points,
                           double[] ms,
                           double[] zs)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReference2
Applies the measure and z value precisions.

Supported Platforms

Windows, Solaris, Linux

Description

The ApplyPrecision method snaps measure or z values to the spatial reference grid. Each SpatialReference has an extent and a resolution (1/precision) for the xy, z, and measure values. You can set this information with the SetZDomain, SetMDomain, SetZFalseOriginAndUnits or the SetMFalseOriginAndUnits methods. If you use a Domain method, the resolution (1/precision) is calculated from the given extent. The FalseOriginAndUnits methods sets the lower bound of the extent and explicitly defines the precision (units, or 1/resolution) of the spatial reference.

Specified by:
applyPrecision in interface ISpatialReference2
Parameters:
cPoints - The cPoints (in)
points - A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
ms - The ms (in)
zs - The zs (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVerticalCoordinateSystem

public IVerticalCoordinateSystem getVerticalCoordinateSystem()
                                                      throws java.io.IOException,
                                                             AutomationException
Description copied from interface: ISpatialReference3
The VCS associated with this spatial reference.

Specified by:
getVerticalCoordinateSystem in interface ISpatialReference3
Returns:
A reference to a com.esri.arcgis.geometry.IVerticalCoordinateSystem
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setVerticalCoordinateSystemByRef

public void setVerticalCoordinateSystemByRef(IVerticalCoordinateSystem vcs)
                                      throws java.io.IOException,
                                             AutomationException
Description copied from interface: ISpatialReference3
The VCS associated with this spatial reference.

Specified by:
setVerticalCoordinateSystemByRef in interface ISpatialReference3
Parameters:
vcs - A reference to a com.esri.arcgis.geometry.IVerticalCoordinateSystem (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

projectionHint

public void projectionHint(IGeometry geometry,
                           ISpatialReference targetSR,
                           int[] direction,
                           ITransformation[] pXForm,
                           int[] projectionHint)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReference3
Projection hint for speeding up projections.

Specified by:
projectionHint in interface ISpatialReference3
Parameters:
geometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
targetSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in/out: use single element array)
pXForm - A reference to a com.esri.arcgis.geometry.ITransformation (in/out: use single element array)
projectionHint - The projectionHint (in/out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

esri_clone

public IClone esri_clone()
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: IClone
Clones the receiver and assigns the result to *clone.

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

assign

public void assign(IClone src)
            throws java.io.IOException,
                   AutomationException
Description copied from interface: IClone
Assigns the properties of src to the receiver.

Supported Platforms

Windows, Solaris, Linux

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.

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

isEqual

public boolean isEqual(IClone other)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IClone
Returns TRUE when the receiver and other have the same properties.

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

isIdentical

public boolean isIdentical(IClone other)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: IClone
Returns TRUE when the receiver and other are the same object.

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

isEqualNoVCS

public boolean isEqualNoVCS(ISpatialReference other)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: ICompareCoordinateSystems
Compares spatial references without considering any vertical coordinate system that may be associated with the spatial reference.

Specified by:
isEqualNoVCS in interface ICompareCoordinateSystems
Parameters:
other - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The equal
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEqualLeftLongitude

public boolean isEqualLeftLongitude(ISpatialReference other,
                                    boolean compareVCS)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: ICompareCoordinateSystems
For geographic coordinate systems, this version of IsEqual includes considers their left longitude properties. Same as IsEqual for projected coordinate systems.

Specified by:
isEqualLeftLongitude in interface ICompareCoordinateSystems
Parameters:
other - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
compareVCS - The compareVCS (in)
Returns:
The equal
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IPersist

Supported Platforms

Windows, Solaris, Linux

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isDirty

public void isDirty()
             throws java.io.IOException,
                    AutomationException
Description copied from interface: IPersistStream

Supported Platforms

Windows, Solaris, Linux

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Specified by:
isDirty in interface IPersistStream
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws java.io.IOException,
                 AutomationException
Description copied from interface: IPersistStream

Supported Platforms

Windows, Solaris, Linux

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws java.io.IOException,
                 AutomationException
Description copied from interface: IPersistStream

Supported Platforms

Windows, Solaris, Linux

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IPersistStream

Supported Platforms

Windows, Solaris, Linux

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getPrecisionSizeMax

public void getPrecisionSizeMax(int[] byteCount)
                         throws java.io.IOException,
                                AutomationException
Description copied from interface: ISRPersistStream
Returns the number of bytes needed to store the false x, false y and xy units of this spatial reference.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPrecisionSizeMax in interface ISRPersistStream
Parameters:
byteCount - The byteCount (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

loadPrecision

public void loadPrecision(IStream pStream)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISRPersistStream
Initializes this spatial reference's false x, false y and xy units from information in the specified stream.

Supported Platforms

Windows, Solaris, Linux

Specified by:
loadPrecision in interface ISRPersistStream
Parameters:
pStream - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

savePrecision

public void savePrecision(IStream pStream,
                          int fClearDirty)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISRPersistStream
Saves this spatial reference's false x, false y and xy units to the specified stream.

Supported Platforms

Windows, Solaris, Linux

Specified by:
savePrecision in interface ISRPersistStream
Parameters:
pStream - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: ISupportErrorInfo

Supported Platforms

Windows, Solaris, Linux

Description

Indicates whether the interface supports IErrorInfo.

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

isUsePrecision

public boolean isUsePrecision()
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IControlPrecision
Returns TRUE if the precision information can be used for snapping.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUsePrecision in interface IControlPrecision
Returns:
The usePrecision
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUsePrecision

public void setUsePrecision(boolean usePrecision)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IControlPrecision
Returns TRUE if the precision information can be used for snapping.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setUsePrecision in interface IControlPrecision
Parameters:
usePrecision - The usePrecision (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isHighPrecision

public boolean isHighPrecision()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IControlPrecision2
TRUE if a high precision integer grid is being used to round coordinate values. The scale factors of the spatial reference are re-scaled when this property is changed.

Specified by:
isHighPrecision in interface IControlPrecision2
Returns:
The isHighPrecision
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsHighPrecision

public void setIsHighPrecision(boolean isHighPrecision)
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IControlPrecision2
TRUE if a high precision integer grid is being used to round coordinate values. The scale factors of the spatial reference are re-scaled when this property is changed.

Specified by:
setIsHighPrecision in interface IControlPrecision2
Parameters:
isHighPrecision - The isHighPrecision (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultXYTolerance

public void setDefaultXYTolerance()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the default cluster tolerance used to control point coalescing in the X and Y dimensions (the equivalent of 1 mm in the current spatial reference units).

Specified by:
setDefaultXYTolerance in interface ISpatialReferenceTolerance
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMinimumXYTolerance

public void setMinimumXYTolerance()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the xy cluster tolerance to be 2.0 * resolution. Use this value for compatibility with pre-9.2 topological and relational operators.

Specified by:
setMinimumXYTolerance in interface ISpatialReferenceTolerance
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getXYTolerance

public double getXYTolerance()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReferenceTolerance
The xy tolerance used to control point coalescing in the X and Y dimensions.

Remarks

The XYTolerance property is the planar cluster tolerance associated with a spatial reference that will be used by geometric and relational operators. It has the same meaning as the cluster tolerance parameter presented in other parts of ArcGIS, including topology and Geoprocessing. The default value is 1mm (scaled to whatever units are associated with the spatial reference) for ProjectedCoordinateSystems and UnknownCoordinateSystems, and the angle corresponding to 1mm along the equator for geographic coordinate systems.

Setting the XYTolerance using this property provides finer control than SetDefaultXYTolerance or SetMinimumXYTolerance.    

The minimum allowable XYTolerance is 2.0 * XYResolution. XYTolerance is undefined (NaN) by after creating a spatial reference.  Operations on the spatial reference that define its coordinate grid will set the tolerance to its minimum value if its currently NaN. The tolerance is not modified if the grid resolution changes. To ensure that the XYTolerance specified is valid, use XYToleranceValid.

Specified by:
getXYTolerance in interface ISpatialReferenceTolerance
Returns:
The xYTolerance
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setXYTolerance

public void setXYTolerance(double xYTolerance)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReferenceTolerance
The xy tolerance used to control point coalescing in the X and Y dimensions.

Specified by:
setXYTolerance in interface ISpatialReferenceTolerance
Parameters:
xYTolerance - The xYTolerance (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultZTolerance

public void setDefaultZTolerance()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the default value for the Z cluster tolerance used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).

Specified by:
setDefaultZTolerance in interface ISpatialReferenceTolerance
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setMinimumZTolerance

public void setMinimumZTolerance()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the minimum value for the Z cluster tolerance (i.e., pre 9.2) used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).

Specified by:
setMinimumZTolerance in interface ISpatialReferenceTolerance
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getZTolerance

public double getZTolerance()
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: ISpatialReferenceTolerance
The tolerance used to control point coalescing strictly along the Z axis.

Remarks

The ZTolerance property controls clustering of the z-values of coordinates. It currently is used only in the context of the topology validation operation. It is expressed in the spatial reference's vertical coordinate system units. Setting the ZTolerance using this property provides finer control than SetDefaultZTolerance or SetMinimumZTolerance.    

The minimum allowable ZTolerance is 2 * ZResolution (defined by ISpatialReferenceResolution::ZResolution).  To ensure that the ZTolerance specified is valid, use ZToleranceValid after setting the ZTolerance using this property.

The ZTolerance is undefined (NaN) by default.  Methods that define the z coordinate grid will set the z tolerance to the minimum value if it isn't currently defined

Specified by:
getZTolerance in interface ISpatialReferenceTolerance
Returns:
The zTolerance
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZTolerance

public void setZTolerance(double zTolerance)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISpatialReferenceTolerance
The tolerance used to control point coalescing strictly along the Z axis.

Specified by:
setZTolerance in interface ISpatialReferenceTolerance
Parameters:
zTolerance - The zTolerance (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultMTolerance

public void setDefaultMTolerance()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the default tolerance used to determine equality of M values (2.0 * m resolution).

Specified by:
setDefaultMTolerance in interface ISpatialReferenceTolerance
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setMinimumMTolerance

public void setMinimumMTolerance()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Sets the minimum tolerance (i.e., pre 9.2) used to determine equality of M values (2.0 * m resolution).

Specified by:
setMinimumMTolerance in interface ISpatialReferenceTolerance
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getMTolerance

public double getMTolerance()
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: ISpatialReferenceTolerance
The tolerance used to determine equality of M values.

Remarks

The MTolerance method establishes or retrieves the value for the MTolerance of the spatial reference.  Setting the MTolerance using this property provides finer control than SetDefaultMTolerance or SetMinimumMTolerance.    

The minimum allowable MTolerance is 2.0 * MResolution.  To ensure that the MTolerance specified is valid, use MToleranceValid after setting the MTolerance using this property.

The MTolerance is undefined (NaN) by default.  

Specified by:
getMTolerance in interface ISpatialReferenceTolerance
Returns:
The mTolerance
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setMTolerance

public void setMTolerance(double mTolerance)
                   throws java.io.IOException,
                          AutomationException
Description copied from interface: ISpatialReferenceTolerance
The tolerance used to determine equality of M values.

Remarks

The MTolerance method establishes or retrieves the value for the MTolerance of the spatial reference.  Setting the MTolerance using this property provides finer control than SetDefaultMTolerance or SetMinimumMTolerance.    

The minimum allowable MTolerance is 2.0 * MResolution.  To ensure that the MTolerance specified is valid, use MToleranceValid after setting the MTolerance using this property.

The MTolerance is undefined (NaN) by default.  

Specified by:
setMTolerance in interface ISpatialReferenceTolerance
Parameters:
mTolerance - The mTolerance (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getXYToleranceValid

public int getXYToleranceValid()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns esriSRToleranceOK if the XY tolerance is well defined (not NaN) and >= the minimum XY tolerance.

Remarks

The xy grid resolution of a spatial reference can be altered independantly of the XYTolerance. Use this method to ensure that the current XYTolerance is defined and not less than the minimum legal value (2.0 * XYResolution).

Specified by:
getXYToleranceValid in interface ISpatialReferenceTolerance
Returns:
A com.esri.arcgis.geometry.esriSRToleranceEnum constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getZToleranceValid

public int getZToleranceValid()
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns true if the Z tolerance is well defined (not NaN) and >= the minimum Z tolerance.

Remarks

ZToleranceValid determines if the current ZTolerance associated with the spatial reference is valid.  A ZTolerance is considered valid when it is well defined (not NaN) and the Z tolerance is greater than or equal to the minimum ZTolerance. The minimum allowable ZTolerance is 2.0 * ZResolution. 

To ensure that the ZTolerance specified is valid, call ZToleranceValid after calling ISpatialReferenceTolerance::ZTolerance.

Specified by:
getZToleranceValid in interface ISpatialReferenceTolerance
Returns:
A com.esri.arcgis.geometry.esriSRToleranceEnum constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMToleranceValid

public int getMToleranceValid()
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns true if the M tolerance is well defined (not NaN) and >= the minimum M tolerance.

Remarks

The MToleranceValid property determines if the current M tolerance associated with the spatial reference is valid.  A M Tolerance is considered valid when it is well-defined (not NaN) and the M tolerance is greater than or equal to the minimum M tolerance. The minimum allowable MTolerance is 2.0 * MResolution. 

To ensure that the MTolerance specified is valid, call MToleranceValid after calling ISpatialReferenceTolerance::MTolerance.

Specified by:
getMToleranceValid in interface ISpatialReferenceTolerance
Returns:
A com.esri.arcgis.geometry.esriSRToleranceEnum constant
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

isXYToleranceEqual

public boolean isXYToleranceEqual(ISpatialReference otherSR)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns true if the XY tolerances of the two spatial references are the same.

Specified by:
isXYToleranceEqual in interface ISpatialReferenceTolerance
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isXYToleranceEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMToleranceEqual

public boolean isMToleranceEqual(ISpatialReference otherSR)
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns true if the measure tolerances of the two spatial references are the same.

Specified by:
isMToleranceEqual in interface ISpatialReferenceTolerance
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isMToleranceEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isZToleranceEqual

public boolean isZToleranceEqual(ISpatialReference otherSR)
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceTolerance
Returns true if the Z tolerances of the two spatial references are the same.

Specified by:
isZToleranceEqual in interface ISpatialReferenceTolerance
Parameters:
otherSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Returns:
The isZToleranceEqual
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructFromHorizon

public void constructFromHorizon()
                          throws java.io.IOException,
                                 AutomationException
Description copied from interface: ISpatialReferenceResolution
Defines the XY resolution and domain extent of this spatial reference based on the extent of its horizon. Low precision SRs will have minimum resolution of 1/10mm in current units.

Remarks

ConstructFromHorizon defines a domain extent and resolution sufficient to cover the horizon of a given coordinate system for high precision spatial references.  For low-precision spatial references the domain extent is centered on the horizon center. It does not define an extent for the Z- or M-domains; for these use methods available on ISpatialReference.

 

Projected Coordinate Systems

For a high precision ProjectedCoordinateSystem (PCS), ConstructFromHorizon defines the domain extent to be a square completely covering, and slightly larger than, the horizon extent of the PCS (which is an arbitrary rectangle). The scale factor (1/precision) is chosen to fit this domain.

For a low precision PCS, the center of the domain extent is aligned with the center of the horizon extent and expanded to achieve a target resolution of 1mm.

The example below lists high and low precision extents for WGS 1984 UTM Zone 11N.

Name Low Precision ProjectedCoordinateSystem High Precision ProjectedCoordinateSystem
MinX -573,741.824 -5,120,900.0
MinY -1,073,741.824 -9,998,100.0
MaxX 1,573,741.823 14,875,300.0
MaxY 1,073,741.823 9,998,100.0
Resolution 0.001 2.2 x 10^-9

 

Geographic Coordinate Systems

For a high precision GeographicCoordinateSystem (GCS), ConstructFromHorizon produces the square domain (-400, -400, 400, 400) (expressed in the units of the SR).  

For a low precision GCS the upper right hand corner is adjusted to achieve a default resolution of 1/500 of an arc-second.

Name Low Precision GeographicCoordinateSystem High Precision GeographicCoordinateSystem
MinX -400 -400
MinY -400 -400
MaxX 793.046469444444 400
MaxY 793.046469444444 400
Resolution 5.55555555555556E-07 (1/500 arc-second) 8.8 x 10^-14

 

Unknown Coordinate Systems

For an UnknownCoordinateSystem (UCS), the "horizon" is defined to be a square that produces a resolution of 1 millimeter for a low precision UCS or 1/10 mm for a high precision UCS.

The example below lists high and low precision extents for an UnknownCoordinateSystem.

Name Low Precision UnknownCoordinateSystem High Precision UnknownCoordinateSystem
MinX -1,073,741.8245 -450,359,962,737.05
MinY -1,073,741.8245 -450,359,962,737.05
MaxX 1,073,741.8225 450,359,962,737.049
MaxY 1,073,741.8225 450,359,962,737.049
Resolution 0.001 0.0001

 

Specified by:
constructFromHorizon in interface ISpatialReferenceResolution
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setXYResolution

public void setXYResolution(boolean bStandardUnits,
                            double xYResolution)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: ISpatialReferenceResolution
The XY resolution (distance in SR units between distinguishable grid points) of this spatial reference. Reported in meters for PCS/UCS and degrees for GCS when bStandardUnits is true or in current units of SR when it is false.

Specified by:
setXYResolution in interface ISpatialReferenceResolution
Parameters:
bStandardUnits - The bStandardUnits (in)
xYResolution - The xYResolution (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getXYResolution

public double getXYResolution(boolean bStandardUnits)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: ISpatialReferenceResolution
The XY resolution (distance in SR units between distinguishable grid points) of this spatial reference. Reported in meters for PCS/UCS and degrees for GCS when bStandardUnits is true or in current units of SR when it is false.

Remarks

XYResolution determines the distinguishable distance between two points in horizontal (XY) space. It is the inverse of the scale factor.

XYResolution can be expressed in standard units or units defined by the spatial reference.  For ProjectedCoordinateSystems and UnknownCoordinateSystems the standard unit is expressed in meters; for GeographicCoordinateSystems the standard unit is expressed in degrees.

The default XYResolution for ProjectedCoordinateSystems and UnknownCoordinateSystems is either 1 mm (low-precision spatial reference) or 0.1 mm (high-precision spatial reference). For GeographicCoordinateSystems the default XYResolution is 1/500 arc-second (low-precision spatial reference) or 1/10000 arc-second (high-precision spatial reference).  The precision of a spatial reference is determined using IControlPrecision2::UseHighPrecision. At ArcGIS 9.2 all spatial references are created using high precision by default.

Altering this property preserves the current false origin of the spatial reference if it has already been defined. Otherwise, the ConstructFromHorizon method is used to define a false origin.

Use ISpatialReferenceResolution::XYResolution(False) to return or set the XYResolution in the units defined as part of the spatial reference.

The default value for XYResolution is NaN (not-a-number) for a new spatial reference.  If the XYResolution has not been set previously, calls to ISpatialReference::SetDomain or ISpatialReference::SetFalseOriginAndUnits will set the XYResolution to the minimum allowable value (2.0/XYunits).

Specified by:
getXYResolution in interface ISpatialReferenceResolution
Parameters:
bStandardUnits - The bStandardUnits (in)
Returns:
The xYResolution
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultXYResolution

public void setDefaultXYResolution()
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: ISpatialReferenceResolution
defaults: PCS(hi): 1/10 mm; PCS(lo): 1 mm; GCS(hi): 1/10,000 arc-second; GCS(lo): 1/500 arc-second; UCS(hi): 1/10 mm (assumed); UCS(lo): 1 mm (assumed).

Specified by:
setDefaultXYResolution in interface ISpatialReferenceResolution
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZResolution

public void setZResolution(boolean bStandardUnits,
                           double zResolution)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReferenceResolution
The Z resolution (height/depth distance between distinguishable grid points) of this spatial reference. Reported in meters when bStandardUnits is true or in current units of SR when it is false.

Specified by:
setZResolution in interface ISpatialReferenceResolution
Parameters:
bStandardUnits - The bStandardUnits (in)
zResolution - The zResolution (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getZResolution

public double getZResolution(boolean bStandardUnits)
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReferenceResolution
The Z resolution (height/depth distance between distinguishable grid points) of this spatial reference. Reported in meters when bStandardUnits is true or in current units of SR when it is false.

Remarks

ZResolution resizes the existing grid about its center to achieve a target resolution of 1mm for low precision spatial references or 1/10 mm for high precision.  This property provides finer control for specifying the resolution than does ISpatialReferenceResolution::SetDefaultZResolution. The default ZResolution is defined in standard units as 0.1 mm for high and low precision spatial references, or 1 mm for low precision spatial references.  For ProjectedCoordinateSystems and GeographicCoordinateSystems, that default value is scaled to whatever units are associated with the spatial reference's VerticalCoordinateSystem property.

Use ISpatialReferenceResolution::ZResolution(False) to specify or retrieve the Z resolution in units defined by the vertical coordinate system. 

The default value for ZResolution is NaN for a new spatial reference.  If the ZResolution is not well-defined (ZResolution is NaN), calls to ISpatialReference::SetZDomain or ISpatialReference::SetZFalseOriginAndUnits will set the ZResolution to the minimum allowable value (2.0/zUnits).  If the ZResolution was already defined, these methods will not alter the ZResolution.

Specified by:
getZResolution in interface ISpatialReferenceResolution
Parameters:
bStandardUnits - The bStandardUnits (in)
Returns:
The zResolution
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultZResolution

public void setDefaultZResolution()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReferenceResolution
Sets the z coordinate grid resolution to 1 mm for a low precision spatial reference or 1/10 mm for a high precision spatial reference.

Specified by:
setDefaultZResolution in interface ISpatialReferenceResolution
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMResolution

public void setMResolution(double interval)
                    throws java.io.IOException,
                           AutomationException
Description copied from interface: ISpatialReferenceResolution
The M, or measure, resolution of this spatial reference.

Specified by:
setMResolution in interface ISpatialReferenceResolution
Parameters:
interval - The interval (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getMResolution

public double getMResolution()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: ISpatialReferenceResolution
The M, or measure, resolution of this spatial reference.

Remarks

MResolution resizes the existing grid about its center to accommodate the new resolution specified.  This property provides finer control for specifying the resolution than does ISpatialReferenceResolution::SetDefaultMResolution. The default MResolution is defined as 0.001 units for high and low precision spatial references.

The default value for MResolution is NaN for a new spatial reference.  If the MResolution is not well-defined (MResolution is NaN), calls to ISpatialReference::SetMDomain or ISpatialReference::SetMFalseOriginAndUnits will set the MResolution to the minimum allowable value (2.0/mUnits).  If the MResolution was already defined, these methods will not alter the MResolution.

 

Specified by:
getMResolution in interface ISpatialReferenceResolution
Returns:
The interval
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setDefaultMResolution

public void setDefaultMResolution()
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: ISpatialReferenceResolution
Sets the m coordinate grid resolution to 1 mm for a low precision spatial reference or 1/10 mm for a high precision spatial reference.

Specified by:
setDefaultMResolution in interface ISpatialReferenceResolution
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.