com.esri.arcgis.geometry
Class ProjectedCoordinateSystem

java.lang.Object
  extended by com.esri.arcgis.geometry.ProjectedCoordinateSystem
All Implemented Interfaces:
ICompareCoordinateSystems, IControlPrecision, IControlPrecision2, IESRISpatialReference, IESRISpatialReferenceGEN, IESRISpatialReferenceGEN2, IPRJSpatialReference, IPRJSpatialReferenceGEN, IProjectedCoordinateSystem, IProjectedCoordinateSystem2, IProjectedCoordinateSystem3, IProjectedCoordinateSystem4, IProjectedCoordinateSystem4GEN, IProjectedCoordinateSystem5, IProjectedCoordinateSystemEdit, ISpatialReference, ISpatialReference2, ISpatialReference2GEN, ISpatialReference3, ISpatialReference4, ISpatialReferenceAuthority, ISpatialReferenceInfo, ISpatialReferenceResolution, ISpatialReferenceTolerance, ISRPersistStream, com.esri.arcgis.interop.RemoteObjRef, IClone, IPersist, IPersistStream, ISupportErrorInfo, Externalizable, Serializable

public class ProjectedCoordinateSystem
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IProjectedCoordinateSystem4GEN, ISpatialReference2GEN, IESRISpatialReferenceGEN, IESRISpatialReferenceGEN2, IPRJSpatialReferenceGEN, IProjectedCoordinateSystem, IProjectedCoordinateSystem2, IProjectedCoordinateSystem3, IProjectedCoordinateSystem4, IProjectedCoordinateSystem5, IProjectedCoordinateSystemEdit, ISpatialReference, ISpatialReference2, ISpatialReference3, ISpatialReference4, ISpatialReferenceInfo, IESRISpatialReference, IPRJSpatialReference, IClone, ICompareCoordinateSystems, IPersist, IPersistStream, ISRPersistStream, ISupportErrorInfo, IControlPrecision, IControlPrecision2, ISpatialReferenceTolerance, ISpatialReferenceResolution, ISpatialReferenceAuthority, Externalizable

Creates a projected coordinate system.

Remarks

The IClone::IsIdentical method is not implemented.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
ProjectedCoordinateSystem()
          Constructs a ProjectedCoordinateSystem using ArcGIS Engine.
ProjectedCoordinateSystem(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
ProjectedCoordinateSystem theProjectedCoordinateSystem = (ProjectedCoordinateSystem) obj;
 
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(Object name, Object alias, Object abbreviation, Object remarks, Object useage, Object gcs, Object projectedUnit, Object projection, Object parameters)
          Defines the properties of a projected coordinate system.
 void define(String authorityName, int authorityCode, String authorityVersion)
          Defines the authority-related metadata properties for this spatial reference object.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 void exportSpatialReferenceToPRJ(String[] str, int[] cBytesWrote)
          Exports the spatial reference to a buffer.
 void exportToESRISpatialReference(String[] str, int[] cBytesWrote)
          Exports this spatial reference component to a buffer.
 void exportToESRISpatialReference2(String[] str, int[] cBytesWrote)
          Exports this spatial reference component to a buffer.
 void forward(_WKSPoint[][] points)
          Projects points from geographic to planar coordinates.
 void forward(int count, _WKSPoint points)
          Projects points from geographic to planar coordinates.
 String getAbbreviation()
          The abbreviated name of this spatial reference component.
 String getAlias()
          The alias of this spatial reference component.
 String getAuthorityName()
          The name of the defining authority for this object.
 double getAzimuth()
          The azimuth of a projected coordinate system.
 double getCentralLongitude()
          Returns CentralLongitude of the projected coordinate system.
 double getCentralMeridian(boolean inDegrees)
          The central meridian (Lambda0) of a projected coordinate system.
 double getCentralParallel()
          The central parallel (Phi 0) of a projected coordinate system.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 int getCode()
          The code identifying this object relative to its authority.
 double getConvergenceAngle(_WKSPoint pt, boolean trueToGridNorth)
          Returns the grid convergence angle .
 ILinearUnit getCoordinateUnit()
          The linear unit of a projected 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.
 double getFalseEasting()
          The false easting (X0) of a projected coordinate system.
 double getFalseNorthing()
          The false northing (Y0) of a projected coordinate system.
 void getFalseOriginAndUnits(double[] falseX, double[] falseY, double[] xyUnits)
          Get the false origin and units.
 void getGCSParams(double[] p_180, double[] pDelta)
          Returns 180 degrees and horizon delta in proper GCS units.
 IGeographicCoordinateSystem getGeographicCoordinateSystem()
          The geographic coordinate system of a projected coordinate system.
 double getHeight()
          The height above the sphere in projected coordinate system units.
 IGeometry getHorizon(_WKSEnvelope[] horizonEnvelope, boolean[] inclusive)
          Returns the standard horizon polygon, its envelope, and whether it is inclusive or exclusive; the horizon polygon may be 0.
 esriSRHorizon getHorizon(int horizonIndex)
          The mathematical limits of a projected coordinate system.
 IGeometry getHorizon2(_WKSEnvelope[] horizonEnvelope, boolean[] inclusive)
          Returns the standard horizon polygon, its envelope, and whether it is inclusive or exclusive; the horizon polygon may be 0.
 int getHorizonCount()
          The number of shapes that describe the limits of a ProjCS.
 double getLatitudeOf1st()
          The latitude of the first point (Phi 1) of a projected coordinate system.
 double getLatitudeOf2nd()
          The latitude of the second point (Phi 2) of a projected coordinate system.
 double getLatitudeOfCenter()
          The latitude of center (Phi C) of a projected coordinate system.
 double getLatitudeOfOrigin()
          The latitude of the origin (Phi 0) of a projected coordinate system.
 double getLongitudeOf1st()
          The longitude of the first point (Lambda 1) of a projected coordinate system.
 double getLongitudeOf2nd()
          The longitude of the second point (Lambda 2) of a projected coordinate system.
 double getLongitudeOfCenter()
          The longitude of center (Lam C) of a projected coordinate system.
 double getLongitudeOfOrigin()
          The longitude of origin (Lambda0) of a projected coordinate system.
 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.
 String getName()
          The name of this spatial reference component.
 _WKSPoint getNorthPole()
          Returns north pole in projected coordinates, or an empty point if north pole is outside the PCS horizon.
 int getNorthPoleGeometry()
          Returns type of north pole geometry.
 int getNorthPoleLocation()
          Returns type of location of north pole with respect to PCS horizon.
 void getParameters(IParameter[] parameters)
          Deprecated. This method uses C style arrays which is not supported in the Java API for ArcObjects. It is replaced by IProjectedCoordinateSystem4GEN.getParameters(com.esri.arcgis.geometry.IParameter[][]).
 void getParameters(IParameter[][] parameters)
          Gets the map projection parameters of a projected coordinate system.
 IGeometry getPCSHorizon(_WKSEnvelope[] horizonEnvelope, boolean[] inclusive)
          Returns PCS horizon polygon, its envelope and whether it is inclusive or exclusive; the horizon polygon may be 0.
 void getPrecisionSizeMax(int[] byteCount)
          Returns the number of bytes needed to store the false x, false y and xy units of this spatial reference.
 int getPRJSpatialReferenceSize()
          The number of bytes required to hold the persistant representation of the spatial reference.
 IProjection getProjection()
          The map projection of a projected coordinate system.
 double getPseudoStandardParallel1()
          The latitude on an oblique spheroid that defines the oblique cone for a Krovak projected coordinate system.
 String getRemarks()
          The comment string of this spatial reference component.
 double getRotation()
          The rotation value used to change the axis directions in a Krovak projected coordinate system.
 double getScaleFactor()
          The scale factor (K0) of a projected coordinate system.
 IGeometry getShiftedHorizon(int shift)
          Returns the horizon polygon, shifted once or twice, west/east of standard horizon for a negative/positive shift.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 _WKSPoint getSouthPole()
          Returns south pole in projected coordinates, or an empty point if south pole is outside the PCS horizon.
 int getSouthPoleGeometry()
          Returns type of south pole geometry.
 int getSouthPoleLocation()
          Returns type of location of south pole with respect to PCS horizon.
 double getStandardParallel1()
          The first parallel (Phi 1) of a projected coordinate system.
 double getStandardParallel2()
          The second parallel (Phi 2) of a projected coordinate system.
 String getUsage()
          The usage notes of a projected coordinate system.
 String getVersion()
          The version of this spatial reference object.
 IVerticalCoordinateSystem getVerticalCoordinateSystem()
          The VCS associated with this spatial reference.
 double getXScaleFactor()
          The X axis scale value used to flip the axis direction in a Krovak projected coordinate system.
 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.
 double getYScaleFactor()
          The Y axis scale value used to flip the axis direction in a Krovak projected coordinate system.
 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.
 double getZToXYFactor()
          Conversion factor from Z units to XY units.
 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(String str, int[] cBytesRead)
          Defines this spatial reference component from the specified ESRISpatialReference buffer.
 void importSpatialReferenceFromPRJ(String str, int[] cBytesRead)
          Defines the spatial reference from the specified ESRISpatialReference buffer.
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 void inverse(_WKSPoint[][] points)
          Projects points from planar to geographic coordinates.
 void inverse(int count, _WKSPoint points)
          Projects points from planar to geographic coordinates.
 void inverseWithShift(double shift, _WKSPoint[][] points)
          Projects points from planar to geographic coordinates.
 void inverseWithShift(double shift, int count, _WKSPoint points)
          Projects points from planar to geographic coordinates.
 boolean isCentralLongitudeVertical()
          Returns true if central meridian is a straight vertical line.
 void isDirty()
          isDirty
 boolean isEqual(IClone other)
          Indicates if 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 isEqualNoNames(IProjectedCoordinateSystem pOther)
          Compares two projected coordinate systems for equality but ignores their names.
 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 isHorizonConvexHull()
          Returns true if PCS horizon is convex.
 boolean isHorizonEdgeDuplicated()
          Returns true if some edges of PCS horizon project inversely to identical lines.
 boolean isHorizonEntireWorld()
          Returns true if PCS horizon contains the entire world.
 boolean isIdentical(IClone other)
          Indicates if 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)
          load
 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 putLinearAndAngularUnits(ILinearUnit linearUnit, IAngularUnit angularUnit)
          Modify linear unit of projected coordinates and angular unit of associated geographic coordinates.
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void savePrecision(IStream pStream, int fClearDirty)
          Saves this spatial reference's false x, false y and xy units to the specified stream.
 void setAzimuth(double azimuth)
          The azimuth of a projected coordinate system.
 void setCentralMeridian(boolean inDegrees, double centralMeridian)
          The central meridian (Lambda0) of a projected coordinate system.
 void setCentralParallel(double centralParallel)
          The central parallel (Phi 0) of a projected coordinate system.
 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 setFalseEasting(double falseEasting)
          The false easting (X0) of a projected coordinate system.
 void setFalseNorthing(double falseNorthing)
          The false northing (Y0) of a projected coordinate system.
 void setFalseOriginAndUnits(double falseX, double falseY, double xyUnits)
          Set the false origin and units.
 void setHeight(double height)
          The height above the sphere in projected coordinate system units.
 void setIsHighPrecision(boolean isHighPrecision)
          TRUE if a high precision integer grid is being used to round coordinate values.
 void setLatitudeOf1st(double standardLongitude1)
          The latitude of the first point (Phi 1) of a projected coordinate system.
 void setLatitudeOf2nd(double latitudeOf2nd)
          The latitude of the second point (Phi 2) of a projected coordinate system.
 void setLatitudeOfCenter(double latitudeOfCenter)
          The latitude of center (Phi C) of a projected coordinate system.
 void setLatitudeOfOrigin(double latitudeOfOrigin)
          The latitude of the origin (Phi 0) of a projected coordinate system.
 void setLongitudeOf1st(double longitudeOf1st)
          The longitude of the first point (Lambda 1) of a projected coordinate system.
 void setLongitudeOf2nd(double longitudeOf2nd)
          The longitude of the second point (Lambda 2) of a projected coordinate system.
 void setLongitudeOfCenter(double longitudeOfCenter)
          The longitude of center (Lam C) of a projected coordinate system.
 void setLongitudeOfOrigin(double longitudeOfOrigin)
          The longitude of origin (Lambda0) of a projected coordinate system.
 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 setPseudoStandardParallel1(double psp1)
          The latitude on an oblique spheroid that defines the oblique cone for a Krovak projected coordinate system.
 void setRotation(double r)
          The rotation value used to change the axis directions in a Krovak projected coordinate system.
 void setScaleFactor(double scaleFactor)
          The scale factor (K0) of a projected coordinate system.
 void setStandardParallel1(double standardParallel1)
          The first parallel (Phi 1) of a projected coordinate system.
 void setStandardParallel2(double standardParallel2)
          The second parallel (Phi 2) of a projected coordinate system.
 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 setXScaleFactor(double xs)
          The X axis scale value used to flip the axis direction in a Krovak projected coordinate system.
 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 setYScaleFactor(double ys)
          The Y axis scale value used to flip the axis direction in a Krovak projected coordinate system.
 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.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

