com.esri.arcgis.datasourcesraster
Class FrameXform

java.lang.Object
  extended by com.esri.arcgis.datasourcesraster.FrameXform
All Implemented Interfaces:
IFrameXform, IRasterXform, ISensorXform, IGeodataXform, ITransformation, com.esri.arcgis.interop.RemoteObjRef, IClone, IDocumentVersionSupportGEN, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable, Serializable

public class FrameXform
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IFrameXform, IRasterXform, ISensorXform, ITransformation, IClone, IPersistStream, IDocumentVersionSupportGEN, IXMLSerialize, IXMLVersionSupport, Externalizable

A standard frame camera model transformation class.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
FrameXform()
          Constructs a FrameXform using ArcGIS Engine.
FrameXform(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
FrameXform theFrameXform = (FrameXform) obj;
 
Method Summary
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 boolean equals(Object o)
          Compare this object with another
 IClone esri_clone()
          Clones the receiver and assigns the result to *clone.
 double getAverageZ()
          The average Z in meters.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 double getConstantZ()
          The constant Z value in meters.
 IRaster getDEM()
          The Digital Elevation Model (DEM).
 void getDistortionTable(IDoubleArray[] ppDistanceInMillimeters, IDoubleArray[] ppDistortionInMicrons)
          The distortion tables.
 IGeometryCollection getDomains()
          The domains in output space.
 double getEarthRadius()
          The earth radius in meters.
 double getFocalLength()
          The focal length in micron.
 IEnvelope getFullExtent()
          The full output extent within which this xform is applied.
 IGeodataXform getInteriorOrientation()
          The interior orientation as an affine transformation.
 Object getKonradyParameters()
          The Konrady adjustment parameters.
 int getKonradyType()
          The Konrady calculation method.
 IGeodataXform getLSR()
          The LSR-To-USR conversion.
 String getMinNamespaceSupported()
          The minimum namespace the class can serialize to (eg the 90 namespace).
 IPoint getPerspectiveCenter()
          The sensor position.
 Object getPerspectiveMatrix()
          The specified sensor orientation as an orthogonal rotation matrix.
 int getPerspectivePolarity()
          The sensor polarity.
 IPoint getPrincipalPoint()
          The film principal point.
 IDoubleArray getResiduals()
          The residuals for distortion table points.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISpatialReference getSpatialReference()
          The output spatial reference after applying this transform.
 double getZFactor()
          The conversion factor from DEM Z unit to meters.
 double getZOffset()
          The Z offset in meters applied to DEM.
 int hashCode()
          the hashcode for this object
 boolean isApplyCurvatureAndRefraction()
          Indicates if the adjustment of earth curvature and refraction is applied.
 boolean isCorrectGeoid()
          Indicates if Geoid correction is needed.
 void isDirty()
          isDirty
 boolean isEnableKonrady()
          Indicates if the Konrady adjustment to be applied.
 boolean isEqual(IClone other)
          Indicates if the receiver and other have the same properties.
 boolean isIdentical(IClone other)
          Indicates if the receiver and other are the same object.
 boolean isIdentity()
          Indicates if this geodata transform is an identity transform.
 boolean isRequireDEM()
          Indicates if DEM is required for applying this transform.
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 void load(IStream pstm)
          load
 void prepare(int iDomain, double dx, double dy, IEnvelope pExtent)
          Prepares the xform for a given extent and cellsize within a domain.
 void putDistortionTable(IDoubleArray pDistanceInMillimeters, IDoubleArray pDistortionInMicrons)
          The distortion tables to calculate Konrady coefficients and residuals.
 void putInteriorOrientationParameters(int direction, Object parameters)
          Puts the interior orientation parameters.
 void putPerspectiveAngles(double omega, double phi, double kappa, boolean clockwise)
          Puts the sensor exterior orientation as a set of rotation angles in degrees.
 void queryKonradyParameters(double[] pK)
          Queries the Konrady adjustment parameterrs.
 void queryPerspectiveAngles(double[] pOmega, double[] pPhi, double[] pKappa, boolean[] pClockwise)
          Queries the sensor exterior orientation as a set of rotation angles in degrees.
 void queryPerspectiveMatrix(double[] pMatrix)
          Queries the perspective matrix.
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setApplyCurvatureAndRefraction(boolean pApplyCurvatureAndRefraction)
          Indicates if the adjustment of earth curvature and refraction is applied.
 void setAverageZ(double averageZ)
          The average Z in meters.
 void setConstantZ(double z)
          The constant Z value in meters.
 void setCorrectGeoid(boolean pCorrection)
          Indicates if Geoid correction is needed.
 void setDEMByRef(IRaster ppDEM)
          The Digital Elevation Model (DEM).
 void setEarthRadius(double radius)
          The earth radius in meters.
 void setEnableKonrady(boolean pK)
          Indicates if the Konrady adjustment to be applied.
 void setFocalLength(double length)
          The focal length in micron.
 void setFullExtent(IEnvelope ppFullExtent)
          The full output extent within which this xform is applied.
 void setInteriorOrientationByRef(IGeodataXform ppAffine)
          The interior orientation as an affine transformation.
 void setKonradyParameters(Object pK)
          The Konrady adjustment parameters.
 void setKonradyType(int pType)
          The Konrady calculation method.
 void setLSRByRef(IGeodataXform ppLSR)
          The LSR-To-USR conversion.
 void setPerspectiveCenterByRef(IPoint sp)
          The sensor position.
 void setPerspectiveMatrix(Object pMatrix)
          The specified sensor orientation as an orthogonal rotation matrix.
 void setPerspectivePolarity(int polarity)
          The sensor polarity.
 void setPrincipalPointByRef(IPoint pp)
          The film principal point.
 void setRequireDEM(boolean pRequireDEM)
          Indicates if DEM is required for applying this transform.
 void setSpatialReferenceByRef(ISpatialReference ppSpatialRefence)
          The output spatial reference after applying this transform.
 void setZFactor(double zFactor)
          The conversion factor from DEM Z unit to meters.
 void setZOffset(double zOffset)
          The Z offset in meters applied to DEM.
 void transform(int direction, int npoints, _WKSPoint[] points)
          Transforms a set of points in a given direction.
 void transformCellsize(int direction, double[] dx, double[] dy, IEnvelope pAreaOfInterest)
          Transforms a cellsize in a given direction.
 void transformExtent(int direction, IEnvelope[] pExtent)
          Transforms an extent in a given direction.
 void transformMeasuresFF(int direction, int cMeasures, double[] inMeasures, double[] outMeasures)
          Transforms floating point measures to floating point measures (or do the inverse).
 void transformMeasuresFI(int direction, int cMeasures, double[] inMeasures, int[] outMeasures)
          Transforms floating point measures to integer measures (or do the inverse).
 void transformMeasuresIF(int direction, int cMeasures, int[] inMeasures, double[] outMeasures)
          Transforms integer measures to floating point measures (or do the inverse).
 void transformMeasuresII(int direction, int cMeasures, int[] inMeasures, int[] outMeasures)
          Transforms integer measures to integer measures (or do the inverse).
 void transformPoints(int direction, IPointCollection[] pPoints)
          Transforms a point collection in a given direction
 void transformPointsFF(int direction, int cPoints, double[] inPoints, double[] outPoints)
          Transforms floating point points to floating point points (or do the inverse).
 void transformPointsFI(int direction, int cPoints, double[] inPoints, int[] outPoints)
          Transforms floating point points to integer points (or do the inverse).
 void transformPointsIF(int direction, int cPoints, int[] inPoints, double[] outPoints)
          Transforms integer points to floating point points (or do the inverse).
 void transformPointsII(int direction, int cPoints, int[] inPoints, int[] outPoints)
          Transforms integer points to integer points (or do the inverse).
 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

FrameXform

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

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

FrameXform

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

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

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

getInteriorOrientation

public IGeodataXform getInteriorOrientation()
                                     throws IOException,
                                            AutomationException
The interior orientation as an affine transformation.

Product Availability

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

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

setInteriorOrientationByRef

public void setInteriorOrientationByRef(IGeodataXform ppAffine)
                                 throws IOException,
                                        AutomationException
The interior orientation as an affine transformation.

Remarks

Interior orientation establishes the relationship between image space (columns and rows) and film plane coordinates, typically measured in microns from the center of the image, as an affine transformation. This information is typically found in the aerial photography project file, where information for each frame is stored.

There are two ways to provide the affine coefficients: as a forward transformation (pixel space to film plane space) or reverse (film plane to pixels). Provide the coefficients and the direction when setting this parameter.

Product Availability

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

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

isEnableKonrady

public boolean isEnableKonrady()
                        throws IOException,
                               AutomationException
Indicates if the Konrady adjustment to be applied.

Product Availability

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

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

setEnableKonrady

public void setEnableKonrady(boolean pK)
                      throws IOException,
                             AutomationException
Indicates if the Konrady adjustment to be applied.

Remarks

This parameter controls whether radial distortion correction is performed or not. If the corrections were applied during post-processing of the images, set this value to false. Otherwise, provide the Konrady coefficients. Be sure to set the correct Konrady type (ESRI or USGS) that corresponds to the coefficients.

Product Availability

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

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

getKonradyParameters

public Object getKonradyParameters()
                            throws IOException,
                                   AutomationException
The Konrady adjustment parameters.

Product Availability

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

Specified by:
getKonradyParameters in interface IFrameXform
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setKonradyParameters

public void setKonradyParameters(Object pK)
                          throws IOException,
                                 AutomationException
The Konrady adjustment parameters.

Remarks

Konrady coefficients are used to correct radial distortions in standard frame cameras. Three double precision values are stored and used when displaying the imagery. See the ESRIRasterKonradyType enumeration values to see how these coefficients are applied.

Product Availability

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

Specified by:
setKonradyParameters in interface IFrameXform
Parameters:
pK - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getKonradyType

public int getKonradyType()
                   throws IOException,
                          AutomationException
The Konrady calculation method.

Product Availability

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

Specified by:
getKonradyType in interface IFrameXform
Returns:
A com.esri.arcgis.datasourcesraster.esriRasterKonradyType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setKonradyType

public void setKonradyType(int pType)
                    throws IOException,
                           AutomationException
The Konrady calculation method.

Description

ArcMap supports two conventions used for correcting radial distortions in standard frame cameras. They are represented by the enumeration values ESRIRasterKonradyESRI and ESRIRasterKonradyUSGS.

Both use a power series to calculate the percent error. The ESRI method uses second and fourth powers, while the USGS method uses third and fifth powers. See the enumeration ESRIRasterKonradyType for more information.

Product Availability

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

Specified by:
setKonradyType in interface IFrameXform
Parameters:
pType - A com.esri.arcgis.datasourcesraster.esriRasterKonradyType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryKonradyParameters

public void queryKonradyParameters(double[] pK)
                            throws IOException,
                                   AutomationException
Queries the Konrady adjustment parameterrs.

Product Availability

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

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

isApplyCurvatureAndRefraction

public boolean isApplyCurvatureAndRefraction()
                                      throws IOException,
                                             AutomationException
Indicates if the adjustment of earth curvature and refraction is applied.

Product Availability

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

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

setApplyCurvatureAndRefraction

public void setApplyCurvatureAndRefraction(boolean pApplyCurvatureAndRefraction)
                                    throws IOException,
                                           AutomationException
Indicates if the adjustment of earth curvature and refraction is applied.

Remarks

Optional parameter indicating whether the earth curvature and atmospheric distortion correction should be applied. By default it is not. It is primarily used for high altitude aerial photography, as the effect is minimal in most aerial surveys.

Product Availability

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

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

getEarthRadius

public double getEarthRadius()
                      throws IOException,
                             AutomationException
The earth radius in meters.

Product Availability

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

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

setEarthRadius

public void setEarthRadius(double radius)
                    throws IOException,
                           AutomationException
The earth radius in meters.

Product Availability

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

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

getAverageZ

public double getAverageZ()
                   throws IOException,
                          AutomationException
The average Z in meters.

Product Availability

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

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

setAverageZ

public void setAverageZ(double averageZ)
                 throws IOException,
                        AutomationException
The average Z in meters.

Remarks

When performing ortho-rectification, a source of elevation data is required. This is often a digital elevation model (DEM) dataset. If a DEM is not available, the average elevation in the area of interest must be set for best results.

Product Availability

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

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

getPrincipalPoint

public IPoint getPrincipalPoint()
                         throws IOException,
                                AutomationException
The film principal point.

Product Availability

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

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

setPrincipalPointByRef

public void setPrincipalPointByRef(IPoint pp)
                            throws IOException,
                                   AutomationException
The film principal point.

Remarks

The principal point is the difference in locations between the center of the film plane (0,0 from the interior orientation) and the true optical center of the lens system. This information is found in the camera calibration report.

Product Availability

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

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

getPerspectiveMatrix

public Object getPerspectiveMatrix()
                            throws IOException,
                                   AutomationException
The specified sensor orientation as an orthogonal rotation matrix.

Product Availability

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

Specified by:
getPerspectiveMatrix in interface IFrameXform
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPerspectiveMatrix

public void setPerspectiveMatrix(Object pMatrix)
                          throws IOException,
                                 AutomationException
The specified sensor orientation as an orthogonal rotation matrix.

Remarks

The perspective matrix is a 3x3 rotation matrix that adjusts the imagery based on the three perspective angles associated with an image frame. The three angles represent the roll, pitch and yaw of the aircraft (omega, phi, kappa) when the exposure was taken.

There are two ways to set the perspective matrix: put_PerspectiveMatrix( ) and PutPerspectiveAngles( ). Both methods populate the 3x3 rotation matrix. The choice of which to use is largely based on what information is available in the aerial photography project file.

Product Availability

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

Specified by:
setPerspectiveMatrix in interface IFrameXform
Parameters:
pMatrix - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPerspectiveMatrix

public void queryPerspectiveMatrix(double[] pMatrix)
                            throws IOException,
                                   AutomationException
Queries the perspective matrix.

Product Availability

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

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

getPerspectiveCenter

public IPoint getPerspectiveCenter()
                            throws IOException,
                                   AutomationException
The sensor position.

Product Availability

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

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

setPerspectiveCenterByRef

public void setPerspectiveCenterByRef(IPoint sp)
                               throws IOException,
                                      AutomationException
The sensor position.

Remarks

The perspective center is the location of the aircraft when the exposure was taken, expressed in the spatial reference system associated with the project.

Product Availability

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

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

getPerspectivePolarity

public int getPerspectivePolarity()
                           throws IOException,
                                  AutomationException
The sensor polarity.

Product Availability

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

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

setPerspectivePolarity

public void setPerspectivePolarity(int polarity)
                            throws IOException,
                                   AutomationException
The sensor polarity.

Remarks

An optional parameter that defines the direction of the Z axis. The default value is -1, and should only be changed for sensor that use that convention.

Product Availability

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

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

getFocalLength

public double getFocalLength()
                      throws IOException,
                             AutomationException
The focal length in micron.

Product Availability

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

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

setFocalLength

public void setFocalLength(double length)
                    throws IOException,
                           AutomationException
The focal length in micron.

Product Availability

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

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

putInteriorOrientationParameters

public void putInteriorOrientationParameters(int direction,
                                             Object parameters)
                                      throws IOException,
                                             AutomationException
Puts the interior orientation parameters.

Remarks

See putref_InteriorOrientation for more details.

Product Availability

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

Specified by:
putInteriorOrientationParameters in interface IFrameXform
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
parameters - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putPerspectiveAngles

public void putPerspectiveAngles(double omega,
                                 double phi,
                                 double kappa,
                                 boolean clockwise)
                          throws IOException,
                                 AutomationException
Puts the sensor exterior orientation as a set of rotation angles in degrees.

Remarks

An alternative to put_PerspectiveMatrix( ) for establishing the rotation matrix.

Product Availability

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

Specified by:
putPerspectiveAngles in interface IFrameXform
Parameters:
omega - The omega (in)
phi - The phi (in)
kappa - The kappa (in)
clockwise - The clockwise (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPerspectiveAngles

public void queryPerspectiveAngles(double[] pOmega,
                                   double[] pPhi,
                                   double[] pKappa,
                                   boolean[] pClockwise)
                            throws IOException,
                                   AutomationException
Queries the sensor exterior orientation as a set of rotation angles in degrees.

Product Availability

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

Specified by:
queryPerspectiveAngles in interface IFrameXform
Parameters:
pOmega - The pOmega (out: use single element array)
pPhi - The pPhi (out: use single element array)
pKappa - The pKappa (out: use single element array)
pClockwise - The pClockwise (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLSRByRef

public void setLSRByRef(IGeodataXform ppLSR)
                 throws IOException,
                        AutomationException
The LSR-To-USR conversion.

Product Availability

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

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

getLSR

public IGeodataXform getLSR()
                     throws IOException,
                            AutomationException
The LSR-To-USR conversion.

Product Availability

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

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

putDistortionTable

public void putDistortionTable(IDoubleArray pDistanceInMillimeters,
                               IDoubleArray pDistortionInMicrons)
                        throws IOException,
                               AutomationException
The distortion tables to calculate Konrady coefficients and residuals.

Remarks

An alternative to put_KonradyParameters, this method allows the use of the distortion tables contained in the camera calibration report to calculate the Konrady coefficients. It is critical to ensure that the units are correct for the two arrays that are passed in. The first array is the radial distance in mm, while the second array is the distortion errors in microns. Either ESRI or USGS conventions can be used to calculate the coefficients. See the ESRIRasterKonradyType enumeration for more details.

Product Availability

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

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

getDistortionTable

public void getDistortionTable(IDoubleArray[] ppDistanceInMillimeters,
                               IDoubleArray[] ppDistortionInMicrons)
                        throws IOException,
                               AutomationException
The distortion tables.

Product Availability

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

Specified by:
getDistortionTable in interface IFrameXform
Parameters:
ppDistanceInMillimeters - A reference to a com.esri.arcgis.system.IDoubleArray (out: use single element array)
ppDistortionInMicrons - A reference to a com.esri.arcgis.system.IDoubleArray (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getResiduals

public IDoubleArray getResiduals()
                          throws IOException,
                                 AutomationException
The residuals for distortion table points.

Remarks

After using the distortion table to calculate the Konrady coefficients, it is important to check the residuals to detect if any anomalies, for instance an error when inputing the data values. Under normal circumstances, the residuals should be just a few microns. Larger residuals could indicate a problem with the data points.

Product Availability

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

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

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
The output spatial reference after applying this transform.

Product Availability

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

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

setSpatialReferenceByRef

public void setSpatialReferenceByRef(ISpatialReference ppSpatialRefence)
                              throws IOException,
                                     AutomationException
The output spatial reference after applying this transform.

Product Availability

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

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

getDomains

public IGeometryCollection getDomains()
                               throws IOException,
                                      AutomationException
The domains in output space.

Description

The returned domains should a single polygon geometry or a collection of polygons.

Product Availability

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

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

isIdentity

public boolean isIdentity()
                   throws IOException,
                          AutomationException
Indicates if this geodata transform is an identity transform.

Product Availability

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

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

transform

public void transform(int direction,
                      int npoints,
                      _WKSPoint[] points)
               throws IOException,
                      AutomationException
Transforms a set of points in a given direction.

Product Availability

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

Specified by:
transform in interface IGeodataXform
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
npoints - The npoints (in)
points - A Structure: com.esri.arcgis.system._WKSPoint (A 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.

transformCellsize

public void transformCellsize(int direction,
                              double[] dx,
                              double[] dy,
                              IEnvelope pAreaOfInterest)
                       throws IOException,
                              AutomationException
Transforms a cellsize in a given direction.

Product Availability

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

Specified by:
transformCellsize in interface IGeodataXform
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
dx - The dx (in/out: use single element array)
dy - The dy (in/out: use single element array)
pAreaOfInterest - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformExtent

public void transformExtent(int direction,
                            IEnvelope[] pExtent)
                     throws IOException,
                            AutomationException
Transforms an extent in a given direction.

Product Availability

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

Specified by:
transformExtent in interface IGeodataXform
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
pExtent - A reference to a com.esri.arcgis.geometry.IEnvelope (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPoints

public void transformPoints(int direction,
                            IPointCollection[] pPoints)
                     throws IOException,
                            AutomationException
Transforms a point collection in a given direction

Product Availability

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

Specified by:
transformPoints in interface IGeodataXform
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
pPoints - A reference to a com.esri.arcgis.geometry.IPointCollection (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFullExtent

public IEnvelope getFullExtent()
                        throws IOException,
                               AutomationException
The full output extent within which this xform is applied.

Product Availability

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

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

setFullExtent

public void setFullExtent(IEnvelope ppFullExtent)
                   throws IOException,
                          AutomationException
The full output extent within which this xform is applied.

Product Availability

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

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

prepare

public void prepare(int iDomain,
                    double dx,
                    double dy,
                    IEnvelope pExtent)
             throws IOException,
                    AutomationException
Prepares the xform for a given extent and cellsize within a domain.

Product Availability

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

Specified by:
prepare in interface IRasterXform
Parameters:
iDomain - The iDomain (in)
dx - The dx (in)
dy - The dy (in)
pExtent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getConstantZ

public double getConstantZ()
                    throws IOException,
                           AutomationException
The constant Z value in meters.

Remarks

This property can be used to set a constant elevation across the image when DEM method is not used.

Product Availability

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

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

setConstantZ

public void setConstantZ(double z)
                  throws IOException,
                         AutomationException
The constant Z value in meters.

Product Availability

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

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

getZFactor

public double getZFactor()
                  throws IOException,
                         AutomationException
The conversion factor from DEM Z unit to meters.

Product Availability

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

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

setZFactor

public void setZFactor(double zFactor)
                throws IOException,
                       AutomationException
The conversion factor from DEM Z unit to meters.

Remarks

A factor that converts the unit of the DEM to meter

Product Availability

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

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

getZOffset

public double getZOffset()
                  throws IOException,
                         AutomationException
The Z offset in meters applied to DEM.

Remarks

If the DEM data used is not based on sea level, this property can be used to do the adjustment.

Product Availability

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

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

setZOffset

public void setZOffset(double zOffset)
                throws IOException,
                       AutomationException
The Z offset in meters applied to DEM.

Product Availability

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

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

getDEM

public IRaster getDEM()
               throws IOException,
                      AutomationException
The Digital Elevation Model (DEM).

Product Availability

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

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

setDEMByRef

public void setDEMByRef(IRaster ppDEM)
                 throws IOException,
                        AutomationException
The Digital Elevation Model (DEM).

Remarks

Set the DEM to be used in orthorectification.

Product Availability

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

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

isRequireDEM

public boolean isRequireDEM()
                     throws IOException,
                            AutomationException
Indicates if DEM is required for applying this transform.

Product Availability

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

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

setRequireDEM

public void setRequireDEM(boolean pRequireDEM)
                   throws IOException,
                          AutomationException
Indicates if DEM is required for applying this transform.

Product Availability

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

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

isCorrectGeoid

public boolean isCorrectGeoid()
                       throws IOException,
                              AutomationException
Indicates if Geoid correction is needed.

Product Availability

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

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

setCorrectGeoid

public void setCorrectGeoid(boolean pCorrection)
                     throws IOException,
                            AutomationException
Indicates if Geoid correction is needed.

Remarks

If the property is set to true, the DEM used in orthorectification will be corrected to use the true elevation.

Product Availability

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

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

transformMeasuresFF

public void transformMeasuresFF(int direction,
                                int cMeasures,
                                double[] inMeasures,
                                double[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to floating point measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresFF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresFI

public void transformMeasuresFI(int direction,
                                int cMeasures,
                                double[] inMeasures,
                                int[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms floating point measures to integer measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresFI in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresIF

public void transformMeasuresIF(int direction,
                                int cMeasures,
                                int[] inMeasures,
                                double[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to floating point measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresIF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformMeasuresII

public void transformMeasuresII(int direction,
                                int cMeasures,
                                int[] inMeasures,
                                int[] outMeasures)
                         throws IOException,
                                AutomationException
Transforms integer measures to integer measures (or do the inverse).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformMeasuresII in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cMeasures - The cMeasures (in)
inMeasures - The inMeasures (in)
outMeasures - The outMeasures (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFF

public void transformPointsFF(int direction,
                              int cPoints,
                              double[] inPoints,
                              double[] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to floating point points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsFF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsFI

public void transformPointsFI(int direction,
                              int cPoints,
                              double[] inPoints,
                              int[] outPoints)
                       throws IOException,
                              AutomationException
Transforms floating point points to integer points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsFI in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsIF

public void transformPointsIF(int direction,
                              int cPoints,
                              int[] inPoints,
                              double[] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to floating point points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsIF in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transformPointsII

public void transformPointsII(int direction,
                              int cPoints,
                              int[] inPoints,
                              int[] outPoints)
                       throws IOException,
                              AutomationException
Transforms integer points to integer points (or do the inverse).

Remarks

The cPoints parameter is the number of points you wish to transform. inPoints and outPoints are one-dimensional arrays so you must interleave coordinate pairs into the arrays.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
transformPointsII in interface ITransformation
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
cPoints - The cPoints (in)
inPoints - The inPoints (in)
outPoints - The outPoints (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

esri_clone

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

Product Availability

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

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

assign

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

Description

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

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isEqual

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

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.

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.

isSupportedAtVersion

public boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

public Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

public void serialize(IXMLSerializeData data)
               throws IOException,
                      AutomationException
Serializes an object to XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

deserialize

public void deserialize(IXMLSerializeData data)
                 throws IOException,
                        AutomationException
Deserializes an object from XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getMinNamespaceSupported

public String getMinNamespaceSupported()
                                throws IOException,
                                       AutomationException
The minimum namespace the class can serialize to (eg the 90 namespace).

Product Availability

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

Specified by:
getMinNamespaceSupported in interface IXMLVersionSupport
Returns:
The namespaceURI
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