

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object com.esri.arcgis.geometry.Envelope
public class Envelope
A rectangle with sides parallel to a coordinate system defining the extent of another geometry; optionally has min and max measure, height and ID attributes.
The Envelope coclass defines a rectangular shape by its minimum and maximum x,y coordinates. Therefore, an Envelope is always orthogonal to its SpatialReference. An Envelope may also define minimum and maximum z and mvalues, depending on the implemented IZAware and IMAware interfaces.
Constructor Summary  

Envelope()
Constructs a Envelope using ArcGIS Engine. 

Envelope(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. Envelope theEnvelope = (Envelope) obj; 
Method Summary  

void 
assign(IClone src)
Assigns the properties of src to the receiver. 
void 
centerAt(IPoint p)
Moves this envelope so it is centered at p. 
boolean 
contains(IGeometry other)
Indicates if this geometry contains the other geometry. 
boolean 
crosses(IGeometry other)
Indicates if the two geometries intersect in a geometry of lesser dimension. 
void 
defineFromPoints(int count,
IPoint points)
Defines the envelope to cover all the points. 
void 
defineFromPoints(IPoint[] points)
Defines the envelope to cover all the points. 
void 
defineFromWKSPoints(_WKSPoint[] wksPoints)
Defines the envelope to cover all the points. 
void 
deserialize(IXMLSerializeData data)
Deserializes an object from XML. 
boolean 
disjoint(IGeometry other)
Indicates if the two geometries share no points in common. 
boolean 
disjoint3D(IGeometry pOther)
Indicates if the two geometries share no points in common. 
void 
dropMs()
Sets all the M values to a nonvalid number (NaN). 
void 
dropZs()
Sets all the Z values to a nonvalid number (NaN). 
boolean 
equals(Object o)
Compare this object with another 
IClone 
esri_clone()
Clones the receiver and assigns the result to *clone. 
boolean 
esri_equals(IGeometry other)
Indicates if the two geometries are of the same type and define the same set of points in the plane. 
void 
expand(double dx,
double dy,
boolean asRatio)
Moves the X and Y coordinates of the sides toward or away from each other. 
void 
expandM(double dm,
boolean asRatio)
Moves the measure of the sides toward or away from each other. 
void 
expandZ(double dz,
boolean asRatio)
Moves the Z attribute of the sides toward or away from each other. 
void 
geoNormalize()
Shifts longitudes, if need be, into a continuous range of 360 degrees. 
void 
geoNormalizeFromLongitude(double longitude)
Normalizes longitudes into a continuous range containing the longitude. 
double 
getArea()
The area. 
IPoint 
getCentroid()
The center of gravity (centroid). 
IPoint 
getCentroidEx()
The center of gravity (centroid). 
void 
getClassID(GUID[] pClassID)
getClassID 
static String 
getClsid()
getClsid. 
double 
getDepth()
The depth of the envelope. 
int 
getDimension()
The topological dimension of this geometry. 
IEnvelope 
getEnvelope()
Creates a copy of this geometry's envelope and returns it. 
int 
getGeometryType()
The type of this geometry. 
double 
getHeight()
The height of the envelope. 
IPoint 
getLabelPoint()
A point guaranteed to be inside this area. 
IPoint 
getLowerLeft()
The lower left corner. 
IPoint 
getLowerRight()
The lower right corner. 
double 
getMMax()
The maximum measure value in the area of the envelope. 
double 
getMMin()
The minimum measure value in the area of the envelope. 
void 
getSizeMax(_ULARGE_INTEGER[] pcbSize)
getSizeMax 
ISpatialReference 
getSpatialReference()
The spatial reference associated with this geometry. 
IPoint 
getUpperLeft()
The upper left corner. 
IPoint 
getUpperRight()
The upper right corner. 
double 
getWidth()
The width of the envelope. 
double 
getXMax()
The position of the right side. 
double 
getXMin()
The position of the left side. 
double 
getYMax()
The position of the top. 
double 
getYMin()
The position of the bottom. 
double 
getZMax()
The maximum Z value in the area of the envelope. 
double 
getZMin()
The minimum Z value in the area of the envelope. 
int 
hashCode()
the hashcode for this object 
boolean 
hitTest(IPoint queryPoint,
double searchRadius,
int geometryPart,
IPoint hitPoint,
double[] hitDistance,
int[] hitPartIndex,
int[] hitSegmentIndex,
boolean[] bRightSide)
Locates a part of a geometry closest to a query point. 
void 
interfaceSupportsErrorInfo(GUID riid)
interfaceSupportsErrorInfo 
void 
intersect(IEnvelope inEnvelope)
Adjusts to include only the area also included by inEnvelope. 
void 
intersect3D(IEnvelope inEnvelope)
Adjusts to include only the volume also included by inEnvelope. 
boolean 
isChanged()
Indicates if a geometry has been changed (edited, projected, etc). 
void 
isDirty()
isDirty 
boolean 
isEmpty()
Indicates whether this geometry contains any points. 
boolean 
isEqual(IClone other)
Returns TRUE when the receiver and other have the same properties. 
boolean 
isIdentical(IClone other)
Returns TRUE when the receiver and other are the same object. 
boolean 
isMAware()
Indicates whether or not the geometry is aware of and capable of handling Ms. 
boolean 
isMSimple()
Indicates if all the Ms are valid numbers. 
boolean 
isZAware()
Indicates whether or not the geometry is aware of and capable of handling Zs. 
boolean 
isZSimple()
Indicates if all the Zs are valid numbers. 
void 
load(IStream pstm)
load 
void 
move(double dx,
double dy)
Moves dx units horizontally and dy units vertically. 
void 
moveVector(ILine v)
Moves a direction and distance v. 
void 
offset(double x,
double y)
Moves the sides x units horizontally and y units vertically. 
void 
offsetM(double m)
Moves the sides m units. 
void 
offsetZ(double z)
Moves the sides z units. 
boolean 
overlaps(IGeometry other)
Indicates if the intersection of the two geometries has the same dimension as one of the input geometries. 
void 
project(ISpatialReference newReferenceSystem)
Projects this geometry into a new spatial reference. 
void 
project5(ISpatialReference newSpatialReference,
int projectionHint)
Same as Project, but with additional parameter projectionHint. 
void 
projectEx(ISpatialReference newReferenceSystem,
int direction,
IGeoTransformation geoTransformation,
boolean bAngularDensify,
double maxSegmentLength,
double maxDeviation)
Projects a geometry, optionally applies a GeoTransformation, and optionally densifies the geometry. 
void 
projectEx5(ISpatialReference newReferenceSystem,
int direction,
ITransformation transformation,
boolean bAngularDensify,
double maxSegmentLength,
double maxDeviation,
int projectionHint)
Same as ProjectEx, but with additional parameter projectionHint. 
void 
putCoords(double xMin,
double yMin,
double xMax,
double yMax)
Constructs an envelope from the coordinate values of lower, left and upper, right corners. 
void 
putMCoords(double mMin,
double mMax)
Sets the minimum and maximum M values simultaneously. 
void 
putZCoords(double zMin,
double zMax)
Sets the minimum and maximum Z values simultaneously. 
void 
queryCentroid(IPoint center)
Copies the centroid of this area to the specified point. 
void 
queryCoords(double[] xMin,
double[] yMin,
double[] xMax,
double[] yMax)
Returns the coordinates of lower, left and upper, right corners. 
void 
queryEnvelope(IEnvelope outEnvelope)
Copies this geometry's envelope properties into the specified envelope. 
void 
queryLabelPoint(IPoint labelPoint)
Copies to the input point a point guaranteed to be inside this area. 
void 
queryMCoords(double[] mMin,
double[] mMax)
Queries the minimum and maximum M values simultaneously. 
void 
queryNearestPoint(IPoint p,
int extension,
IPoint nearest)
Copies into 'nearest' a point on this geometry nearest to the input point. 
void 
queryNearestPoint3D(IPoint pInP,
int extension,
IPoint pNearest)
Copies into 'nearest' a point on this geometry nearest to the input point. 
void 
queryWKSEnvelope(_WKSEnvelope[] e)
Defines the specified wksenvelope to be the current extent of this geometry in the xy plane. 
void 
queryZCoords(double[] zMin,
double[] zMax)
Queries the minimum and maximum Z values simultaneously. 
void 
readExternal(ObjectInput in)

boolean 
relation(IGeometry other,
String relationDescription)
Indicates if the defined relationship exists. 
double 
returnDistance(IGeometry other)
Returns the minimum distance between two geometries. 
double 
returnDistance3D(IGeometry pOther)
Returns the minimal distance between two geometries. 
IPoint 
returnNearestPoint(IPoint p,
int extension)
Creates and returns a point on this geometry nearest to the input point. 
IPoint 
returnNearestPoint3D(IPoint pInP,
int extension)
Creates and returns a point on this geometry nearest to the input point. 
void 
rotate(IPoint origin,
double rotationAngle)
Rotates about the specified origin point. 
void 
save(IStream pstm,
int fClearDirty)
save 
void 
scale(IPoint origin,
double sx,
double sy)
Scales about the specified origin using seperate horizonal and vertical scales. 
void 
serialize(IXMLSerializeData data)
Serializes an object to XML. 
void 
setChanged(boolean isChanged)
Indicates if a geometry has been changed (edited, projected, etc). 
void 
setDepth(double depth)
The depth of the envelope. 
void 
setEmpty()
Removes all points from this geometry. 
void 
setHeight(double height)
The height of the envelope. 
void 
setLowerLeft(IPoint lowerLeft)
The lower left corner. 
void 
setLowerRight(IPoint lowerRight)
The lower right corner. 
void 
setMAware(boolean mAware)
Indicates whether or not the geometry is aware of and capable of handling Ms. 
void 
setMMax(double mMax)
The maximum measure value in the area of the envelope. 
void 
setMMin(double mMin)
The minimum measure value in the area of the envelope. 
void 
setSpatialReferenceByRef(ISpatialReference spatialRef)
The spatial reference associated with this geometry. 
void 
setUpperLeft(IPoint upperLeft)
The upper left corner. 
void 
setUpperRight(IPoint upperRight)
The upper right corner. 
void 
setWidth(double width)
The width of the envelope. 
void 
setXMax(double xMax)
The position of the right side. 
void 
setXMin(double xMin)
The position of the left side. 
void 
setYMax(double yMax)
The position of the top. 
void 
setYMin(double yMin)
The position of the bottom. 
void 
setZAware(boolean zAware)
Indicates whether or not the geometry is aware of and capable of handling Zs. 
void 
setZMax(double zMax)
The maximum Z value in the area of the envelope. 
void 
setZMin(double zMin)
The minimum Z value in the area of the envelope. 
void 
snapToSpatialReference()
Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system. 
boolean 
touches(IGeometry other)
Indicates if the boundaries of the geometries intersect. 
void 
transform(int direction,
ITransformation transformation)
Applies an arbitrary transformation. 
void 
union(IEnvelope inEnvelope)
Adjusts to overlap inEnvelope. 
void 
union3D(IEnvelope inEnvelope)
Adjusts to encapsulate inEnvelope. 
boolean 
within(IGeometry other)
Indicates if this geometry is contained (is within) another geometry. 
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 

public Envelope() throws IOException, UnknownHostException
IOException
 if there are interop problems
UnknownHostException
 if there are interop problemspublic Envelope(Object obj) throws IOException
Envelope theEnvelope = (Envelope) obj;
obj
to Envelope
.
obj
 an object returned from ArcGIS Engine or Server
IOException
 if there are interop problemsMethod Detail 

public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public void defineFromWKSPoints(_WKSPoint[] wksPoints) throws IOException, AutomationException
Please see the DefineFromWKSPoints method of IEnvelope for more details
defineFromWKSPoints
in interface IEnvelopeGEN
wksPoints
 A Structure: com.esri.arcgis.system._WKSPoint (An array of com.esri.arcgis.system._WKSPoint COM typedef) (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void defineFromPoints(IPoint[] points) throws IOException, AutomationException
Please see the DefineFromPoints method of IEnvelope for more details
defineFromPoints
in interface IEnvelopeGEN
points
 A reference to a com.esri.arcgis.geometry.IPoint array (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getWidth() throws IOException, AutomationException
refer to the Width property of IEnvelope
getWidth
in interface IEnvelope
getWidth
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getUpperLeft()
,
IEnvelope.getHeight()
,
IEnvelope.getLowerLeft()
,
IEnvelope.getLowerRight()
public void setWidth(double width) throws IOException, AutomationException
refer to the Width property of IEnvelope
setWidth
in interface IEnvelope
setWidth
in interface IEnvelopeGEN
width
 The width (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getHeight() throws IOException, AutomationException
refer to the Height property of IEnvelope
getHeight
in interface IEnvelope
getHeight
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getWidth()
,
IEnvelope.getUpperLeft()
,
IEnvelope.getLowerLeft()
,
IEnvelope.getLowerRight()
,
IEnvelope.getUpperRight()
public void setDepth(double depth) throws IOException, AutomationException
refer to the Depth property of IEnvelope
setDepth
in interface IEnvelope
setDepth
in interface IEnvelopeGEN
depth
 The depth (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getDepth() throws IOException, AutomationException
refer to the Depth property of IEnvelope
getDepth
in interface IEnvelope
getDepth
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setHeight(double height) throws IOException, AutomationException
refer to the Height property of IEnvelope
setHeight
in interface IEnvelope
setHeight
in interface IEnvelopeGEN
height
 The height (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getLowerLeft() throws IOException, AutomationException
refer to the LowerLeft property of IEnvelope
getLowerLeft
in interface IEnvelope
getLowerLeft
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getWidth()
,
IEnvelope.getUpperLeft()
,
IEnvelope.getHeight()
,
IEnvelope.getLowerRight()
,
IEnvelope.getUpperRight()
public void setLowerLeft(IPoint lowerLeft) throws IOException, AutomationException
refer to the LowerLeft property of IEnvelope
setLowerLeft
in interface IEnvelope
setLowerLeft
in interface IEnvelopeGEN
lowerLeft
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getUpperLeft() throws IOException, AutomationException
refer to the UpperLeft property of IEnvelope
getUpperLeft
in interface IEnvelope
getUpperLeft
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getWidth()
,
IEnvelope.getHeight()
,
IEnvelope.getLowerLeft()
,
IEnvelope.getLowerRight()
,
IEnvelope.getUpperRight()
public void setUpperLeft(IPoint upperLeft) throws IOException, AutomationException
refer to the UpperLeft property of IEnvelope
setUpperLeft
in interface IEnvelope
setUpperLeft
in interface IEnvelopeGEN
upperLeft
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getUpperRight() throws IOException, AutomationException
refer to the UpperRight property of IEnvelope
getUpperRight
in interface IEnvelope
getUpperRight
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getWidth()
,
IEnvelope.getUpperLeft()
,
IEnvelope.getHeight()
,
IEnvelope.getLowerLeft()
,
IEnvelope.getLowerRight()
public void setUpperRight(IPoint upperRight) throws IOException, AutomationException
refer to the UpperRight property of IEnvelope
setUpperRight
in interface IEnvelope
setUpperRight
in interface IEnvelopeGEN
upperRight
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getLowerRight() throws IOException, AutomationException
refer to the LowerRight property of IEnvelope
getLowerRight
in interface IEnvelope
getLowerRight
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getWidth()
,
IEnvelope.getUpperLeft()
,
IEnvelope.getHeight()
,
IEnvelope.getLowerLeft()
,
IEnvelope.getUpperRight()
public void setLowerRight(IPoint lowerRight) throws IOException, AutomationException
refer to the LowerRight property of IEnvelope
setLowerRight
in interface IEnvelope
setLowerRight
in interface IEnvelopeGEN
lowerRight
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getXMin() throws IOException, AutomationException
refer to the XMin property of IEnvelope
getXMin
in interface IEnvelope
getXMin
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getYMin()
,
IEnvelope.getXMax()
public void setXMin(double xMin) throws IOException, AutomationException
refer to the XMin property of IEnvelope
setXMin
in interface IEnvelope
setXMin
in interface IEnvelopeGEN
xMin
 The xMin (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getYMin() throws IOException, AutomationException
refer to the YMin property of IEnvelope
getYMin
in interface IEnvelope
getYMin
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getXMin()
,
IEnvelope.getXMax()
public void setYMin(double yMin) throws IOException, AutomationException
refer to the YMin property of IEnvelope
setYMin
in interface IEnvelope
setYMin
in interface IEnvelopeGEN
yMin
 The yMin (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getXMax() throws IOException, AutomationException
refer to the XMax property of IEnvelope
getXMax
in interface IEnvelope
getXMax
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getYMin()
,
IEnvelope.getXMin()
public void setXMax(double xMax) throws IOException, AutomationException
refer to the XMax property of IEnvelope
setXMax
in interface IEnvelope
setXMax
in interface IEnvelopeGEN
xMax
 The xMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getYMax() throws IOException, AutomationException
refer to the YMax property of IEnvelope
getYMax
in interface IEnvelope
getYMax
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.getYMin()
,
IEnvelope.getXMin()
,
IEnvelope.getXMax()
public void setYMax(double yMax) throws IOException, AutomationException
refer to the YMax property of IEnvelope
setYMax
in interface IEnvelope
setYMax
in interface IEnvelopeGEN
yMax
 The yMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getMMin() throws IOException, AutomationException
refer to the MMin property of IEnvelope
getMMin
in interface IEnvelope
getMMin
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setMMin(double mMin) throws IOException, AutomationException
refer to the MMin property of IEnvelope
setMMin
in interface IEnvelope
setMMin
in interface IEnvelopeGEN
mMin
 The mMin (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getMMax() throws IOException, AutomationException
refer to the MMax property of IEnvelope
getMMax
in interface IEnvelope
getMMax
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setMMax(double mMax) throws IOException, AutomationException
refer to the MMax property of IEnvelope
setMMax
in interface IEnvelope
setMMax
in interface IEnvelopeGEN
mMax
 The mMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getZMin() throws IOException, AutomationException
refer to the ZMin property of IEnvelope
getZMin
in interface IEnvelope
getZMin
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setZMin(double zMin) throws IOException, AutomationException
refer to the ZMin property of IEnvelope
setZMin
in interface IEnvelope
setZMin
in interface IEnvelopeGEN
zMin
 The zMin (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getZMax() throws IOException, AutomationException
refer to the ZMax property of IEnvelope
getZMax
in interface IEnvelope
getZMax
in interface IEnvelopeGEN
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setZMax(double zMax) throws IOException, AutomationException
refer to the ZMax property of IEnvelope
setZMax
in interface IEnvelope
setZMax
in interface IEnvelopeGEN
zMax
 The zMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void union(IEnvelope inEnvelope) throws IOException, AutomationException
refer to the Union method of IEnvelope
union
in interface IEnvelope
union
in interface IEnvelopeGEN
inEnvelope
 A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.offset(double, double)
,
IEnvelope.centerAt(com.esri.arcgis.geometry.IPoint)
,
IEnvelope.expand(double, double, boolean)
,
IEnvelope.intersect(com.esri.arcgis.geometry.IEnvelope)
public void intersect(IEnvelope inEnvelope) throws IOException, AutomationException
refer to the Intersect method of IEnvelope
intersect
in interface IEnvelope
intersect
in interface IEnvelopeGEN
inEnvelope
 A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.offset(double, double)
,
IEnvelope.centerAt(com.esri.arcgis.geometry.IPoint)
,
IEnvelope.expand(double, double, boolean)
,
IEnvelope.union(com.esri.arcgis.geometry.IEnvelope)
public void offset(double x, double y) throws IOException, AutomationException
refer to the Offset method of IEnvelope
offset
in interface IEnvelope
offset
in interface IEnvelopeGEN
x
 The x (in)y
 The y (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.centerAt(com.esri.arcgis.geometry.IPoint)
,
IEnvelope.expand(double, double, boolean)
,
IEnvelope.intersect(com.esri.arcgis.geometry.IEnvelope)
,
IEnvelope.union(com.esri.arcgis.geometry.IEnvelope)
public void offsetZ(double z) throws IOException, AutomationException
refer to the OffsetZ method of IEnvelope
offsetZ
in interface IEnvelope
offsetZ
in interface IEnvelopeGEN
z
 The z (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void offsetM(double m) throws IOException, AutomationException
refer to the OffsetM method of IEnvelope
offsetM
in interface IEnvelope
offsetM
in interface IEnvelopeGEN
m
 The m (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void expand(double dx, double dy, boolean asRatio) throws IOException, AutomationException
refer to the Expand method of IEnvelope
expand
in interface IEnvelope
expand
in interface IEnvelopeGEN
dx
 The dx (in)dy
 The dy (in)asRatio
 The asRatio (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.offset(double, double)
,
IEnvelope.centerAt(com.esri.arcgis.geometry.IPoint)
,
IEnvelope.intersect(com.esri.arcgis.geometry.IEnvelope)
,
IEnvelope.union(com.esri.arcgis.geometry.IEnvelope)
public void expandZ(double dz, boolean asRatio) throws IOException, AutomationException
refer to the ExpandZ method of IEnvelope
expandZ
in interface IEnvelope
expandZ
in interface IEnvelopeGEN
dz
 The dz (in)asRatio
 The asRatio (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void expandM(double dm, boolean asRatio) throws IOException, AutomationException
refer to the ExpandM method of IEnvelope
expandM
in interface IEnvelope
expandM
in interface IEnvelopeGEN
dm
 The dm (in)asRatio
 The asRatio (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void putCoords(double xMin, double yMin, double xMax, double yMax) throws IOException, AutomationException
refer to the PutCoords method of IEnvelope
putCoords
in interface IEnvelope
putCoords
in interface IEnvelopeGEN
xMin
 The xMin (in)yMin
 The yMin (in)xMax
 The xMax (in)yMax
 The yMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.queryCoords(double[], double[], double[], double[])
public void queryCoords(double[] xMin, double[] yMin, double[] xMax, double[] yMax) throws IOException, AutomationException
refer to the QueryCoords method of IEnvelope
queryCoords
in interface IEnvelope
queryCoords
in interface IEnvelopeGEN
xMin
 The xMin (out: use single element array)yMin
 The yMin (out: use single element array)xMax
 The xMax (out: use single element array)yMax
 The yMax (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.putCoords(double, double, double, double)
public void centerAt(IPoint p) throws IOException, AutomationException
refer to the CenterAt method of IEnvelope
centerAt
in interface IEnvelope
centerAt
in interface IEnvelopeGEN
p
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IEnvelope.offset(double, double)
,
IEnvelope.expand(double, double, boolean)
,
IEnvelope.intersect(com.esri.arcgis.geometry.IEnvelope)
,
IEnvelope.union(com.esri.arcgis.geometry.IEnvelope)
public void defineFromPoints(int count, IPoint points) throws IOException, AutomationException
Defines this Envelope from an array of Points. The XMin, YMin, XMax, and YMax correspond to the minimum X value, minimum Y value, maximum X value, and maximum Y value respectively of the the Points in the array.
This is similar to getting the Envelope of a Multipoint.
Note: It is also possible to define a degenerate point Envelope by passing a single Point as an argument. The IPoint parameter accepts both a single IPoint object and an array of IPoints. To use an array, pass the desired starting element of the array as the input argument.
defineFromPoints
in interface IEnvelope
count
 The count (in)points
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public int getGeometryType() throws IOException, AutomationException
esriGeometryNull = 0
esriGeometryPoint = 1
esriGeometryMultipoint = 2
esriGeometryPolyline = 3
esriGeometryPolygon = 4
esriGeometryEnvelope = 5
esriGeometryPath = 6
esriGeometryAny = 7
esriGeometryMultiPatch = 9
esriGeometryRing = 11
esriGeometryLine = 13
esriGeometryCircularArc = 14
esriGeometryBezier3Curve = 15
esriGeometryEllipticArc = 16
esriGeometryBag = 17
esriGeometryTriangleStrip = 18
esriGeometryTriangleFan = 19
esriGeometryRay = 20
esriGeometrySphere = 21
getGeometryType
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public int getDimension() throws IOException, AutomationException
Returns the dimension of the geometry object based on the geometry's type.
getDimension
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public ISpatialReference getSpatialReference() throws IOException, AutomationException
Returns and sets the Spatial Reference in which the geometry exists. If the spatial reference has not been set the property will return an empty ISpatialReference instance.
getSpatialReference
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setSpatialReferenceByRef(ISpatialReference spatialRef) throws IOException, AutomationException
setSpatialReferenceByRef
in interface IGeometry
spatialRef
 A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isEmpty() throws IOException, AutomationException
IsEmpty returns TRUE when the Geometry object does not contain geometric information beyond its original initialization state. An object may be returned to its original initialization (IsEmpty = TRUE) state using SetEmpty.
isEmpty
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setEmpty() throws IOException, AutomationException
SetEmpty returns the Geometry to its original initialization state by releasing all data referenced by the Geometry.
setEmpty
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void queryEnvelope(IEnvelope outEnvelope) throws IOException, AutomationException
Returns the unique Envelope that binds the Geometry object. This is the smallest Envelope that Contains the object.
Note: The output geometry must be cocreated prior to the query. The output geometry is not cocreated by the method; it is populated. This can be used in performance critical situations. For example, creating the geometry only once outside a loop and use the query method could improve performance.
queryEnvelope
in interface IGeometry
outEnvelope
 A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IEnvelope getEnvelope() throws IOException, AutomationException
Returns the unique Envelope that binds the Geometry object. This is the smallest Envelope that Contains the object.
getEnvelope
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void project(ISpatialReference newReferenceSystem) throws IOException, AutomationException
To Project, the geometry needs to have a Spatial Reference set, and not have an UnknownCoordinateSystem. The new spatial reference system passed to the method defines the output coordinate system. If either spatial reference is Unknown, the coordinates are not changed. The Z and measure values are not changed by the Project method.
A geometry is not densified before it is projected. This can lead to the output geometries not reflecting the 'true' shape in the new coordinate system. A straight line in one coordinate system is not necessarily a straight line in a different coordinate system. Use IGeometry2::ProjectEx if you want to densify the geometries while they are projected.
The Project method must be applied on highlevel geometries only. HighLevel geometries are point, multipoint, polyline and polygon. To use this method with lowlevel geometries such as segments (Line, Circular Arc, Elliptic Arc, Bézier Curve), paths or rings, they must be wrapped into highlevel geometry types.
If a geometry is projected to a projected coordinate system that can't represent the geographic area where the geometry is located (or if trying to move an xy coordinate from outside the projected coordinate system back into geographic), the geometry will be set to empty.
Note: This method can only be called upon the top level geometries (Points, Multipoints, Polylines and Polygons). If the from/to spatial references have different geographic coordinate systems, the Project method looks for a GeoTransformationsOperationSet. If the set of Geotransformations is present in memory, Project will use it to perform a geographic/datum Transformation. To use a specific geotransformation, use the IGeometry2::ProjectEx method.
project
in interface IGeometry
newReferenceSystem
 A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void snapToSpatialReference() throws IOException, AutomationException
snapToSpatialReference
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void geoNormalize() throws IOException, AutomationException
geoNormalize
in interface IGeometry
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void geoNormalizeFromLongitude(double longitude) throws IOException, AutomationException
geoNormalizeFromLongitude
in interface IGeometry
longitude
 The longitude (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void putZCoords(double zMin, double zMax) throws IOException, AutomationException
Sets the ZMin and ZMax simultaneously. This avoids complications of setting ZMin and ZMax individually in which they could become inconsistent.
putZCoords
in interface IEnvelope2
zMin
 The zMin (in)zMax
 The zMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void queryZCoords(double[] zMin, double[] zMax) throws IOException, AutomationException
Returns the values of ZMin and ZMax respectively.
queryZCoords
in interface IEnvelope2
zMin
 The zMin (out: use single element array)zMax
 The zMax (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void putMCoords(double mMin, double mMax) throws IOException, AutomationException
Sets the MMin and MMax simultaneously. This avoids complications of setting MMin and MMax individually in which they could become inconsistent.
putMCoords
in interface IEnvelope2
mMin
 The mMin (in)mMax
 The mMax (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void queryMCoords(double[] mMin, double[] mMax) throws IOException, AutomationException
Returns the values of MMin and MMax respectively.
queryMCoords
in interface IEnvelope2
mMin
 The mMin (out: use single element array)mMax
 The mMax (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isMAware() throws IOException, AutomationException
Returns or sets the M Awareness state of the geometry object. If MAware is TRUE, then the object will recognize that it has M attributes and perform operations on them as necessary. If MAware is FALSE, the object will ignore Ms while performing operations.
isMAware
in interface IMAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setMAware(boolean mAware) throws IOException, AutomationException
setMAware
in interface IMAware
mAware
 The mAware (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isMSimple() throws IOException, AutomationException
MSimple is TRUE if none of the M values held by the geometry object are NaN. If any of the Ms within the object are NaN, MSimple is FALSE.
isMSimple
in interface IMAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void dropMs() throws IOException, AutomationException
Resets all of the current M values held by the geometry object back to NaN. MAware does not change.
dropMs
in interface IMAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isZAware() throws IOException, AutomationException
Returns or sets the Z Awareness state of the geometry object. If ZAware is TRUE, then the object will recognize that it has Z attributes and perform operations on them as necessary. If ZAware is FALSE, the object will ignore Zs while performing operations. ZAware should only be set to TRUE when all of the Zs are not NaN.
Use ZAware = True when you want geometries to retain Z values during geometry operations.
isZAware
in interface IZAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setZAware(boolean zAware) throws IOException, AutomationException
setZAware
in interface IZAware
zAware
 The zAware (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isZSimple() throws IOException, AutomationException
ZSimple is TRUE if none of the Z values held by the geometry object are NaN. If any of the Zs within the object are NaN, ZSimple is FALSE.
isZSimple
in interface IZAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void dropZs() throws IOException, AutomationException
Resets all of the current Z values held by the geometry object back to NaN. ZAware does not change.
dropZs
in interface IZAware
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void projectEx(ISpatialReference newReferenceSystem, int direction, IGeoTransformation geoTransformation, boolean bAngularDensify, double maxSegmentLength, double maxDeviation) throws IOException, AutomationException
By default, ProjectEx will not densify geometries as they are projected. This can lead to the output geometries not reflecting the 'true' shape in the new coordinate system. A straight line in one coordinate system is not necessarily a straight line in a different coordinate system. Set the bAngularDensify parameter if you want to densify the geometries while they are projected.
projectEx
in interface IGeometry2
newReferenceSystem
 A reference to a com.esri.arcgis.geometry.ISpatialReference (in)direction
 A com.esri.arcgis.geometry.esriTransformDirection constant (in)geoTransformation
 A reference to a com.esri.arcgis.geometry.IGeoTransformation (in)bAngularDensify
 The bAngularDensify (in)maxSegmentLength
 The maxSegmentLength (in)maxDeviation
 The maxDeviation (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void queryWKSEnvelope(_WKSEnvelope[] e) throws IOException, AutomationException
The QueryWKSEnvelope method returns a WKSEnvelope structure corresponding to the envelope of the geometry. Use that method to quickly get the XMin, XMax, YMin and YMax values.
queryWKSEnvelope
in interface IGeometry3
e
 A Structure: com.esri.arcgis.system._WKSEnvelope (A com.esri.arcgis.system._WKSEnvelope COM typedef) (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isChanged() throws IOException, AutomationException
The Changed method returns whether or not the geometry has been modified. If the geometry always stays in memory that method only returns 'false' immediately after its creation. However if the shape came from disk the Changed method will return 'false' until de geometry is modified in memory.
isChanged
in interface IGeometry4
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void setChanged(boolean isChanged) throws IOException, AutomationException
setChanged
in interface IGeometry4
isChanged
 The isChanged (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void project5(ISpatialReference newSpatialReference, int projectionHint) throws IOException, AutomationException
To Project, the geometry needs to have a Spatial Reference set, and not have an UnknownCoordinateSystem. The new spatial reference system passed to the method defines the output coordinate system. If either spatial reference is Unknown, the coordinates are not changed. The Z and measure values are not changed by the Project method.
A geometry is not densified before it is projected. This can lead to the output geometries not reflecting the 'true' shape in the new coordinate system. A straight line in one coordinate system is not necessarily a straight line in a different coordinate system. Use IGeometry2::ProjectEx if you want to densify the geometries while they are projected.
The projectionHint parameter contains information about whether a geometry will cross the coordinate system horizons. If it doesn't, parts of the code that check this and intersect the geometry with the horizons can be omitted. This can dramatically improve performance. Use ISpatialReference3::ProjectionHint to initialize this parameter.
project5
in interface IGeometry5
newSpatialReference
 A reference to a com.esri.arcgis.geometry.ISpatialReference (in)projectionHint
 The projectionHint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void projectEx5(ISpatialReference newReferenceSystem, int direction, ITransformation transformation, boolean bAngularDensify, double maxSegmentLength, double maxDeviation, int projectionHint) throws IOException, AutomationException
The projectionHint parameter contains information about whether a geometry will cross the coordinate system horizons. If it doesn't, parts of the code that check this and intersect the geometry with the horizons can be omitted. This can dramatically improve performance. Use ISpatialReference3::ProjectionHint to initialize this parameter.
By default, ProjectEx will not densify geometries as they are projected. This can lead to the output geometries not reflecting the 'true' shape in the new coordinate system. A straight line in one coordinate system is not necessarily a straight line in a different coordinate system. Set the bAngularDensify parameter if you want to densify the geometries while they are projected.
projectEx5
in interface IGeometry5
newReferenceSystem
 A reference to a com.esri.arcgis.geometry.ISpatialReference (in)direction
 A com.esri.arcgis.geometry.esriTransformDirection constant (in)transformation
 A reference to a com.esri.arcgis.geometry.ITransformation (in)bAngularDensify
 The bAngularDensify (in)maxSegmentLength
 The maxSegmentLength (in)maxDeviation
 The maxDeviation (in)projectionHint
 The projectionHint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getCentroidEx() throws IOException, AutomationException
getCentroidEx
in interface IGeometry5
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double getArea() throws IOException, AutomationException
Returns the area enclosed between the Exterior Rings and the Interior Rings of the 2 (or 2.5) Dimensional geometry. Interior Rings return a negative Area.
getArea
in interface IArea
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint getCentroid() throws IOException, AutomationException
Returns the Centroid of the 2 (or 2.5) Dimensional figure. The Centroid is the center of the weighted area.
The Centroid does not always occur inside the Area of the geometry. The Centroid is not the same as the center of the geometry or the Envelope binding the geometry (but it may be if and only if that is also the center of the weighted area).
getCentroid
in interface IArea
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IArea.queryCentroid(com.esri.arcgis.geometry.IPoint)
,
IArea.getCentroid()
,
IArea.queryLabelPoint(com.esri.arcgis.geometry.IPoint)
,
IArea.getLabelPoint()
public IPoint getLabelPoint() throws IOException, AutomationException
Returns the Label Point of the object. The Label Point is the point at which the label is located. The Label Point is always located within the Area of the object.
getLabelPoint
in interface IArea
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IArea.queryCentroid(com.esri.arcgis.geometry.IPoint)
,
IArea.getCentroid()
,
IArea.queryLabelPoint(com.esri.arcgis.geometry.IPoint)
,
IArea.getLabelPoint()
public void queryCentroid(IPoint center) throws IOException, AutomationException
Queries the Centroid of the 2 (or 2.5) Dimensional figure. The Centroid is the center of the weighted area. You must instantiate the Point before calling QueryCentroid. For example,
Dim pPoint as IPoint
Set pPoint = New Point
The Centroid does not always occur inside the Area of the geometry. The Centroid is not the same as the center of the geometry or the Envelope binding the geometry (but it may be if and only if that is also the center of the weighted area).
Note: The output geometry must be cocreated prior to the query. The output geometry is not cocreated by the method; it is populated. This can be used in performance critical situations. For example, creating the geometry only once outside a loop and use the query method could improve performance.
queryCentroid
in interface IArea
center
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IArea.queryCentroid(com.esri.arcgis.geometry.IPoint)
,
IArea.getCentroid()
,
IArea.queryLabelPoint(com.esri.arcgis.geometry.IPoint)
,
IArea.getLabelPoint()
public void queryLabelPoint(IPoint labelPoint) throws IOException, AutomationException
Queries the Label Point of the object. The Label Point is the point at which the label is located. The Label Point is always located within the Area of the object. You must instantiate the point before calling QueryLabelPoint. For example,
Dim pPoint as IPoint
Set pPoint = New Point
Note: The output geometry must be cocreated prior to the query. The output geometry is not cocreated by the method; it is populated. This can be used in performance critical situations. For example, creating the geometry only once outside a loop and use the query method could improve performance.
queryLabelPoint
in interface IArea
labelPoint
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.IArea.queryCentroid(com.esri.arcgis.geometry.IPoint)
,
IArea.getCentroid()
,
IArea.queryLabelPoint(com.esri.arcgis.geometry.IPoint)
,
IArea.getLabelPoint()
public void queryNearestPoint(IPoint p, int extension, IPoint nearest) throws IOException, AutomationException
Queries the nearest point on a geometry to the input point. Depending on the method of segment extension, the nearest point can also be found on an extension of the geometry.
queryNearestPoint
in interface IProximityOperator
p
 A reference to a com.esri.arcgis.geometry.IPoint (in)extension
 A com.esri.arcgis.geometry.esriSegmentExtension constant (in)nearest
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.esriSegmentExtension
,
IProximityOperator.returnNearestPoint(com.esri.arcgis.geometry.IPoint, int)
public IPoint returnNearestPoint(IPoint p, int extension) throws IOException, AutomationException
Finds and returns the nearest point on a geometry to the input point. Depending on the method of segment extension, the nearest point can also be found on an extension of the geometry.
returnNearestPoint
in interface IProximityOperator
p
 A reference to a com.esri.arcgis.geometry.IPoint (in)extension
 A com.esri.arcgis.geometry.esriSegmentExtension constant (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.esriSegmentExtension
,
IProximityOperator.queryNearestPoint(com.esri.arcgis.geometry.IPoint, int, com.esri.arcgis.geometry.IPoint)
public double returnDistance(IGeometry other) throws IOException, AutomationException
Returns the minimum distance between two geometries. If the geometries intersect, the minimum distance is 0. Only returns the distance, and not the nearest points.
The geometry combinations which can be used with ReturnDistance are:
Point: Point, MultiPoint, Envelope, Polyline, Polygon, Line, CircularArc, EllipticArc, BezierCurve.
Multipoint: Point, MultiPoint, Envelope, Polyline, Polygon.
Envelope: Point, MultiPoint, Envelope, Line, CircularArc, EllipticArc, BezierCurve, PolyLine, Polygon.
PolyLine: Point, Multipoint, Envelope, PolyLine, Polygon.
Polygon: Point, Multipoint, Envelope, PolyLine, Polygon.
Line: Point, Envelope, Line, CircularArc, EllipticArc, BezierCurve.
CircularArc: Point, Envelope, Line, CircularArc, EllipticArc (not implemented yet), BezierCurve.
EllipticArc: Point, Envelope, Line, CircularArc (not implemented yet), EllipticArc (not implemented yet), BezierCurve (not implemented yet).
BezierCurve: Point, Envelope, Line, CircularArc, EllipticArc (not implemented yet), BezierCurve.
Note: To get the distance between a segment (Line, CircularArc, EllipticArc, BezierCurve) and a MultiPoint, PolyLine or Polygon, add that segment to a PolyLine.
returnDistance
in interface IProximityOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void move(double dx, double dy) throws IOException, AutomationException
Moves the Geometry dX units along the XAxis and dY units along the YAxis. Only changes the position of the Geometry without altering any of the other characteristics. Move is a spatial offset.
move
in interface ITransform2D
dx
 The dx (in)dy
 The dy (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void moveVector(ILine v) throws IOException, AutomationException
Moves the Geometry dX units along the XAxis and dY units along the YAxis, where dX and dY are calculated from the input vector Line. Only the Length and Angle of the vector affect the transformation. The location of the vector does not change the transformation. Only changes the position of the Geometry without altering any of the other characteristics. Move is a spatial offset.
moveVector
in interface ITransform2D
v
 A reference to a com.esri.arcgis.geometry.ILine (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void scale(IPoint origin, double sx, double sy) throws IOException, AutomationException
Stretches the Geometry a factor of sX along the XAxis and a factor of sY along the YAxis (where sX is the ratio of Old Width to New Width, and sY is the ratio of Old Height to New Height). The Origin point is the reference Point from which the transformation is performed (Regardless of the location of the Origin point, the Geometry resulting from the transformation is the same, except for a positional offset). The Origin is the only point in the transformation guaranted to remain in the same location after the transformation is complete.
Note: Caution must be taken when scaling a CircularArc or a geometry containing CircularArc segments. Unless Abs(ScaleX) = Abs(ScaleY), the resulting CircularArcs will not retain the characteristics of the original geometry (since they remain CircularArcs).
scale
in interface ITransform2D
origin
 A reference to a com.esri.arcgis.geometry.IPoint (in)sx
 The sx (in)sy
 The sy (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void rotate(IPoint origin, double rotationAngle) throws IOException, AutomationException
Rotate performs an angular transform (rotation) on the Geometry. The Origin is the only point in the transformation guaranteed to remain in the same location after the transformation is performed. Regardless of the Origin, the transformed Geometry is the same, except for a positional offset. The RotationAngle is measured in radians.
An Envelope cannot be Rotated.
rotate
in interface ITransform2D
origin
 A reference to a com.esri.arcgis.geometry.IPoint (in)rotationAngle
 The rotationAngle (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void transform(int direction, ITransformation transformation) throws IOException, AutomationException
transform
in interface ITransform2D
direction
 A com.esri.arcgis.geometry.esriTransformDirection constant (in)transformation
 A reference to a com.esri.arcgis.geometry.ITransformation (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean esri_equals(IGeometry other) throws IOException, AutomationException
esri_equals
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean touches(IGeometry other) throws IOException, AutomationException
Two geometries are said to touch when the intersection of the geometries is nonempty, but the intersection of their interiors is empty. Touches is a Clementini operator. For example, a point touches a polyline only if the point is coincident with one of the polyline end points.
Touches examples. Only "true" relationships are showed in this picture.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
Touch does not apply for point/point comparison.
If either one of the two geometries is empty, the geometries are not touched.
touches
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean contains(IGeometry other) throws IOException, AutomationException
The base geometry contains the comparison geometry (other) if the comparison geometry is a subset of the base geometry and the intersection of their interiors is not empty. Therefore a polygon does not contain any part of its 1D boundary. Contains is the opposite operator of Within.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
If geometry1 Contains geometry2, then geometry2 is Within geometry1.
An empty geometry does not contain another geometry. On the other hand, an empty geometry is contained in another geometry, unless the other geometry is empty.
Contains examples. Only "true" relationships are showed in this picture.
contains
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean within(IGeometry other) throws IOException, AutomationException
The base geometry is within the comparison geometry if the base geometry is the intersection of the geometries and the intersection of their interiors is not empty. Within is a Clementini operator. Within is the opposite operator of contains.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
If geometry1 is Within geometry2, then geometry2 Contains geometry1.
An empty geometry is within another geometry, unless the other geometry is empty.
Within examples. Only "true" relationships are showed in this picture.
within
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean disjoint(IGeometry other) throws IOException, AutomationException
Two geometries are disjoint if their intersection is empty. Two geometries intersect if disjoint is "false". Disjoint is a Clementini operator.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
Two geometries are disjoint if either one is empty.
Disjoint example. Only "true" relationships are showed in this picture.
disjoint
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean crosses(IGeometry other) throws IOException, AutomationException
Two polylines cross if they share only points in common, at least one of which is not an endpoint. A polyline and an polygon cross if they share a polyline in common on the interior of the polygon which is not equivalent to the entire polyline. Cross is a Clementini operator.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
Cross only applies to polyline/polyline, polyline/polygon, or polygon/polyline relations.
If either one of the geometries is empty, the geometries do not cross.
Crosses examples. Only "true" relationships are showed in this picture.
crosses
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean overlaps(IGeometry other) throws IOException, AutomationException
Two geometries overlap if the region of their intersection is of the same dimension as the geometries involved and is not equivalent to either of the geometries. Overlaps is a Clementini operator.
Only geometries that support the IRelationalOperator interface can be used as input geometries.
Overlaps only applies to polyline/polyline, polygon/polygon and multipoint/multipoint relations.
Two geometries do not overlap if either one is empty.
Overlaps examples. Only "true" relationships are showed in this picture.
overlaps
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean relation(IGeometry other, String relationDescription) throws IOException, AutomationException
Relation allows a general relation defined using the Shape Comparison Language to be determined between two input geometries. The Shape Comparison Language is based on the CalculusBased Method (CBM), as described and defined by Clementini and Felice, but has some extensions specific to working with vertexbased geometries and is fully described in the Technical Documents section of the ArcObjects Developer Help. Please refer to the Shape Comparison Language documentation for proper syntax and available functionality.
Note that at the current release, Relation only operates with straight lines.
Here is a VBA example of using the "RELATE" function to detect overlapping polylines. It assumes two polyline features are selected. G1 and G2 are placeholders for, in this example, the VBA variables r1 and r2.
Option Explicit
Public Sub overlapstest()
Dim ef As IEnumFeature
Dim d As IMxDocument
Set d = ThisDocument
Set ef = d.FocusMap.FeatureSelection
Dim r1 As IRelationalOperator, r2 As IRelationalOperator
Set r1 = ef.Next.Shape
Set r2 = ef.Next.Shape
Debug.Print "relation:", r1.Relation(r2, "RELATE(G1, G2, ""1********"")")
End Sub
relation
in interface IRelationalOperator
other
 A reference to a com.esri.arcgis.geometry.IGeometry (in)relationDescription
 The relationDescription (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean hitTest(IPoint queryPoint, double searchRadius, int geometryPart, IPoint hitPoint, double[] hitDistance, int[] hitPartIndex, int[] hitSegmentIndex, boolean[] bRightSide) throws IOException, AutomationException
The segment index returned has different meanings depending on the esriGeometryHitPartType used (Please see the example for more details).
EsriGeometryPartVertex: returns a vertex index
EsriGeometryPartBoundary, esriGeometryPartMidpoint and esriGeometryPartEndpoint: return a segment index
EsriGeometryPartCentroid: Always returns 0 for the part index and the segment index.
brightside: Indicates if the input point is on the right side of the input geometry
Note: The distance units use in this method are the units of the input geometry. No conversion is performed. esriGeometryHitPartType parameter cannot be a combination of several esriGeometryHitPartTypes.
hitTest
in interface IHitTest
queryPoint
 A reference to a com.esri.arcgis.geometry.IPoint (in)searchRadius
 The searchRadius (in)geometryPart
 A com.esri.arcgis.geometry.esriGeometryHitPartType constant (in)hitPoint
 A reference to a com.esri.arcgis.geometry.IPoint (in)hitDistance
 The hitDistance (in/out: use single element array)hitPartIndex
 The hitPartIndex (in/out: use single element array)hitSegmentIndex
 The hitSegmentIndex (in/out: use single element array)bRightSide
 The bRightSide (in/out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void interfaceSupportsErrorInfo(GUID riid) throws IOException, AutomationException
Indicates whether the interface supports IErrorInfo.
interfaceSupportsErrorInfo
in interface ISupportErrorInfo
riid
 A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void getClassID(GUID[] pClassID) throws IOException, AutomationException
IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.
getClassID
in interface IPersist
pClassID
 A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void isDirty() throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
isDirty
in interface IPersistStream
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void load(IStream pstm) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
load
in interface IPersistStream
pstm
 A reference to a com.esri.arcgis.system.IStream (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void save(IStream pstm, int fClearDirty) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
save
in interface IPersistStream
pstm
 A reference to a com.esri.arcgis.system.IStream (in)fClearDirty
 The fClearDirty (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void getSizeMax(_ULARGE_INTEGER[] pcbSize) throws IOException, AutomationException
IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.
getSizeMax
in interface IPersistStream
pcbSize
 A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IClone esri_clone() throws IOException, AutomationException
esri_clone
in interface IClone
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void assign(IClone src) throws IOException, AutomationException
assign
in interface IClone
src
 A reference to a com.esri.arcgis.system.IClone (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isEqual(IClone other) throws IOException, AutomationException
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.
isEqual
in interface IClone
other
 A reference to a com.esri.arcgis.system.IClone (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean isIdentical(IClone other) throws IOException, AutomationException
IsIdentical returns true if the receiver and the source reference the same object.
isIdentical
in interface IClone
other
 A reference to a com.esri.arcgis.system.IClone (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void serialize(IXMLSerializeData data) throws IOException, AutomationException
serialize
in interface IXMLSerialize
data
 A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void deserialize(IXMLSerializeData data) throws IOException, AutomationException
deserialize
in interface IXMLSerialize
data
 A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void queryNearestPoint3D(IPoint pInP, int extension, IPoint pNearest) throws IOException, AutomationException
Queries the nearest point on a z aware geometry to the input point in 3D space. Depending on the method of segment extension, the nearest point can also be found on an extension of the geometry.
If the geometry is an Envelope and the input point is located within the bounds of the Envelope, QueryNearestPoint3D will return a point on the exterior of the Envelope nearest the input point.
queryNearestPoint3D
in interface IProximityOperator3D
pInP
 A reference to a com.esri.arcgis.geometry.IPoint (in)extension
 A com.esri.arcgis.geometry.esriSegmentExtension constant (in)pNearest
 A reference to a com.esri.arcgis.geometry.IPoint (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public IPoint returnNearestPoint3D(IPoint pInP, int extension) throws IOException, AutomationException
Finds and returns the nearest point, in 3D space, on a z aware geometry to the input point. Depending on the method of segment extension, the nearest point can also be found on an extension of the geometry.
If the geometry is an Envelope and the input point is located within the bounds of the Envelope, QueryNearestPoint3D will return a point on the exterior of the Envelope nearest the input point.
returnNearestPoint3D
in interface IProximityOperator3D
pInP
 A reference to a com.esri.arcgis.geometry.IPoint (in)extension
 A com.esri.arcgis.geometry.esriSegmentExtension constant (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public double returnDistance3D(IGeometry pOther) throws IOException, AutomationException
Returns the minimum distance between two z aware geometries in 3D space. If the geometries intersect, the minimum distance is 0. Only returns the distance, and not the nearest points.
returnDistance3D
in interface IProximityOperator3D
pOther
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public boolean disjoint3D(IGeometry pOther) throws IOException, AutomationException
Determines whether two z aware geometries intersect in 3D space. Two geometries are disjoint if their intersection is empty. Two geometries intersect if disjoint is FALSE.
disjoint3D
in interface IRelationalOperator3D
pOther
 A reference to a com.esri.arcgis.geometry.IGeometry (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void intersect3D(IEnvelope inEnvelope) throws IOException, AutomationException
Sets the base Envelope equal to the intersection of itself and the input Envelope. The XMin, YMin, and ZMin of the base Envelope will be set equal to the maximum XMin, YMin, and ZMin between itself and the input Envelope. Similarly, the XMax, YMax, and ZMax of the base Envelope will be set equal to the minimum XMax, YMax, and ZMax between itself and the input Envelopes. If the resulting XMin > XMax, YMin > YMax, or ZMin > ZMax, then the base Envelope will be set to Empty.
intersect3D
in interface IEnvelope3D
inEnvelope
 A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void union3D(IEnvelope inEnvelope) throws IOException, AutomationException
Sets the base Envelope equal to the union of itself and the input Envelope. The XMin, YMin, and ZMin of the base Envelope will be set equal to the minimum XMin, YMin, and ZMin between itself and the input Envelope. Similarly, the XMax, YMax, and ZMax of the base Envelope will be set equal to the maximim XMax, YMax, and ZMax between itself and the input Envelope.
union3D
in interface IEnvelope3D
inEnvelope
 A reference to a com.esri.arcgis.geometry.IEnvelope (in)
IOException
 If there are interop problems.
AutomationException
 If the ArcObject component throws an exception.public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
IOException
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
IOException
ClassNotFoundException


PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 