ProjectedCoordinateSystem

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

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

ProjectedCoordinateSystem

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

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

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

getClsid

public static String getClsid()
getClsid.


equals

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

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getName

public String getName()
               throws IOException,
                      AutomationException
The name of this spatial reference component.

Product Availability

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

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

getAlias

public String getAlias()
                throws IOException,
                       AutomationException
The alias of this spatial reference component.

Product Availability

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

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

getAbbreviation

public String getAbbreviation()
                       throws IOException,
                              AutomationException
The abbreviated name of this spatial reference component.

Product Availability

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

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

getRemarks

public String getRemarks()
                  throws IOException,
                         AutomationException
The comment string of this spatial reference component.

Product Availability

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

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

getFactoryCode

public int getFactoryCode()
                   throws IOException,
                          AutomationException
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. If you create a custom projected coordinate system, the factory code is zero.

Product Availability

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

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

hasXYPrecision

public boolean hasXYPrecision()
                       throws IOException,
                              AutomationException
Returns true when (x,y) precision information has been defined.

Product Availability

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

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

hasZPrecision

public boolean hasZPrecision()
                      throws IOException,
                             AutomationException
Returns true when z-value precision information has been defined.

Product Availability

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

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

hasMPrecision

public boolean hasMPrecision()
                      throws IOException,
                             AutomationException
Returns true when m-value precision information has been defined.

Product Availability

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

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

isPrecisionEqual

public void isPrecisionEqual(ISpatialReference otherSR,
                             boolean[] isPrecisionEqual)
                      throws IOException,
                             AutomationException
Returns TRUE when the precision information for the two spatial references is the same.

Product Availability

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

Specified by:
isPrecisionEqual in interface IProjectedCoordinateSystem4GEN
Specified by:
isPrecisionEqual in interface ISpatialReference
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:
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 IOException,
                                   AutomationException
Set the false origin and units.

Product Availability

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

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

setZFalseOriginAndUnits

public void setZFalseOriginAndUnits(double falseZ,
                                    double zUnits)
                             throws IOException,
                                    AutomationException
Set the Z false origin and units.

Product Availability

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

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

setMFalseOriginAndUnits

public void setMFalseOriginAndUnits(double falseM,
                                    double mUnits)
                             throws IOException,
                                    AutomationException
Set the measure false origin and units.

Product Availability

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

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

getFalseOriginAndUnits

public void getFalseOriginAndUnits(double[] falseX,
                                   double[] falseY,
                                   double[] xyUnits)
                            throws IOException,
                                   AutomationException
Get the false origin and units.

Product Availability

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

Specified by:
getFalseOriginAndUnits in interface IProjectedCoordinateSystem4GEN
Specified by:
getFalseOriginAndUnits in interface ISpatialReference
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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getZFalseOriginAndUnits

public void getZFalseOriginAndUnits(double[] falseZ,
                                    double[] zUnits)
                             throws IOException,
                                    AutomationException
Get the Z false origin and units.

Product Availability

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

Specified by:
getZFalseOriginAndUnits in interface IProjectedCoordinateSystem4GEN
Specified by:
getZFalseOriginAndUnits in interface ISpatialReference
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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMFalseOriginAndUnits

public void getMFalseOriginAndUnits(double[] falseM,
                                    double[] mUnits)
                             throws IOException,
                                    AutomationException
Get the measure false origin and units.

Product Availability

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

Specified by:
getMFalseOriginAndUnits in interface IProjectedCoordinateSystem4GEN
Specified by:
getMFalseOriginAndUnits in interface ISpatialReference
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:
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 IOException,
                      AutomationException
Get the domain extent.

Product Availability

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

Specified by:
getDomain in interface IProjectedCoordinateSystem4GEN
Specified by:
getDomain in interface ISpatialReference
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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDomain

public void setDomain(double xMin,
                      double xMax,
                      double yMin,
                      double yMax)
               throws IOException,
                      AutomationException
Set the xy domain extent.

Product Availability

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

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

getZDomain

public void getZDomain(double[] outZMin,
                       double[] outZMax)
                throws IOException,
                       AutomationException
Get the Z domain extent.

Product Availability

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

Specified by:
getZDomain in interface IProjectedCoordinateSystem4GEN
Specified by:
getZDomain in interface ISpatialReference
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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setZDomain

public void setZDomain(double inZMin,
                       double inZMax)
                throws IOException,
                       AutomationException
Set the z domain extent.

Product Availability

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

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

getMDomain

public void getMDomain(double[] outMMin,
                       double[] outMMax)
                throws IOException,
                       AutomationException
Get the measure domain extent.

Product Availability

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

Specified by:
getMDomain in interface IProjectedCoordinateSystem4GEN
Specified by:
getMDomain in interface ISpatialReference
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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMDomain

public void setMDomain(double inMMin,
                       double inMMax)
                throws IOException,
                       AutomationException
Set the measure domain extent.

Product Availability

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

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

getZCoordinateUnit

public ILinearUnit getZCoordinateUnit()
                               throws IOException,
                                      AutomationException
The unit for the Z coordinate.

Product Availability

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

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

setZCoordinateUnit

public void setZCoordinateUnit(ILinearUnit zunit)
                        throws IOException,
                               AutomationException
The unit for the Z coordinate.

Product Availability

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

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

changed

public void changed()
             throws IOException,
                    AutomationException
Notify this object that some of its parts have changed (parameter values, z unit, etc.).

Product Availability

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

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

getUsage

public String getUsage()
                throws IOException,
                       AutomationException
The usage notes of a projected coordinate system.

Product Availability

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

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

getGeographicCoordinateSystem

public IGeographicCoordinateSystem getGeographicCoordinateSystem()
                                                          throws IOException,
                                                                 AutomationException
The geographic coordinate system of a projected coordinate system.

Product Availability

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

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

getProjection

public IProjection getProjection()
                          throws IOException,
                                 AutomationException
The map projection of a projected coordinate system.

Product Availability

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

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

getParameters

public void getParameters(IParameter[][] parameters)
                   throws IOException,
                          AutomationException
Gets the map projection parameters of a projected coordinate system. The array size needs to be esriSR_MaxParameterCountPrivate.

Product Availability

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

Specified by:
getParameters in interface IProjectedCoordinateSystem4GEN
Parameters:
parameters - A reference to a com.esri.arcgis.geometry.IParameter array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCoordinateUnit

public ILinearUnit getCoordinateUnit()
                              throws IOException,
                                     AutomationException
The linear unit of a projected coordinate system.

Product Availability

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

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

forward

public void forward(_WKSPoint[][] points)
             throws IOException,
                    AutomationException
Projects points from geographic to planar coordinates.

Product Availability

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

Specified by:
forward in interface IProjectedCoordinateSystem4GEN
Parameters:
points - A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

inverse

public void inverse(_WKSPoint[][] points)
             throws IOException,
                    AutomationException
Projects points from planar to geographic coordinates.

Product Availability

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

Specified by:
inverse in interface IProjectedCoordinateSystem4GEN
Parameters:
points - A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHorizonCount

public int getHorizonCount()
                    throws IOException,
                           AutomationException
The number of shapes that describe the limits of a ProjCS.

Remarks

Obsolete. Use IProjectedCoordinateSystem2::GetHorizon.

Product Availability

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

Specified by:
getHorizonCount in interface IProjectedCoordinateSystem
Specified by:
getHorizonCount in interface IProjectedCoordinateSystem4GEN
Returns:
The horizonCount
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHorizon

public esriSRHorizon getHorizon(int horizonIndex)
                         throws IOException,
                                AutomationException
The mathematical limits of a projected coordinate system.

Remarks

GetHorizon returns, in geographic coordinate system coordinates and unit of measure, the valid geometry of a projected coordinate system. The method also returns whether the geometry should be considered inclusive or exclusive, and its envelope.

Product Availability

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

Specified by:
getHorizon in interface IProjectedCoordinateSystem
Specified by:
getHorizon in interface IProjectedCoordinateSystem4GEN
Parameters:
horizonIndex - The horizonIndex (in)
Returns:
A Structure: com.esri.arcgis.geometry.esriSRHorizon
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentralMeridian

public double getCentralMeridian(boolean inDegrees)
                          throws IOException,
                                 AutomationException
The central meridian (Lambda0) of a projected coordinate system.

Product Availability

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

Specified by:
getCentralMeridian in interface IProjectedCoordinateSystem
Specified by:
getCentralMeridian in interface IProjectedCoordinateSystem4GEN
Parameters:
inDegrees - The inDegrees (in)
Returns:
The centralMeridian
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCentralMeridian

public void setCentralMeridian(boolean inDegrees,
                               double centralMeridian)
                        throws IOException,
                               AutomationException
The central meridian (Lambda0) of a projected coordinate system.

Product Availability

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

Specified by:
setCentralMeridian in interface IProjectedCoordinateSystem
Specified by:
setCentralMeridian in interface IProjectedCoordinateSystem4GEN
Parameters:
inDegrees - The inDegrees (in)
centralMeridian - The centralMeridian (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLongitudeOfOrigin

public double getLongitudeOfOrigin()
                            throws IOException,
                                   AutomationException
The longitude of origin (Lambda0) of a projected coordinate system.

Product Availability

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

Specified by:
getLongitudeOfOrigin in interface IProjectedCoordinateSystem
Specified by:
getLongitudeOfOrigin in interface IProjectedCoordinateSystem4GEN
Returns:
The longitudeOfOrigin
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLongitudeOfOrigin

public void setLongitudeOfOrigin(double longitudeOfOrigin)
                          throws IOException,
                                 AutomationException
The longitude of origin (Lambda0) of a projected coordinate system.

Product Availability

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

Specified by:
setLongitudeOfOrigin in interface IProjectedCoordinateSystem
Specified by:
setLongitudeOfOrigin in interface IProjectedCoordinateSystem4GEN
Parameters:
longitudeOfOrigin - The longitudeOfOrigin (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLatitudeOf1st

public double getLatitudeOf1st()
                        throws IOException,
                               AutomationException
The latitude of the first point (Phi 1) of a projected coordinate system.

Product Availability

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

Specified by:
getLatitudeOf1st in interface IProjectedCoordinateSystem
Specified by:
getLatitudeOf1st in interface IProjectedCoordinateSystem4GEN
Returns:
The standardLongitude1
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLatitudeOf1st

public void setLatitudeOf1st(double standardLongitude1)
                      throws IOException,
                             AutomationException
The latitude of the first point (Phi 1) of a projected coordinate system.

Product Availability

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

Specified by:
setLatitudeOf1st in interface IProjectedCoordinateSystem
Specified by:
setLatitudeOf1st in interface IProjectedCoordinateSystem4GEN
Parameters:
standardLongitude1 - The standardLongitude1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLatitudeOf2nd

public double getLatitudeOf2nd()
                        throws IOException,
                               AutomationException
The latitude of the second point (Phi 2) of a projected coordinate system.

Product Availability

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

Specified by:
getLatitudeOf2nd in interface IProjectedCoordinateSystem
Specified by:
getLatitudeOf2nd in interface IProjectedCoordinateSystem4GEN
Returns:
The latitudeOf2nd
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLatitudeOf2nd

public void setLatitudeOf2nd(double latitudeOf2nd)
                      throws IOException,
                             AutomationException
The latitude of the second point (Phi 2) of a projected coordinate system.

Product Availability

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

Specified by:
setLatitudeOf2nd in interface IProjectedCoordinateSystem
Specified by:
setLatitudeOf2nd in interface IProjectedCoordinateSystem4GEN
Parameters:
latitudeOf2nd - The latitudeOf2nd (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFalseEasting

public double getFalseEasting()
                       throws IOException,
                              AutomationException
The false easting (X0) of a projected coordinate system.

Product Availability

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

Specified by:
getFalseEasting in interface IProjectedCoordinateSystem
Specified by:
getFalseEasting in interface IProjectedCoordinateSystem4GEN
Returns:
The falseEasting
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFalseEasting

public void setFalseEasting(double falseEasting)
                     throws IOException,
                            AutomationException
The false easting (X0) of a projected coordinate system.

Product Availability

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

Specified by:
setFalseEasting in interface IProjectedCoordinateSystem
Specified by:
setFalseEasting in interface IProjectedCoordinateSystem4GEN
Parameters:
falseEasting - The falseEasting (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFalseNorthing

public double getFalseNorthing()
                        throws IOException,
                               AutomationException
The false northing (Y0) of a projected coordinate system.

Product Availability

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

Specified by:
getFalseNorthing in interface IProjectedCoordinateSystem
Specified by:
getFalseNorthing in interface IProjectedCoordinateSystem4GEN
Returns:
The falseNorthing
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFalseNorthing

public void setFalseNorthing(double falseNorthing)
                      throws IOException,
                             AutomationException
The false northing (Y0) of a projected coordinate system.

Product Availability

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

Specified by:
setFalseNorthing in interface IProjectedCoordinateSystem
Specified by:
setFalseNorthing in interface IProjectedCoordinateSystem4GEN
Parameters:
falseNorthing - The falseNorthing (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentralParallel

public double getCentralParallel()
                          throws IOException,
                                 AutomationException
The central parallel (Phi 0) of a projected coordinate system.

Product Availability

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

Specified by:
getCentralParallel in interface IProjectedCoordinateSystem
Specified by:
getCentralParallel in interface IProjectedCoordinateSystem4GEN
Returns:
The centralParallel
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCentralParallel

public void setCentralParallel(double centralParallel)
                        throws IOException,
                               AutomationException
The central parallel (Phi 0) of a projected coordinate system.

Product Availability

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

Specified by:
setCentralParallel in interface IProjectedCoordinateSystem
Specified by:
setCentralParallel in interface IProjectedCoordinateSystem4GEN
Parameters:
centralParallel - The centralParallel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStandardParallel1

public double getStandardParallel1()
                            throws IOException,
                                   AutomationException
The first parallel (Phi 1) of a projected coordinate system.

Product Availability

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

Specified by:
getStandardParallel1 in interface IProjectedCoordinateSystem
Specified by:
getStandardParallel1 in interface IProjectedCoordinateSystem4GEN
Returns:
The standardParallel1
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStandardParallel1

public void setStandardParallel1(double standardParallel1)
                          throws IOException,
                                 AutomationException
The first parallel (Phi 1) of a projected coordinate system.

Product Availability

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

Specified by:
setStandardParallel1 in interface IProjectedCoordinateSystem
Specified by:
setStandardParallel1 in interface IProjectedCoordinateSystem4GEN
Parameters:
standardParallel1 - The standardParallel1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStandardParallel2

public double getStandardParallel2()
                            throws IOException,
                                   AutomationException
The second parallel (Phi 2) of a projected coordinate system.

Product Availability

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

Specified by:
getStandardParallel2 in interface IProjectedCoordinateSystem
Specified by:
getStandardParallel2 in interface IProjectedCoordinateSystem4GEN
Returns:
The standardParallel2
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStandardParallel2

public void setStandardParallel2(double standardParallel2)
                          throws IOException,
                                 AutomationException
The second parallel (Phi 2) of a projected coordinate system.

Product Availability

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

Specified by:
setStandardParallel2 in interface IProjectedCoordinateSystem
Specified by:
setStandardParallel2 in interface IProjectedCoordinateSystem4GEN
Parameters:
standardParallel2 - The standardParallel2 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLongitudeOf1st

public double getLongitudeOf1st()
                         throws IOException,
                                AutomationException
The longitude of the first point (Lambda 1) of a projected coordinate system.

Product Availability

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

Specified by:
getLongitudeOf1st in interface IProjectedCoordinateSystem
Specified by:
getLongitudeOf1st in interface IProjectedCoordinateSystem4GEN
Returns:
The longitudeOf1st
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLongitudeOf1st

public void setLongitudeOf1st(double longitudeOf1st)
                       throws IOException,
                              AutomationException
The longitude of the first point (Lambda 1) of a projected coordinate system.

Product Availability

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

Specified by:
setLongitudeOf1st in interface IProjectedCoordinateSystem
Specified by:
setLongitudeOf1st in interface IProjectedCoordinateSystem4GEN
Parameters:
longitudeOf1st - The longitudeOf1st (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLongitudeOf2nd

public double getLongitudeOf2nd()
                         throws IOException,
                                AutomationException
The longitude of the second point (Lambda 2) of a projected coordinate system.

Product Availability

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

Specified by:
getLongitudeOf2nd in interface IProjectedCoordinateSystem
Specified by:
getLongitudeOf2nd in interface IProjectedCoordinateSystem4GEN
Returns:
The longitudeOf2nd
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLongitudeOf2nd

public void setLongitudeOf2nd(double longitudeOf2nd)
                       throws IOException,
                              AutomationException
The longitude of the second point (Lambda 2) of a projected coordinate system.

Product Availability

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

Specified by:
setLongitudeOf2nd in interface IProjectedCoordinateSystem
Specified by:
setLongitudeOf2nd in interface IProjectedCoordinateSystem4GEN
Parameters:
longitudeOf2nd - The longitudeOf2nd (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getScaleFactor

public double getScaleFactor()
                      throws IOException,
                             AutomationException
The scale factor (K0) of a projected coordinate system.

Product Availability

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

Specified by:
getScaleFactor in interface IProjectedCoordinateSystem
Specified by:
getScaleFactor in interface IProjectedCoordinateSystem4GEN
Returns:
The scaleFactor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScaleFactor

public void setScaleFactor(double scaleFactor)
                    throws IOException,
                           AutomationException
The scale factor (K0) of a projected coordinate system.

Product Availability

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

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

getAzimuth

public double getAzimuth()
                  throws IOException,
                         AutomationException
The azimuth of a projected coordinate system.

Product Availability

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

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

setAzimuth

public void setAzimuth(double azimuth)
                throws IOException,
                       AutomationException
The azimuth of a projected coordinate system.

Product Availability

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

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

getLongitudeOfCenter

public double getLongitudeOfCenter()
                            throws IOException,
                                   AutomationException
The longitude of center (Lam C) of a projected coordinate system.

Product Availability

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

Specified by:
getLongitudeOfCenter in interface IProjectedCoordinateSystem2
Specified by:
getLongitudeOfCenter in interface IProjectedCoordinateSystem4GEN
Returns:
The longitudeOfCenter
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLongitudeOfCenter

public void setLongitudeOfCenter(double longitudeOfCenter)
                          throws IOException,
                                 AutomationException
The longitude of center (Lam C) of a projected coordinate system.

Product Availability

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

Specified by:
setLongitudeOfCenter in interface IProjectedCoordinateSystem2
Specified by:
setLongitudeOfCenter in interface IProjectedCoordinateSystem4GEN
Parameters:
longitudeOfCenter - The longitudeOfCenter (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLatitudeOfCenter

public double getLatitudeOfCenter()
                           throws IOException,
                                  AutomationException
The latitude of center (Phi C) of a projected coordinate system.

Product Availability

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

Specified by:
getLatitudeOfCenter in interface IProjectedCoordinateSystem2
Specified by:
getLatitudeOfCenter in interface IProjectedCoordinateSystem4GEN
Returns:
The latitudeOfCenter
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLatitudeOfCenter

public void setLatitudeOfCenter(double latitudeOfCenter)
                         throws IOException,
                                AutomationException
The latitude of center (Phi C) of a projected coordinate system.

Product Availability

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

Specified by:
setLatitudeOfCenter in interface IProjectedCoordinateSystem2
Specified by:
setLatitudeOfCenter in interface IProjectedCoordinateSystem4GEN
Parameters:
latitudeOfCenter - The latitudeOfCenter (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGCSParams

public void getGCSParams(double[] p_180,
                         double[] pDelta)
                  throws IOException,
                         AutomationException
Returns 180 degrees and horizon delta in proper GCS units.

Product Availability

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

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

getHorizon2

public IGeometry getHorizon2(_WKSEnvelope[] horizonEnvelope,
                             boolean[] inclusive)
                      throws IOException,
                             AutomationException
Returns the standard horizon polygon, its envelope, and whether it is inclusive or exclusive; the horizon polygon may be 0.

Product Availability

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

Specified by:
getHorizon2 in interface IProjectedCoordinateSystem4GEN
Parameters:
horizonEnvelope - A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (out: use single element array)
inclusive - The inclusive (out: use single element array)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getShiftedHorizon

public IGeometry getShiftedHorizon(int shift)
                            throws IOException,
                                   AutomationException
Returns the horizon polygon, shifted once or twice, west/east of standard horizon for a negative/positive shift.

Remarks

The standard horizon is the valid area of a projected coordinate system, but in geographic coordinate system coordinates and unit of measure. The standard horizon usually has longitude values between +/-180 (or equivalent). If you use -2, -1, 1 or 2 for the shift value, GetShiftedHorizon will translate the horizon by 360 degrees to the left or right.

Product Availability

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

Specified by:
getShiftedHorizon in interface IProjectedCoordinateSystem2
Specified by:
getShiftedHorizon in interface IProjectedCoordinateSystem4GEN
Parameters:
shift - The shift (in)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPseudoStandardParallel1

public double getPseudoStandardParallel1()
                                  throws IOException,
                                         AutomationException
The latitude on an oblique spheroid that defines the oblique cone for a Krovak projected coordinate system.

Product Availability

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

Specified by:
getPseudoStandardParallel1 in interface IProjectedCoordinateSystem2
Specified by:
getPseudoStandardParallel1 in interface IProjectedCoordinateSystem4GEN
Returns:
The psp1
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPseudoStandardParallel1

public void setPseudoStandardParallel1(double psp1)
                                throws IOException,
                                       AutomationException
The latitude on an oblique spheroid that defines the oblique cone for a Krovak projected coordinate system.

Product Availability

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

Specified by:
setPseudoStandardParallel1 in interface IProjectedCoordinateSystem2
Specified by:
setPseudoStandardParallel1 in interface IProjectedCoordinateSystem4GEN
Parameters:
psp1 - The psp1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getXScaleFactor

public double getXScaleFactor()
                       throws IOException,
                              AutomationException
The X axis scale value used to flip the axis direction in a Krovak projected coordinate system.

Product Availability

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

Specified by:
getXScaleFactor in interface IProjectedCoordinateSystem2
Specified by:
getXScaleFactor in interface IProjectedCoordinateSystem4GEN
Returns:
The xs
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setXScaleFactor

public void setXScaleFactor(double xs)
                     throws IOException,
                            AutomationException
The X axis scale value used to flip the axis direction in a Krovak projected coordinate system.

Product Availability

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

Specified by:
setXScaleFactor in interface IProjectedCoordinateSystem2
Specified by:
setXScaleFactor in interface IProjectedCoordinateSystem4GEN
Parameters:
xs - The xs (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getYScaleFactor

public double getYScaleFactor()
                       throws IOException,
                              AutomationException
The Y axis scale value used to flip the axis direction in a Krovak projected coordinate system.

Product Availability

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

Specified by:
getYScaleFactor in interface IProjectedCoordinateSystem2
Specified by:
getYScaleFactor in interface IProjectedCoordinateSystem4GEN
Returns:
The ys
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setYScaleFactor

public void setYScaleFactor(double ys)
                     throws IOException,
                            AutomationException
The Y axis scale value used to flip the axis direction in a Krovak projected coordinate system.

Product Availability

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

Specified by:
setYScaleFactor in interface IProjectedCoordinateSystem2
Specified by:
setYScaleFactor in interface IProjectedCoordinateSystem4GEN
Parameters:
ys - The ys (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRotation

public double getRotation()
                   throws IOException,
                          AutomationException
The rotation value used to change the axis directions in a Krovak projected coordinate system.

Product Availability

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

Specified by:
getRotation in interface IProjectedCoordinateSystem2
Specified by:
getRotation in interface IProjectedCoordinateSystem4GEN
Returns:
The r
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRotation

public void setRotation(double r)
                 throws IOException,
                        AutomationException
The rotation value used to change the axis directions in a Krovak projected coordinate system.

Product Availability

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

Specified by:
setRotation in interface IProjectedCoordinateSystem2
Specified by:
setRotation in interface IProjectedCoordinateSystem4GEN
Parameters:
r - The r (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

inverseWithShift

public void inverseWithShift(double shift,
                             _WKSPoint[][] points)
                      throws IOException,
                             AutomationException
Projects points from planar to geographic coordinates. Deals with geographic coordinates in ranges other than +-180.

Product Availability

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

Specified by:
inverseWithShift in interface IProjectedCoordinateSystem4GEN
Parameters:
shift - The shift (in)
points - A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putLinearAndAngularUnits

public void putLinearAndAngularUnits(ILinearUnit linearUnit,
                                     IAngularUnit angularUnit)
                              throws IOException,
                                     AutomationException
Modify linear unit of projected coordinates and angular unit of associated geographic coordinates.

Product Availability

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

Specified by:
putLinearAndAngularUnits in interface IProjectedCoordinateSystem2
Specified by:
putLinearAndAngularUnits in interface IProjectedCoordinateSystem4GEN
Parameters:
linearUnit - A reference to a com.esri.arcgis.geometry.ILinearUnit (in)
angularUnit - A reference to a com.esri.arcgis.geometry.IAngularUnit (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLatitudeOfOrigin

public double getLatitudeOfOrigin()
                           throws IOException,
                                  AutomationException
The latitude of the origin (Phi 0) of a projected coordinate system.

Product Availability

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

Specified by:
getLatitudeOfOrigin in interface IProjectedCoordinateSystem2
Specified by:
getLatitudeOfOrigin in interface IProjectedCoordinateSystem4GEN
Returns:
The latitudeOfOrigin
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLatitudeOfOrigin

public void setLatitudeOfOrigin(double latitudeOfOrigin)
                         throws IOException,
                                AutomationException
The latitude of the origin (Phi 0) of a projected coordinate system.

Product Availability

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

Specified by:
setLatitudeOfOrigin in interface IProjectedCoordinateSystem2
Specified by:
setLatitudeOfOrigin in interface IProjectedCoordinateSystem4GEN
Parameters:
latitudeOfOrigin - The latitudeOfOrigin (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEqualNoNames

public boolean isEqualNoNames(IProjectedCoordinateSystem pOther)
                       throws IOException,
                              AutomationException
Compares two projected coordinate systems for equality but ignores their names.

Product Availability

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

Specified by:
isEqualNoNames in interface IProjectedCoordinateSystem2
Specified by:
isEqualNoNames in interface IProjectedCoordinateSystem4GEN
Parameters:
pOther - A reference to a com.esri.arcgis.geometry.IProjectedCoordinateSystem (in)
Returns:
The equalNoNames
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHeight

public double getHeight()
                 throws IOException,
                        AutomationException
The height above the sphere in projected coordinate system units.

Product Availability

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

Specified by:
getHeight in interface IProjectedCoordinateSystem3
Specified by:
getHeight in interface IProjectedCoordinateSystem4GEN
Returns:
The height
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setHeight

public void setHeight(double height)
               throws IOException,
                      AutomationException
The height above the sphere in projected coordinate system units.

Product Availability

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

Specified by:
setHeight in interface IProjectedCoordinateSystem3
Specified by:
setHeight in interface IProjectedCoordinateSystem4GEN
Parameters:
height - The height (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPCSHorizon

public IGeometry getPCSHorizon(_WKSEnvelope[] horizonEnvelope,
                               boolean[] inclusive)
                        throws IOException,
                               AutomationException
Returns PCS horizon polygon, its envelope and whether it is inclusive or exclusive; the horizon polygon may be 0.

Product Availability

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

Specified by:
getPCSHorizon in interface IProjectedCoordinateSystem4
Specified by:
getPCSHorizon in interface IProjectedCoordinateSystem4GEN
Parameters:
horizonEnvelope - A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (in/out: use single element array)
inclusive - The inclusive (in/out: use single element array)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentralLongitude

public double getCentralLongitude()
                           throws IOException,
                                  AutomationException
Returns CentralLongitude of the projected coordinate system. Always defined, unlike CentralMeridian or LongitudeOfCenter.

Product Availability

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

Specified by:
getCentralLongitude in interface IProjectedCoordinateSystem4
Specified by:
getCentralLongitude in interface IProjectedCoordinateSystem4GEN
Returns:
The centralLongitude
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNorthPole

public _WKSPoint getNorthPole()
                       throws IOException,
                              AutomationException
Returns north pole in projected coordinates, or an empty point if north pole is outside the PCS horizon.

Product Availability

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

Specified by:
getNorthPole in interface IProjectedCoordinateSystem4
Specified by:
getNorthPole in interface IProjectedCoordinateSystem4GEN
Returns:
A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSouthPole

public _WKSPoint getSouthPole()
                       throws IOException,
                              AutomationException
Returns south pole in projected coordinates, or an empty point if south pole is outside the PCS horizon.

Product Availability

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

Specified by:
getSouthPole in interface IProjectedCoordinateSystem4
Specified by:
getSouthPole in interface IProjectedCoordinateSystem4GEN
Returns:
A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNorthPoleLocation

public int getNorthPoleLocation()
                         throws IOException,
                                AutomationException
Returns type of location of north pole with respect to PCS horizon.

Product Availability

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

Specified by:
getNorthPoleLocation in interface IProjectedCoordinateSystem4
Specified by:
getNorthPoleLocation in interface IProjectedCoordinateSystem4GEN
Returns:
A com.esri.arcgis.geometry.esriSRPoleLocation constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSouthPoleLocation

public int getSouthPoleLocation()
                         throws IOException,
                                AutomationException
Returns type of location of south pole with respect to PCS horizon.

Product Availability

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

Specified by:
getSouthPoleLocation in interface IProjectedCoordinateSystem4
Specified by:
getSouthPoleLocation in interface IProjectedCoordinateSystem4GEN
Returns:
A com.esri.arcgis.geometry.esriSRPoleLocation constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNorthPoleGeometry

public int getNorthPoleGeometry()
                         throws IOException,
                                AutomationException
Returns type of north pole geometry.

Product Availability

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

Specified by:
getNorthPoleGeometry in interface IProjectedCoordinateSystem4
Specified by:
getNorthPoleGeometry in interface IProjectedCoordinateSystem4GEN
Returns:
A com.esri.arcgis.geometry.esriSRPoleGeometry constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSouthPoleGeometry

public int getSouthPoleGeometry()
                         throws IOException,
                                AutomationException
Returns type of south pole geometry.

Product Availability

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

Specified by:
getSouthPoleGeometry in interface IProjectedCoordinateSystem4
Specified by:
getSouthPoleGeometry in interface IProjectedCoordinateSystem4GEN
Returns:
A com.esri.arcgis.geometry.esriSRPoleGeometry constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHorizonEdgeDuplicated

public boolean isHorizonEdgeDuplicated()
                                throws IOException,
                                       AutomationException
Returns true if some edges of PCS horizon project inversely to identical lines.

Remarks

The PCS horizon is the valid area of a projected coordinate system, in the units of the PCS.

Product Availability

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

Specified by:
isHorizonEdgeDuplicated in interface IProjectedCoordinateSystem4
Specified by:
isHorizonEdgeDuplicated in interface IProjectedCoordinateSystem4GEN
Returns:
The isEdgeDuplicated
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHorizonConvexHull

public boolean isHorizonConvexHull()
                            throws IOException,
                                   AutomationException
Returns true if PCS horizon is convex.

Remarks

The PCS horizon is the valid area of a projected coordinate system, in the units of the PCS.

Product Availability

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

Specified by:
isHorizonConvexHull in interface IProjectedCoordinateSystem4
Specified by:
isHorizonConvexHull in interface IProjectedCoordinateSystem4GEN
Returns:
The isConvexHull
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHorizonEntireWorld

public boolean isHorizonEntireWorld()
                             throws IOException,
                                    AutomationException
Returns true if PCS horizon contains the entire world.

Remarks

The PCS horizon is the valid area of a projected coordinate system, in the units of the PCS.

Product Availability

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

Specified by:
isHorizonEntireWorld in interface IProjectedCoordinateSystem4
Specified by:
isHorizonEntireWorld in interface IProjectedCoordinateSystem4GEN
Returns:
The isWorld
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IProjectedCoordinateSystem4.isHorizonEntireWorld(), IProjectedCoordinateSystem5, IProjectedCoordinateSystem4.isHorizonConvexHull()

isXYPrecisionEqual

public boolean isXYPrecisionEqual(ISpatialReference otherSR)
                           throws IOException,
                                  AutomationException
Returns true if the XY precisions of the two spatial references are the same.

Product Availability

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

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

isMPrecisionEqual

public boolean isMPrecisionEqual(ISpatialReference otherSR)
                          throws IOException,
                                 AutomationException
Returns true if the measure precisions of the two spatial references are the same.

Product Availability

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

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

isZPrecisionEqual

public boolean isZPrecisionEqual(ISpatialReference otherSR)
                          throws IOException,
                                 AutomationException
Returns true if the Z precisions of the two spatial references are the same.

Product Availability

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

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

applyXYPrecision

public void applyXYPrecision(_WKSPoint[] points)
                      throws IOException,
                             AutomationException
Applies the XY precision.

Product Availability

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

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:
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 IOException,
                           AutomationException
Applies the measure and z value precisions.

Product Availability

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

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getESRISpatialReferenceSize

public int getESRISpatialReferenceSize()
                                throws IOException,
                                       AutomationException
The number of bytes required to hold the persistant representation of this spatial reference component.

Product Availability

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

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

importFromESRISpatialReference

public void importFromESRISpatialReference(String str,
                                           int[] cBytesRead)
                                    throws IOException,
                                           AutomationException
Defines this spatial reference component from the specified ESRISpatialReference buffer.

Product Availability

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

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

exportToESRISpatialReference

public void exportToESRISpatialReference(String[] str,
                                         int[] cBytesWrote)
                                  throws IOException,
                                         AutomationException
Exports this spatial reference component to a buffer.

Product Availability

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

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

exportToESRISpatialReference2

public void exportToESRISpatialReference2(String[] str,
                                          int[] cBytesWrote)
                                   throws IOException,
                                          AutomationException
Exports this spatial reference component to a buffer.

Product Availability

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

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

getPRJSpatialReferenceSize

public int getPRJSpatialReferenceSize()
                               throws IOException,
                                      AutomationException
The number of bytes required to hold the persistant representation of the spatial reference.

Product Availability

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

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

importSpatialReferenceFromPRJ

public void importSpatialReferenceFromPRJ(String str,
                                          int[] cBytesRead)
                                   throws IOException,
                                          AutomationException
Defines the spatial reference from the specified ESRISpatialReference buffer.

Product Availability

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

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

exportSpatialReferenceToPRJ

public void exportSpatialReferenceToPRJ(String[] str,
                                        int[] cBytesWrote)
                                 throws IOException,
                                        AutomationException
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.

Product Availability

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

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

getParameters

public void getParameters(IParameter[] parameters)
                   throws IOException,
                          AutomationException
Deprecated. This method uses C style arrays which is not supported in the Java API for ArcObjects. It is replaced by IProjectedCoordinateSystem4GEN.getParameters(com.esri.arcgis.geometry.IParameter[][]).

Gets the map projection parameters of a projected coordinate system.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getParameters in interface IProjectedCoordinateSystem
Parameters:
parameters - A reference to a com.esri.arcgis.geometry.IParameter (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

forward

public void forward(int count,
                    _WKSPoint points)
             throws IOException,
                    AutomationException
Projects points from geographic to planar coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

inverse

public void inverse(int count,
                    _WKSPoint points)
             throws IOException,
                    AutomationException
Projects points from planar to geographic coordinates.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getHorizon

public IGeometry getHorizon(_WKSEnvelope[] horizonEnvelope,
                            boolean[] inclusive)
                     throws IOException,
                            AutomationException
Returns the standard horizon polygon, its envelope, and whether it is inclusive or exclusive; the horizon polygon may be 0.

Remarks

GetHorizon returns, in geographic coordinate system coordinates and unit of measure, the valid geometry of a projected coordinate system. The method also returns whether the geometry should be considered inclusive or exclusive, and its envelope.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getHorizon in interface IProjectedCoordinateSystem2
Parameters:
horizonEnvelope - A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (out: use single element array)
inclusive - The inclusive (out: use single element array)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

inverseWithShift

public void inverseWithShift(double shift,
                             int count,
                             _WKSPoint points)
                      throws IOException,
                             AutomationException
Projects points from planar to geographic coordinates. Deals with geographic coordinates in ranges other than +-180.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
inverseWithShift in interface IProjectedCoordinateSystem2
Parameters:
shift - The shift (in)
count - The count (in)
points - A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCentralLongitudeVertical

public boolean isCentralLongitudeVertical()
                                   throws IOException,
                                          AutomationException
Returns true if central meridian is a straight vertical line.

Product Availability

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

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

getConvergenceAngle

public double getConvergenceAngle(_WKSPoint pt,
                                  boolean trueToGridNorth)
                           throws IOException,
                                  AutomationException
Returns the grid convergence angle .

Product Availability

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

Specified by:
getConvergenceAngle in interface IProjectedCoordinateSystem5
Parameters:
pt - A Structure: com.esri.arcgis.system._WKSPoint (A com.esri.arcgis.system._WKSPoint COM typedef) (in)
trueToGridNorth - The trueToGridNorth (in)
Returns:
The angle
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

define

public void define(Object name,
                   Object alias,
                   Object abbreviation,
                   Object remarks,
                   Object useage,
                   Object gcs,
                   Object projectedUnit,
                   Object projection,
                   Object parameters)
            throws IOException,
                   AutomationException
Defines the properties of a projected coordinate system.

Description

One of the difficult parts of defining a projected coordinate system is determining which parameters a map projection supports. All map projection supports the FalseEasting and FalseNorthing parameters. The other parameters for each projection are listed below.

Aitoff
CentralMeridian

Albers
CentralMeridian
StandardParallel1
StandardParallel2
LatitudeOfOrigin

Azimuthal_Equidistant
CentralMeridian
LatitudeOfOrigin

Behrmann
CentralMeridian

Bonne
CentralMeridian
StandardParallel1

Cassini
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Craster_Parabolic
CentralMeridian

Cylindrical_Equal_Area
CentralMeridian
StandardParallel1

Double_Stereographic
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Eckert_I
CentralMeridian

Eckert_II
CentralMeridian

Eckert_III
CentralMeridian

Eckert_IV
CentralMeridian

Eckert_V
CentralMeridian

Eckert_VI
CentralMeridian

Equidistant_Conic
CentralMeridian
StandardParallel1
StandardParallel2
LatitudeOfOrigin

Equidistant_Cylindrical
CentralMeridian
StandardParallel1

Flat_Polar_Quartic
CentralMeridian

Gall_Stereographic
CentralMeridian

Gauss_Kruger
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Gnomonic
LongitudeOfCenter
LatitudeOfCenter

Hammer_Aitoff
CentralMeridian

Hotine_Oblique_Mercator_Azimuth_Center
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter

Hotine_Oblique_Mercator_Azimuth_Natural_Origin
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter

Hotine_Oblique_Mercator_Two_Point_Center
LatitudeOf1st
LatitudeOf2nd
ScaleFactor
LongitudeOf1st
LongitudeOf2nd
LatitudeOfCenter

Hotine_Oblique_Mercator_Two_Point_Natural_Origin
LatitudeOf1st
LatitudeOf2nd
ScaleFactor
LongitudeOf1st
LongitudeOf2nd
LatitudeOfCenter

Krovak
PseudoStandardParallel1
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter
XScaleFactor
YScaleFactor
Rotation

Lambert_Azimuthal_Equal_Area
CentralMeridian
LatitudeOfOrigin

Lambert_Conformal_Conic
CentralMeridian
StandardParallel1
StandardParallel2
ScaleFactor
LatitudeOfOrigin

Local
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter

Loximuthal
CentralMeridian
CentralParallel

Mercator
CentralMeridian
StandardParallel1

Miller_Cylindrical
CentralMeridian

Mollweide
CentralMeridian

New_Zealand_Map_Grid
LongitudeOfOrigin
LatitudeOfOrigin

Orthographic
LongitudeOfCenter
LatitudeOfCenter

Plate_Carree
CentralMeridian

Polyconic
CentralMeridian
LatitudeOfOrigin

Quartic_Authalic
CentralMeridian

Rectified_Skew_Orthomorphic_Center
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter
Rotation

Rectified_Skew_Orthomorphic_Natural_Origin
ScaleFactor
Azimuth
LongitudeOfCenter
LatitudeOfCenter
Rotation

Robinson
CentralMeridian

Robinson_ARC_INFO
CentralMeridian

Sinusoidal
CentralMeridian

Stereographic
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Stereographic_North_Pole
CentralMeridian
StandardParallel1

Stereographic_South_Pole
CentralMeridian
StandardParallel1

Times
CentralMeridian

Transverse_Mercator
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Transverse_Mercator_Complex
CentralMeridian
ScaleFactor
LatitudeOfOrigin

Two_Point_Equidistant
LatitudeOf1st
LatitudeOf2nd
LongitudeOf1st
LongitudeOf2nd

Van_der_Grinten_I
CentralMeridian

Vertical_Near_Side_Perspective
LongitudeOfCenter
LatitudeOfCenter
Height

Winkel_I
CentralMeridian
StandardParallel1

Winkel_II
CentralMeridian
StandardParallel1

Winkel_Tripel
CentralMeridian
StandardParallel1

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
define in interface IProjectedCoordinateSystemEdit
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)
gcs - A Variant (in, optional, pass null if not required)
projectedUnit - A Variant (in, optional, pass null if not required)
projection - A Variant (in, optional, pass null if not required)
parameters - A Variant (in, optional, pass null if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyXYPrecision

public void applyXYPrecision(int cPoints,
                             _WKSPoint points)
                      throws IOException,
                             AutomationException
Applies the XY precision.

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.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyPrecision

public void applyPrecision(int cPoints,
                           _WKSPoint points,
                           double[] ms,
                           double[] zs)
                    throws IOException,
                           AutomationException
Applies the measure and z value precisions.

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.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVerticalCoordinateSystem

public IVerticalCoordinateSystem getVerticalCoordinateSystem()
                                                      throws IOException,
                                                             AutomationException
The VCS associated with this spatial reference.

Product Availability

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

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

setVerticalCoordinateSystemByRef

public void setVerticalCoordinateSystemByRef(IVerticalCoordinateSystem vcs)
                                      throws IOException,
                                             AutomationException
The VCS associated with this spatial reference.

Product Availability

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

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

projectionHint

public void projectionHint(IGeometry geometry,
                           ISpatialReference targetSR,
                           int[] direction,
                           ITransformation[] pXForm,
                           int[] projectionHint)
                    throws IOException,
                           AutomationException
Projection hint for speeding up projections.

Product Availability

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

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getZToXYFactor

public double getZToXYFactor()
                      throws IOException,
                             AutomationException
Conversion factor from Z units to XY units.

Product Availability

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

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

esri_clone

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

Product Availability

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

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

assign

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

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isEqual

public boolean isEqual(IClone other)
                throws IOException,
                       AutomationException
Indicates if the receiver and other have the same properties.

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isIdentical

public boolean isIdentical(IClone other)
                    throws IOException,
                           AutomationException
Indicates if the receiver and other are the same object.

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isEqualNoVCS

public boolean isEqualNoVCS(ISpatialReference other)
                     throws IOException,
                            AutomationException
Compares spatial references without considering any vertical coordinate system that may be associated with the spatial reference.

Product Availability

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

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

isEqualLeftLongitude

public boolean isEqualLeftLongitude(ISpatialReference other,
                                    boolean compareVCS)
                             throws IOException,
                                    AutomationException
For geographic coordinate systems, this version of IsEqual includes considers their left longitude properties. Same as IsEqual for projected coordinate systems.

Product Availability

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

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getPrecisionSizeMax

public void getPrecisionSizeMax(int[] byteCount)
                         throws IOException,
                                AutomationException
Returns the number of bytes needed to store the false x, false y and xy units of this spatial reference.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

loadPrecision

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

savePrecision

public void savePrecision(IStream pStream,
                          int fClearDirty)
                   throws IOException,
                          AutomationException
Saves this spatial reference's false x, false y and xy units to the specified stream.

Product Availability

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

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:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

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

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isUsePrecision

public boolean isUsePrecision()
                       throws IOException,
                              AutomationException
Returns TRUE if the precision information can be used for snapping.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setUsePrecision

public void setUsePrecision(boolean usePrecision)
                     throws IOException,
                            AutomationException
Returns TRUE if the precision information can be used for snapping.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isHighPrecision

public boolean isHighPrecision()
                        throws IOException,
                               AutomationException
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.

Product Availability

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

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

setIsHighPrecision

public void setIsHighPrecision(boolean isHighPrecision)
                        throws IOException,
                               AutomationException
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.

Product Availability

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

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

setDefaultXYTolerance

public void setDefaultXYTolerance()
                           throws IOException,
                                  AutomationException
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).

Remarks

SetDefaultXYTolerance establishes the default value for the XY tolerance, taking into account the current units of the spatial reference. Any established tolerance will not be changed automatically if the units of the spatial reference are changed. For a ProjectedCoordinateSystem or an UnknownCoordinateSystem, the default tolerance is 1 mm (expressed in the units of the spatial reference) or 2.0 * XYResolution, whichever is larger. For a GeographicCoordinateSystem, it is the angle subtending 1 mm at the equator, or 2.0 * XYResolution, whichever is larger.

The minimum allowable XYTolerance is 2.0 * XYResolution.

If the value specified by SetDefaultXYTolerance is not greater than or equal to 2.0 * XYResolution, the XYTolerance will be set at 2.0 * XYResolution.

A file-based data source, such as shapefiles, CAD and SDC, that has an UnknownCoordinateSystem and that has an X coordinate data extent that falls between +/-400, will use a tolerance in degrees corresponding to 1mm along the equator (8.98315284119522E-09 degrees).

Product Availability

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

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

setMinimumXYTolerance

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

Remarks

The SetMinimumXYTolerance method sets the tolerance to the value of the spatial reference's grid resolution (or 2.0 * XYResolution). Setting the XYTolerance using this method provides a mechanism to maintain backward compatibility with ArcGIS 9.1 geometric and relational operators. At version 9.1 and before, this is the only tolerance value used by geometric and relational operators.

Product Availability

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

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

getXYTolerance

public double getXYTolerance()
                      throws IOException,
                             AutomationException
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.

Product Availability

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

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

setXYTolerance

public void setXYTolerance(double xYTolerance)
                    throws IOException,
                           AutomationException
The xy tolerance used to control point coalescing in the X and Y dimensions.

Product Availability

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

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

setDefaultZTolerance

public void setDefaultZTolerance()
                          throws IOException,
                                 AutomationException
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).

Remarks

The SetDefaultZTolerance method establishes the default value for the ZTolerance. Any established tolerance will not automatically be changed by changing the units of the spatial reference. The default value is 1mm (scaled to whatever units are associated with the spatial reference's vertical coordinate system).

The minimum allowable ZTolerance is 2.0 * ZResolution.

Product Availability

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

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

setMinimumZTolerance

public void setMinimumZTolerance()
                          throws IOException,
                                 AutomationException
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).

Remarks

The SetMinimumZTolerance method sets the ZTolerance to 2.0 * z resolution. Setting the ZTolerance using this method provides a mechanism to maintain backward compatibility with ArcGIS 9.1 geometric and relational operators. At 9.1 and before, this is the only tolerance value used by the geometric and relational operators.

The ZResolution should be defined before calling SetMinimumZTolerance.

Product Availability

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

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

getZTolerance

public double getZTolerance()
                     throws IOException,
                            AutomationException
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

Product Availability

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

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

setZTolerance

public void setZTolerance(double zTolerance)
                   throws IOException,
                          AutomationException
The tolerance used to control point coalescing strictly along the Z axis.

Product Availability

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

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

setDefaultMTolerance

public void setDefaultMTolerance()
                          throws IOException,
                                 AutomationException
Sets the default tolerance used to determine equality of M values (2.0 * m resolution).

Remarks

The SetDefaultMTolerance method establishes the default value for the M tolerance. The default value is 0.001 units.

The minimum allowable MTolerance is 2.0 * MResolution.

If the value specified by SetDefaultMTolerance is not greater than or equal to 2.0 * MResolution, the MTolerance will be set at 2.0 * MResolution.

Product Availability

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

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

setMinimumMTolerance

public void setMinimumMTolerance()
                          throws IOException,
                                 AutomationException
Sets the minimum tolerance (i.e., pre 9.2) used to determine equality of M values (2.0 * m resolution).

Remarks

The SetMinimumMTolerance method sets the tolerance to the value of the spatial reference's grid resolution (or 2.0 * M resolution). Setting the MTolerance using this method provides a mechanism to maintain backward compatibility with ArcGIS 9.1 geometric and relational operators. At 9.1 and before, this is the only tolerance value used by measure or linear referencing aware operations in the geometry system.

Product Availability

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

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

getMTolerance

public double getMTolerance()
                     throws IOException,
                            AutomationException
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.

Product Availability

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

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

setMTolerance

public void setMTolerance(double mTolerance)
                   throws IOException,
                          AutomationException
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.

Product Availability

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

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

getXYToleranceValid

public int getXYToleranceValid()
                        throws IOException,
                               AutomationException
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).

Product Availability

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

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

getZToleranceValid

public int getZToleranceValid()
                       throws IOException,
                              AutomationException
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.

Product Availability

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

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

getMToleranceValid

public int getMToleranceValid()
                       throws IOException,
                              AutomationException
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.

Product Availability

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

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

isXYToleranceEqual

public boolean isXYToleranceEqual(ISpatialReference otherSR)
                           throws IOException,
                                  AutomationException
Returns true if the XY tolerances of the two spatial references are the same.

Remarks

IsXYToleranceEqual will return True if both Spatial Reference XYTolerances are undefined (NaN) or if they are both defined and numerically equal.

Note that the IClone::IsEqual method on spatial references does not consider coordinate grid or tolerance properties. It only looks at the coordinate system part (i.e. projection information) part of the spatial reference.

Product Availability

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

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

isMToleranceEqual

public boolean isMToleranceEqual(ISpatialReference otherSR)
                          throws IOException,
                                 AutomationException
Returns true if the measure tolerances of the two spatial references are the same.

Remarks

IsMToleranceEqual will return True if both Spatial Reference MTolerances are undefined (NaN) or if they are both defined and numerically equal.

Note that the IClone::IsEqual method on spatial references does not consider coordinate grid or tolerance properties. It only looks at the coordinate system part (i.e. projection information) of the spatial reference.

Product Availability

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

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

isZToleranceEqual

public boolean isZToleranceEqual(ISpatialReference otherSR)
                          throws IOException,
                                 AutomationException
Returns true if the Z tolerances of the two spatial references are the same.

Remarks

IsZToleranceEqual will return True if both Spatial Reference Z Tolerances are undefined (NaN)or if they are both defined and numerically equal.

Note that the IClone::IsEqual method on spatial references does not consider coordinate grid or tolerance properties. It only looks at the coordinate system part (i.e. projection information) part of the spatial reference.

Product Availability

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

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

constructFromHorizon

public void constructFromHorizon()
                          throws IOException,
                                 AutomationException
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

Product Availability

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

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

setXYResolution

public void setXYResolution(boolean bStandardUnits,
                            double xYResolution)
                     throws IOException,
                            AutomationException
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.

Product Availability

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

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

getXYResolution

public double getXYResolution(boolean bStandardUnits)
                       throws IOException,
                              AutomationException
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.

Product Availability

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

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

setDefaultXYResolution

public void setDefaultXYResolution()
                            throws IOException,
                                   AutomationException
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).

Remarks

SetDefaultXYResolution recalculates the maximum x and y coordinates for the domain of the spatial reference in order to achieve a target resolution of 1 millimeter for low precision ProjectedCoordinateSystems or 1/10 millimeter for high precision. For high precision GeographicCoordinateSystems, the target resolution is 1/10,000 of an arc-second and the low precision target resolution is 1/500 of an arc-second. For UnknownCoordinateSystems, the high precision target resolution is 1/10 millimeter and the low precision target resolution is 1 millimeter. Resolutions are listed here in metric units but are converted to the units of the spatial reference by these methods.

Use the ISpatialReferenceResolution::XYResolution(False) property to specify the target resolution in units defined by the spatial reference.

Product Availability

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

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

setZResolution

public void setZResolution(boolean bStandardUnits,
                           double zResolution)
                    throws IOException,
                           AutomationException
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.

Product Availability

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

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

getZResolution

public double getZResolution(boolean bStandardUnits)
                      throws IOException,
                             AutomationException
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.

Product Availability

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

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

setDefaultZResolution

public void setDefaultZResolution()
                           throws IOException,
                                  AutomationException
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.

Remarks

This method behaves analogously to the SetDefaultXYResolution method, but operates on the linear z coordinate grid. For a high-precision spatial reference the default ZResolution is 0.0001 meters (expressed in the units defined by the VCS if applicable); for a low-precision spatial reference the default ZResolution is 0.001 units.

Product Availability

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

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

setMResolution

public void setMResolution(double interval)
                    throws IOException,
                           AutomationException
The M, or measure, resolution of this spatial reference.

Product Availability

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

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

getMResolution

public double getMResolution()
                      throws IOException,
                             AutomationException
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.

Product Availability

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

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

setDefaultMResolution

public void setDefaultMResolution()
                           throws IOException,
                                  AutomationException
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.

Remarks

This method behaves analogously to the SetDefaultXYResolution method, but operates on the linear m coordinate grid. For a high-precision spatial reference the default MResolution is 0.0001 units; for a low-precision spatial reference the default MResolution is 0.001 units.

Product Availability

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

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

getAuthorityName

public String getAuthorityName()
                        throws IOException,
                               AutomationException
The name of the defining authority for this object.

Product Availability

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

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

getVersion

public String getVersion()
                  throws IOException,
                         AutomationException
The version of this spatial reference object.

Product Availability

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

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

getCode

public int getCode()
            throws IOException,
                   AutomationException
The code identifying this object relative to its authority. For the EPSG authority, this will initially be the WKID (factory code).

Product Availability

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

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

define

public void define(String authorityName,
                   int authorityCode,
                   String authorityVersion)
            throws IOException,
                   AutomationException
Defines the authority-related metadata properties for this spatial reference object.

Product Availability

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

Specified by:
define in interface ISpatialReferenceAuthority
Parameters:
authorityName - The authorityName (in)
authorityCode - The authorityCode (in)
authorityVersion - The authorityVersion (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException