|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.esri.arcgis.geometry.EllipticArc
A portion of the boundary of a 2D ellipse that connects two points; optionally has measure, height and ID attributes at each endpoint.
| Constructor Summary | |
EllipticArc()
Constructs a EllipticArc using ArcGIS Engine. |
|
EllipticArc(java.lang.Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. |
|
| Method Summary | |
void |
assign(IClone src)
Assigns the properties of src to the receiver. |
void |
complement()
Changes this ellipse into its complement; 'from' and 'to' points are unchanged. |
void |
constructEnvelope(IEnvelope boundingEnvelope)
Constructs the inscribed ellipse of the given envelope. |
void |
constructQuarterEllipse(IPoint fromPoint,
IPoint toPoint,
boolean cCW)
Construct an elliptic arc that starts at fromPoint, goes to toPoint, and spans an angle of pi/2. |
void |
constructTwoPointsEnvelope(IPoint fromPoint,
IPoint toPoint,
IEnvelope suggestedEnvelope,
int orientation)
Construct an elliptic arc that starts at fromPoint, goes to toPoint, and tries to have the embedded ellipse inscribed in the suggestedEnvelope. |
void |
constructUpToFivePoints(IPoint from,
IPoint to,
IPoint thru,
IPoint point4,
IPoint point5)
Constructs an elliptic arc, given up to 5 points, such that the embedded ellipse passes through as many as possible. |
void |
densify(int cInSlots,
double maxDeviation,
int[] pcOutSegments,
ILine[] segments)
Densify segment into the specified number of smaller segments. |
boolean |
equals(java.lang.Object o)
Compare this object with another |
IClone |
esri_clone()
Clones the receiver and assigns the result to *clone. |
void |
geographicShift(double splitLongitude)
Shift longitudes to the right of splitLongitude. |
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. |
IClone |
getAsIClone()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
IConstructEllipticArc |
getAsIConstructEllipticArc()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ICurve |
getAsICurve()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ICurve2 |
getAsICurve2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ICurve3 |
getAsICurve3()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
IEllipticArc |
getAsIEllipticArc()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
IGeometry |
getAsIGeometry()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
IProximityOperator |
getAsIProximityOperator()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ISegment |
getAsISegment()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ISegmentID |
getAsISegmentID()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ISegmentM |
getAsISegmentM()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ISegmentZ |
getAsISegmentZ()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ISupportErrorInfo |
getAsISupportErrorInfo()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
ITransform2D |
getAsITransform2D()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed. |
void |
getAxes(double[] semiMajor,
double[] semiMinor,
double[] minorMajorRatio)
Gets the semi-major and semi-minor axes. |
IPoint |
getCenterPoint()
The center point of the arc. |
double |
getCentralAngle()
The included (or central) angle. |
static java.lang.String |
getClsid()
|
int |
getDimension()
The topological dimension of this geometry. |
IEnvelope |
getEnvelope()
Creates a copy of this geometry's envelope and returns it. |
double |
getFromAngle(boolean ellipseStd)
The start angle (measured from a horizontal line through the center point) defining where the arc starts. |
IPoint |
getFromPoint()
The 'from' point of the curve. |
int |
getGeometryType()
The type of this geometry. |
void |
getIDs(int[] fromID,
int[] toID)
Get the IDs on the segment's endpoints. |
double |
getLength()
The length of the curve. |
void |
getMs(double[] fromM,
double[] toM)
Get the Ms on the segment's endpoints. |
ISpatialReference |
getSpatialReference()
The spatial reference associated with this geometry. |
void |
getSubcurve(double fromDistance,
double toDistance,
boolean asRatio,
ICurve[] outSubcurve)
Extracts a portion of this curve into a new curve. |
double |
getToAngle(boolean ellipseStd)
The end angle (measured from a horizontal line through the center point) defining where the arc ends. |
IPoint |
getToPoint()
The 'to' point of the curve. |
void |
getZs(double[] fromZ,
double[] toZ)
Get the Zs on the segment's endpoints. |
int |
hashCode()
the hashcode for this object |
void |
interfaceSupportsErrorInfo(GUID riid)
Supported Platforms |
boolean |
isCircular()
Indicates if this elliptical arc is acutally circular (major and minor axes same length). |
boolean |
isClosed()
Indicates if 'from' and 'to' points (of each part) are identical. |
boolean |
isCounterClockwise()
Indicates if this elliptic arc is oriented counter-clockwise from its 'from' point to its 'to' point. |
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 |
isLine()
Indicates if the arc is degenerated to a line. |
boolean |
isMinor()
Indicates whether the arc is a minor arc or a major arc. |
boolean |
isPoint()
Indicates if the arc is degenerated to a point. |
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 |
project(ISpatialReference newReferenceSystem)
Projects this geometry into a new spatial reference. |
void |
putAxes(double semiMajor,
double minorMajorRatio)
Sets the semi-major and semi-minor axes. |
void |
putCoords(boolean ellipseStd,
IPoint center,
IPoint from,
IPoint to,
double rotationAngle,
double minorMajorRatio,
int orientation)
Sets the center point and endpoints, angle of rotation, and orientation. |
void |
putCoordsByAngle(boolean ellipseStd,
IPoint center,
double fromAngle,
double centralAngle,
double rotationAngle,
double semiMajor,
double minorMajorRatio)
Sets the center point, starting angle, signed central angle, angle of rotation, ratio of the minor axis to the major axis, and axes. |
void |
putCoordsEx(IPoint from,
IPoint to)
Sets this segment's endpoints to 'from' and 'to'. |
void |
queryCenterPoint(IPoint center)
Copies the center of this arc to the input point. |
void |
queryCoords(boolean ellipseStd,
IPoint center,
IPoint from,
IPoint to,
double[] rotationAngle,
double[] minorMajorRatio,
boolean[] isCCW,
boolean[] minor)
Copies the center and endpoints, angle of rotation, orientation and major/minor properties into the method parameters. |
void |
queryCoordsByAngle(boolean ellipseStd,
IPoint center,
double[] fromAngle,
double[] centralAngle,
double[] rotationAngle,
double[] semiMajor,
double[] minorMajorRatio)
Returns the center point, starting angle, signed central angle, angle of rotation, ratio of the minor axis to the major axis, and axes. |
void |
queryCurvature(double distanceAlongCurve,
boolean asRatio,
double[] curvature,
ILine unitVector)
Finds curvature and unit vector starting at point on segment and directed to embedded circle center. |
void |
queryEnvelope(IEnvelope outEnvelope)
Copies this geometry's envelope properties into the specified envelope. |
void |
queryFromPoint(IPoint from)
Copies this curve's 'from' point to the input point. |
void |
queryNearestPoint(IPoint p,
int extension,
IPoint nearest)
Copies into 'nearest' a point on this geometry nearest to the input point. |
void |
queryNormal(int extension,
double distanceAlongCurve,
boolean asRatio,
double length,
ILine normal)
Constructs a line normal to a curve from a point at a specified distance along the curve. |
void |
queryPoint(int extension,
double distanceAlongCurve,
boolean asRatio,
IPoint outPoint)
Copies to outPoint the properties of a point on the curve at a specified distance from the beginning of the curve. |
void |
queryPointAndDistance(int extension,
IPoint inPoint,
boolean asRatio,
IPoint outPoint,
double[] distanceAlongCurve,
double[] distanceFromCurve,
boolean[] bRightSide)
Finds the point on the curve closest to inPoint, then copies that point to outPoint; optionally calculates related items. |
void |
queryPointsAndDistances(int extension,
double searchRadius,
IPoint inPoint,
boolean asRatio,
double[] distanceFromCurve,
IEnumPointAndDistance[] pointsAndDistances)
Given an input point, calculates the minimum distance to the geometry and provides an enumerator over all closest points on the geometry, along with additional information. |
void |
queryTangent(int extension,
double distanceAlongCurve,
boolean asRatio,
double length,
ILine tangent)
Constructs a line tangent to a curve from a point at a specified distance along the curve. |
void |
queryToPoint(IPoint to)
Copies the curve's 'to' point into the input point. |
double |
returnDistance(IGeometry other)
Returns the minimum distance between two geometries. |
IPoint |
returnNearestPoint(IPoint p,
int extension)
Creates and returns a point on this geometry nearest to the input point. |
int |
returnTurnDirection(ISegment otherSegment)
Finds turn direction between two connected segments. |
void |
reverseOrientation()
Reverses the parameterization of the curve ('from' point becomes 'to' point, first segment becomes last segment, etc). |
void |
rotate(IPoint origin,
double rotationAngle)
Rotates about the specified origin point. |
void |
scale(IPoint origin,
double sx,
double sy)
Scales about the specified origin using seperate horizonal and vertical scales. |
void |
setCentralAngle(double centralAngle)
The included (or central) angle. |
void |
setEmpty()
Removes all points from this geometry. |
void |
setFromAngle(boolean ellipseStd,
double fromAngle)
The start angle (measured from a horizontal line through the center point) defining where the arc starts. |
void |
setFromPoint(IPoint from)
The 'from' point of the curve. |
void |
setIDs(int fromID,
int toID)
Set the IDs on the segment's endpoints. |
void |
setIsCounterClockwise(boolean isCCW)
Indicates if this elliptic arc is oriented counter-clockwise from its 'from' point to its 'to' point. |
void |
setIsMinor(boolean isMinor)
Indicates whether the arc is a minor arc or a major arc. |
void |
setMs(double fromM,
double toM)
Set the Ms on the segment's endpoints. |
void |
setSpatialReferenceByRef(ISpatialReference spatialRef)
The spatial reference associated with this geometry. |
void |
setToAngle(boolean ellipseStd,
double toAngle)
The end angle (measured from a horizontal line through the center point) defining where the arc ends. |
void |
setToPoint(IPoint to)
The 'to' point of the curve. |
void |
setZs(double fromZ,
double toZ)
Set the Zs on the segment's endpoints. |
void |
snapToSpatialReference()
Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system. |
void |
splitAtDistance(double distances,
boolean asRatio,
ISegment[] fromSegment,
ISegment[] toSegment)
Split segment at specified distance. |
void |
splitDivideLength(double offset,
double length,
boolean asRatio,
int[] numSplitSegments,
ISegment splitSegments)
Divide segment into smaller segments of the specified length. |
void |
transform(int direction,
ITransformation transformation)
Applies an arbitrary transformation. |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public EllipticArc()
throws java.io.IOException,
java.net.UnknownHostException
java.io.IOException - if there are interop problems
java.net.UnknownHostException - if there are interop problems
public EllipticArc(java.lang.Object obj)
throws java.io.IOException
obj to EllipticArc. EllipticArc theEllipticArc = (EllipticArc) obj;
obj - an object returned from ArcGIS Engine or Server
java.io.IOException - if there are interop problems| Method Detail |
public static java.lang.String getClsid()
public IEllipticArc getAsIEllipticArc()
public IGeometry getAsIGeometry()
public ITransform2D getAsITransform2D()
public ICurve getAsICurve()
public ICurve2 getAsICurve2()
public ICurve3 getAsICurve3()
public ISegment getAsISegment()
public IConstructEllipticArc getAsIConstructEllipticArc()
public IProximityOperator getAsIProximityOperator()
public ISupportErrorInfo getAsISupportErrorInfo()
public IClone getAsIClone()
public ISegmentM getAsISegmentM()
public ISegmentZ getAsISegmentZ()
public ISegmentID getAsISegmentID()
public boolean equals(java.lang.Object o)
public int hashCode()
public void queryCoords(boolean ellipseStd,
IPoint center,
IPoint from,
IPoint to,
double[] rotationAngle,
double[] minorMajorRatio,
boolean[] isCCW,
boolean[] minor)
throws java.io.IOException,
AutomationException
IEllipticArcGiven the EllipseStd value, returns the Center Point, From Point, To Point, Rotation Angle, Minor Axis to Major Axis Ratio, IsCounterClockwise value, and IsMinor value of the Elliptic Arc. If EllipseStd = TRUE, the From Point and To Point locations are relative offsets from the Center Point rather than the origin.
These are the necessary inputs for PutCoords, except in special cases (half ellipse, full ellipse, Central Angle = 0, and Minor to Major Ratio = 0) where the ArcOrientation must know which of these cases exists to ensure that the desired Elliptic Arc is unambiguous. Any of the output parameters can be set to nil if that info is not desired.
-isCCW stands for "is counter clockwise"

queryCoords in interface IEllipticArcellipseStd - The ellipseStd (in)center - A reference to a com.esri.arcgis.geometry.IPoint (in)from - A reference to a com.esri.arcgis.geometry.IPoint (in)to - A reference to a com.esri.arcgis.geometry.IPoint (in)rotationAngle - The rotationAngle (in/out: use single element array)minorMajorRatio - The minorMajorRatio (in/out: use single element array)isCCW - The isCCW (in/out: use single element array)minor - The minor (in/out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void putCoords(boolean ellipseStd,
IPoint center,
IPoint from,
IPoint to,
double rotationAngle,
double minorMajorRatio,
int orientation)
throws java.io.IOException,
AutomationException
IEllipticArcPutCoords creates an Elliptic Arc given the EllipseStd value, Center Point, From Point, To Point, Rotation Angle, Minor Axis to Major Axis Ratio, and the Arc Orientation. If EllipseStd = TRUE, the From Point and To Point locations are relative offsets from the Center Point rather than the origin.
Unless the coordinates of the From and To Points are exactly on the defined Elliptic Arc, PutCoords is likely to create an invalid Elliptic Arc. Therefore, it is highly recommended that another Elliptic Arc creation method is used unless all of the necessary input parameters are exactly known.

putCoords in interface IEllipticArcellipseStd - The ellipseStd (in)center - A reference to a com.esri.arcgis.geometry.IPoint (in)from - A reference to a com.esri.arcgis.geometry.IPoint (in)to - A reference to a com.esri.arcgis.geometry.IPoint (in)rotationAngle - The rotationAngle (in)minorMajorRatio - The minorMajorRatio (in)orientation - A com.esri.arcgis.geometry.esriArcOrientation constant (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void queryCoordsByAngle(boolean ellipseStd,
IPoint center,
double[] fromAngle,
double[] centralAngle,
double[] rotationAngle,
double[] semiMajor,
double[] minorMajorRatio)
throws java.io.IOException,
AutomationException
IEllipticArcGiven the EllipseStd value, returns the Center Point, From Angle, Central Angle, Rotation Angle, semi-Major axis length, and Minor Axis to Major Axis Ratio for the Elliptic Arc. These are the same parameters used by PutCoordsByAngle to create the Elliptic Arc. If EllipseStd = TRUE, the From Angle is relative to the rotated semi-Major Axis rather than the X-Axis.

queryCoordsByAngle in interface IEllipticArcellipseStd - The ellipseStd (in)center - A reference to a com.esri.arcgis.geometry.IPoint (in)fromAngle - The fromAngle (in/out: use single element array)centralAngle - The centralAngle (in/out: use single element array)rotationAngle - The rotationAngle (in/out: use single element array)semiMajor - The semiMajor (in/out: use single element array)minorMajorRatio - The minorMajorRatio (in/out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void putCoordsByAngle(boolean ellipseStd,
IPoint center,
double fromAngle,
double centralAngle,
double rotationAngle,
double semiMajor,
double minorMajorRatio)
throws java.io.IOException,
AutomationException
IEllipticArcCreates an Elliptic Arc given the EllipseStd value, Center Point, From Angle, Central Angle, Rotation Angle, semi-Major Axis length, and Minor Axis to Major Axis Ratio. If EllipseStd = TRUE, the From Angle is relative to the rotated semi-Major Axis rather than the X-Axis.
This is the recommended way to create an arbitrary Elliptic Arc. However, due to numeric accuracy limitations of computers and trigonometric functions, the From and To Points may be very slightly offset from the expected coordinates. This is important to keep in mind when attempting to connect the endpoints to other segments.

putCoordsByAngle in interface IEllipticArcellipseStd - The ellipseStd (in)center - A reference to a com.esri.arcgis.geometry.IPoint (in)fromAngle - The fromAngle (in)centralAngle - The centralAngle (in)rotationAngle - The rotationAngle (in)semiMajor - The semiMajor (in)minorMajorRatio - The minorMajorRatio (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public IPoint getCenterPoint()
throws java.io.IOException,
AutomationException
IEllipticArcThe CenterPoint is the point where the Major Axis and Minor Axis of the EllipticArc intersect. The CenterPoint is the point from which all angles and distances are calculated to create the EllipticArc.

getCenterPoint in interface IEllipticArcAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void queryCenterPoint(IPoint center)
throws java.io.IOException,
AutomationException
IEllipticArcThe CenterPoint is the point where the Major Axis and Minor Axis of the EllipticArc intersect. The CenterPoint is the point from which all angles and distances are calculated to create the EllipticArc. You must instantiate the Point before calling QueryCenterPoint. For example,
Dim pPoint as IPoint Set pPoint = New Point
The QueryCenterPoint method should be used in performance critical situations, where the center point of several arcs needs to be retrieved. The point is populated (not created) by the method. For example, this can be used to get the center point of several arcs in a loop. Creating the point only once outside the loop may improve performance for large number of arcs.

queryCenterPoint in interface IEllipticArccenter - A reference to a com.esri.arcgis.geometry.IPoint (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void getAxes(double[] semiMajor,
double[] semiMinor,
double[] minorMajorRatio)
throws java.io.IOException,
AutomationException
IEllipticArcReturns the Major Axis, the Minor Axis, and the ratio of the Minor Axis to the Major Axis. The Major Axis is the larger of the two Axes, and the Minor Axis is the smaller Axis. The Major Axis always lies on the line between 0 and Pi Radians in EllipseStd, and the Minor Axis always lies on the line between Pi/2 and 3*Pi/2 Radian in EllipseStd.
The Axes can be set using PutAxes.

getAxes in interface IEllipticArcsemiMajor - The semiMajor (in/out: use single element array)semiMinor - The semiMinor (in/out: use single element array)minorMajorRatio - The minorMajorRatio (in/out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void putAxes(double semiMajor,
double minorMajorRatio)
throws java.io.IOException,
AutomationException
IEllipticArcSets the Major Axis and the Minor Axis. The Major Axis is the larger of the two Axes, and the Minor Axis is the smaller Axis. The Major Axis always lies on the line between 0 and Pi Radians in EllipseStd, and the Minor Axis always lies on the line between Pi/2 and 3*Pi/2 Radian in EllipseStd.
The Axes can be returned using GetAxes.

putAxes in interface IEllipticArcsemiMajor - The semiMajor (in)minorMajorRatio - The minorMajorRatio (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public double getFromAngle(boolean ellipseStd)
throws java.io.IOException,
AutomationException
IEllipticArcThe From Angle is the angle of the Line defined by the Center Point and the From Point of the Elliptic Arc. Setting the From Angle changes the From Point of the Elliptic Arc without altering the embedded geometry. The From Angle is measured in radians (there are 2*pi radians in a full ellipse). If EllipseStd = TRUE, the From Angle is relative to the rotated semi-Major Axis rather than the X-Axis.

getFromAngle in interface IEllipticArcellipseStd - The ellipseStd (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setFromAngle(boolean ellipseStd,
double fromAngle)
throws java.io.IOException,
AutomationException
IEllipticArc
setFromAngle in interface IEllipticArcellipseStd - The ellipseStd (in)fromAngle - The fromAngle (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public double getToAngle(boolean ellipseStd)
throws java.io.IOException,
AutomationException
IEllipticArcThe To Angle is the angle of the Line defined by the Center Point and the To Point of the Elliptic Arc. Setting the To Angle changes the To Point of the Elliptic Arc without altering the embedded geometry. The To Angle is measured in radians (there are 2*pi radians in a full ellipse). If EllipseStd = TRUE, the To Angle is relative to the rotated semi-Major Axis rather than the X-Axis.

getToAngle in interface IEllipticArcellipseStd - The ellipseStd (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void setToAngle(boolean ellipseStd,
double toAngle)
throws java.io.IOException,
AutomationException
IEllipticArc
setToAngle in interface IEllipticArcellipseStd - The ellipseStd (in)toAngle - The toAngle (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public double getCentralAngle()
throws java.io.IOException,
AutomationException
IEllipticArcThe CentralAngle describes the span of the EllipticArc. The CentralAngle is the angular measure between the FromAngle and the ToAngle. The CentralAngle is measured in Radians and is always between -2*Pi and 2*Pi. If the CentralAngle > 0, then the EllipticArc is oriented in a CounterClockwise direction.

getCentralAngle in interface IEllipticArcjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setCentralAngle(double centralAngle)
throws java.io.IOException,
AutomationException
IEllipticArc
setCentralAngle in interface IEllipticArccentralAngle - The centralAngle (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isPoint()
throws java.io.IOException,
AutomationException
IEllipticArc
isPoint in interface IEllipticArcAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isLine()
throws java.io.IOException,
AutomationException
IEllipticArc
isLine in interface IEllipticArcAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isCounterClockwise()
throws java.io.IOException,
AutomationException
IEllipticArc
isCounterClockwise in interface IEllipticArcjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setIsCounterClockwise(boolean isCCW)
throws java.io.IOException,
AutomationException
IEllipticArc
setIsCounterClockwise in interface IEllipticArcisCCW - The isCCW (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public boolean isMinor()
throws java.io.IOException,
AutomationException
IEllipticArc
isMinor in interface IEllipticArcjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setIsMinor(boolean isMinor)
throws java.io.IOException,
AutomationException
IEllipticArc
setIsMinor in interface IEllipticArcisMinor - The isMinor (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void complement()
throws java.io.IOException,
AutomationException
IEllipticArcThe Complement of an EllipticArc is the EllipticArc between the ToPoint and the FromPoint of the original EllipticArc that creates a full ellipse when combined with the original EllipticArc. The Complement maintains the same FromPoint and ToPoint as the original EllipticArc, but has the different IsMinor and IsCounterClockwise values.

complement in interface IEllipticArcjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public boolean isCircular()
throws java.io.IOException,
AutomationException
IEllipticArc
isCircular in interface IEllipticArcAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public double getLength()
throws java.io.IOException,
AutomationException
ICurveReturns the length of the entire curve. The length of the curve is the sum of the lengths along each parameterized Segment between vertices along the curve.
getLength in interface ICurveAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public IPoint getFromPoint()
throws java.io.IOException,
AutomationException
ICurveReturns or Sets the FromPoint of the first segment of the first part of the curve. While the curve may be composed of many parts and segments each with their own FromPoint, each curve only has a single From Point.

getFromPoint in interface ICurvejava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IPoint
public void setFromPoint(IPoint from)
throws java.io.IOException,
AutomationException
ICurve
setFromPoint in interface ICurvefrom - A reference to a com.esri.arcgis.geometry.IPoint (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void queryFromPoint(IPoint from)
throws java.io.IOException,
AutomationException
ICurveUsed to query the FromPoint of the first Segment of the first part of the curve.
Note: The output geometry must be co-created prior to the query. The output geometry is not co-created 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.

queryFromPoint in interface ICurvefrom - A reference to a com.esri.arcgis.geometry.IPoint (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.IPoint
public IPoint getToPoint()
throws java.io.IOException,
AutomationException
ICurveReturns or Sets the ToPoint of the first Segment of the first part of the curve. While the curve may be composed of many parts and segments each with their own ToPoint, each curve only has a single To Point.

getToPoint in interface ICurvejava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IPoint
public void setToPoint(IPoint to)
throws java.io.IOException,
AutomationException
ICurve
setToPoint in interface ICurveto - A reference to a com.esri.arcgis.geometry.IPoint (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void queryToPoint(IPoint to)
throws java.io.IOException,
AutomationException
ICurveUsed to query the ToPoint of the first Segment of the first part of the curve.
Note: The output geometry must be co-created prior to the query. The output geometry is not co-created 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.

queryToPoint in interface ICurveto - A reference to a com.esri.arcgis.geometry.IPoint (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IPoint
public void queryPoint(int extension,
double distanceAlongCurve,
boolean asRatio,
IPoint outPoint)
throws java.io.IOException,
AutomationException
ICurveReturns the Point at a given distance along the curve or extended curve. If the distance is less than the length of the curve, then the returned point is the point at that distance along the curve. If the distance is less than zero, or greater than the length of the curve, then the returned point is on the curve specified by the extension method. The distance may be specified as a fixed unit of measure or a ratio of the length of the curve.
Note: The output geometry must be co-created prior to the query. The output geometry is not co-created 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.

queryPoint in interface ICurveextension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)distanceAlongCurve - The distanceAlongCurve (in)asRatio - The asRatio (in)outPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.IPoint,
esriSegmentExtension
public void queryPointAndDistance(int extension,
IPoint inPoint,
boolean asRatio,
IPoint outPoint,
double[] distanceAlongCurve,
double[] distanceFromCurve,
boolean[] bRightSide)
throws java.io.IOException,
AutomationException
ICurveFinds the Point on the specified extended curve nearest to the input point and the distance between those points. Also returns information about the side of the curve the input point is on as well as the distance along the curve that the nearest point occurs.
AsRatio is an input parameter that only affects the DistanceAlongCurve
distanceFromCurve is an output parameter that represents the minimum distance between the curve and the input point.
DistanceAlongCurve is an output parameter that represents the distance between the Frompoint of the input curve and the returned point on the curve.
bRightSide is an output parameter that tells if the output point is on the right side of the curve. The direction of the curve determines the right and left sides.
Note: The output geometry must be co-created prior to the query. The output geometry is not co-created 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.

queryPointAndDistance in interface ICurveextension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)inPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)asRatio - The asRatio (in)outPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)distanceAlongCurve - The distanceAlongCurve (in/out: use single element array)distanceFromCurve - The distanceFromCurve (in/out: use single element array)bRightSide - The bRightSide (in/out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.IPoint
public void queryTangent(int extension,
double distanceAlongCurve,
boolean asRatio,
double length,
ILine tangent)
throws java.io.IOException,
AutomationException
ICurveGiven a distance along the curve specified either as a ratio of the length or as a specific fixed distance, QueryTangent returns the Line tangent to the Point. The length and method of tangential extension of the tangent line are given by the user. The method of tangential extension determines the direction of the tangent line as though it were being extended at a From point or a To point.

queryTangent in interface ICurveextension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)distanceAlongCurve - The distanceAlongCurve (in)asRatio - The asRatio (in)length - The length (in)tangent - A reference to a com.esri.arcgis.geometry.ILine (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.ILine
public void queryNormal(int extension,
double distanceAlongCurve,
boolean asRatio,
double length,
ILine normal)
throws java.io.IOException,
AutomationException
ICurveGiven a distance along the curve specified either as a ratio of the Length or as a specific fixed distance, QueryNormal returns the Line normal to the Point. The length and method of tangential extension of the normal line are given by the user. The method of tangential extension determines the direction of the normal line as though it were being extended at a From point or a To point.

queryNormal in interface ICurveextension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)distanceAlongCurve - The distanceAlongCurve (in)asRatio - The asRatio (in)length - The length (in)normal - A reference to a com.esri.arcgis.geometry.ILine (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.ILine
public void getSubcurve(double fromDistance,
double toDistance,
boolean asRatio,
ICurve[] outSubcurve)
throws java.io.IOException,
AutomationException
ICurveGets the subcurve between the specified points along the original curve and creates a new curve. The elements in the new subcurve are the same type and have the same properties as the elements of the original curve. Which means if:
| Input Geometry | Output Geometry |
|---|---|
| Polygon | Polyline |
| Polyline | Polyline |
| Ring | Path |
| Path | Path |
| Segment | Segment |
If the input geometry is a polygon, you may want to use IRing::GetSubCurveEx which has more capabilities.

getSubcurve in interface ICurvefromDistance - The fromDistance (in)toDistance - The toDistance (in)asRatio - The asRatio (in)outSubcurve - A reference to a com.esri.arcgis.geometry.ICurve (out: use single element array)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void reverseOrientation()
throws java.io.IOException,
AutomationException
ICurveReverseOrientation changes the direction of the curve without changing the spatial position of the curve. The From Point and To Point of each Segment in each part of the curve are interchanged.
The ReverseOrientation method works the same way as the Arcedit FLIP command. It reverses the order of the vertices in the Curve.
Caution should be taken in using ReverseOrientation on Polygons. Since ReverseOrientation changes the direction of each Ring within the Polygon, all Exterior Rings become Interior Rings and vice versa.

reverseOrientation in interface ICurvejava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public boolean isClosed()
throws java.io.IOException,
AutomationException
ICurve
isClosed in interface ICurvejava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public int getGeometryType()
throws java.io.IOException,
AutomationException
IGeometryesriGeometryNull = 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 IGeometryjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public int getDimension()
throws java.io.IOException,
AutomationException
IGeometryReturns the dimension of the geometry object based on the geometry's type.

getDimension in interface IGeometryAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public ISpatialReference getSpatialReference()
throws java.io.IOException,
AutomationException
IGeometryReturns 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 IGeometryAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void setSpatialReferenceByRef(ISpatialReference spatialRef)
throws java.io.IOException,
AutomationException
IGeometry
setSpatialReferenceByRef in interface IGeometryspatialRef - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isEmpty()
throws java.io.IOException,
AutomationException
IGeometry
isEmpty in interface IGeometryjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setEmpty()
throws java.io.IOException,
AutomationException
IGeometry
setEmpty in interface IGeometryjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void queryEnvelope(IEnvelope outEnvelope)
throws java.io.IOException,
AutomationException
IGeometryReturns the unique Envelope that binds the Geometry object. This is the smallest Envelope that Contains the object.
Note: The output geometry must be co-created prior to the query. The output geometry is not co-created 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 IGeometryoutEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public IEnvelope getEnvelope()
throws java.io.IOException,
AutomationException
IGeometryReturns the unique Envelope that binds the Geometry object. This is the smallest Envelope that Contains the object.

getEnvelope in interface IGeometryjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void project(ISpatialReference newReferenceSystem)
throws java.io.IOException,
AutomationException
IGeometryTo 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.
Note: 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 IGeometrynewReferenceSystem - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void snapToSpatialReference()
throws java.io.IOException,
AutomationException
IGeometry
snapToSpatialReference in interface IGeometryjava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void geoNormalize()
throws java.io.IOException,
AutomationException
IGeometry
geoNormalize in interface IGeometryAutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void geoNormalizeFromLongitude(double longitude)
throws java.io.IOException,
AutomationException
IGeometry
geoNormalizeFromLongitude in interface IGeometrylongitude - The longitude (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void move(double dx,
double dy)
throws java.io.IOException,
AutomationException
ITransform2DMoves the Geometry dX units along the X-Axis and dY units along the Y-Axis. Only changes the position of the Geometry without altering any of the other characteristics. Move is a spatial offset.

move in interface ITransform2Ddx - The dx (in)dy - The dy (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void moveVector(ILine v)
throws java.io.IOException,
AutomationException
ITransform2DMoves the Geometry dX units along the X-Axis and dY units along the Y-Axis, 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 ITransform2Dv - A reference to a com.esri.arcgis.geometry.ILine (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void scale(IPoint origin,
double sx,
double sy)
throws java.io.IOException,
AutomationException
ITransform2DStretches the Geometry a factor of sX along the X-Axis and a factor of sY along the Y-Axis (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 ITransform2Dorigin - A reference to a com.esri.arcgis.geometry.IPoint (in)sx - The sx (in)sy - The sy (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void rotate(IPoint origin,
double rotationAngle)
throws java.io.IOException,
AutomationException
ITransform2DRotate 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 ITransform2Dorigin - A reference to a com.esri.arcgis.geometry.IPoint (in)rotationAngle - The rotationAngle (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void transform(int direction,
ITransformation transformation)
throws java.io.IOException,
AutomationException
ITransform2D
transform in interface ITransform2Ddirection - A com.esri.arcgis.geometry.esriTransformDirection constant (in)transformation - A reference to a com.esri.arcgis.geometry.ITransformation (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void putCoordsEx(IPoint from,
IPoint to)
throws java.io.IOException,
AutomationException
ICurve2PutCoordsEx allows both the fromPoint and the toPoint to be set simultaneously.
A Conformal Transformation based on the original points and the new points
is applied to the curve.
putCoordsEx in interface ICurve2from - A reference to a com.esri.arcgis.geometry.IPoint (in)to - A reference to a com.esri.arcgis.geometry.IPoint (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void queryPointsAndDistances(int extension,
double searchRadius,
IPoint inPoint,
boolean asRatio,
double[] distanceFromCurve,
IEnumPointAndDistance[] pointsAndDistances)
throws java.io.IOException,
AutomationException
ICurve3This method is similar to QueryPointsAndDistance; but it handles the case where the location of the minimum distance is not unique (See picture below). QueryPointAndDistance returns only the first location, this method returns all locations of minimum distance.
AsRatio is an input parameter that only affects the DistanceAlongCurvereturned as part of the output IEnumPointAndDistance enumerator.
distanceFromCurve is an output parameter that represents the minimum distance between the curve and the input point.
IEnumPointAndDistance is an enumerator (it inherits from IEnumVertex) over all nearest points on the curve
queryPointsAndDistances in interface ICurve3extension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)searchRadius - The searchRadius (in)inPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)asRatio - The asRatio (in)distanceFromCurve - The distanceFromCurve (in/out: use single element array)pointsAndDistances - A reference to a com.esri.arcgis.geometry.IEnumPointAndDistance (out: use single element array)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void queryCurvature(double distanceAlongCurve,
boolean asRatio,
double[] curvature,
ILine unitVector)
throws java.io.IOException,
AutomationException
ISegmentReturns the curvature at a specified distance along the segment. The distance can be given explicitly or as a ratio of the entire length of the segment. The curvature is returned as a Line representing a directional unit vector (in the direction going from the From Point to the To Point) and a double representing the magnitude of the vector of curvature.
The unit vector returned by QueryCurvature points toward the center of the circle that has the same first and second derivative at the queried point with a curvature value equal to 1 / Radius of that circle.

queryCurvature in interface ISegmentdistanceAlongCurve - The distanceAlongCurve (in)asRatio - The asRatio (in)curvature - The curvature (out: use single element array)unitVector - A reference to a com.esri.arcgis.geometry.ILine (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public int returnTurnDirection(ISegment otherSegment)
throws java.io.IOException,
AutomationException
ISegmentReturns the Turn Direction of the Segment immediately following the current Segment. The two segments must be connected between the To Point of the first segment and the From Point of the second segment. ReturnTurnDirection returns a long corresponding to an esriTurnDirectionEnum or a combination of esriNoTurn or esriUTurn and esriRightTurn or esriLeftTurn. If the two segments are tangential at the point of connection and not completely colinear, then a combination of esriTurnDirectionEnums are returned.
ReturnTurnDirection is only available for Lines and CircularArcs, not BezierCurves or EllipticArcs.

returnTurnDirection in interface ISegmentotherSegment - A reference to a com.esri.arcgis.geometry.ISegment (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void splitAtDistance(double distances,
boolean asRatio,
ISegment[] fromSegment,
ISegment[] toSegment)
throws java.io.IOException,
AutomationException
ISegmentSplits the input Segment at the given distance and returns the Segment between the original From Point and the split point as well as the Segment between the split point and the original To Point. The split distance may be specified as a ratio of the total distance if AsRatio = TRUE, otherwise the distance is in the same units as the Length of the Segment.

splitAtDistance in interface ISegmentdistances - The distances (in)asRatio - The asRatio (in)fromSegment - A reference to a com.esri.arcgis.geometry.ISegment (out: use single element array)toSegment - A reference to a com.esri.arcgis.geometry.ISegment (out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void splitDivideLength(double offset,
double length,
boolean asRatio,
int[] numSplitSegments,
ISegment splitSegments)
throws java.io.IOException,
AutomationException
ISegmentOutputs an array of Segments of a desired input length starting at an offset distance along the curve and continuing until the end of the Segment is reached. The offset and length may be specified as a ratio of the total length of the Segment. SplitDivideLength outputs an array of Segments and the number of Segments in that array. All of the output Segments in the array have the desired input length with the exception of the final Segment which has a length less than or equal to the input length (the remainder of the Segment).

splitDivideLength in interface ISegmentoffset - The offset (in)length - The length (in)asRatio - The asRatio (in)numSplitSegments - The numSplitSegments (in)splitSegments - A reference to a com.esri.arcgis.geometry.ISegment (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void densify(int cInSlots,
double maxDeviation,
int[] pcOutSegments,
ILine[] segments)
throws java.io.IOException,
AutomationException
ISegmentDensifying individual segments can be accomplished in client code by add the segment to a temporary polyline, then densifying the polyline using one of the methods on IPolycurve. Alternatively, the IGeometryBridge interface on the GeometryEnvironment object can be used.
densify in interface ISegmentcInSlots - The cInSlots (in)maxDeviation - The maxDeviation (in)pcOutSegments - The pcOutSegments (out: use single element array)segments - A reference to a com.esri.arcgis.geometry.ILine (out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void geographicShift(double splitLongitude)
throws java.io.IOException,
AutomationException
ISegment
geographicShift in interface ISegmentsplitLongitude - The splitLongitude (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void constructEnvelope(IEnvelope boundingEnvelope)
throws java.io.IOException,
AutomationException
IConstructEllipticArcConstructEnvelope creates an EllipticArc from a given Envelope. The constructed EllipticArc is the full EllipticArc that has the given Envelope as its Envelope. The EllipticArc has a Major Axis equal to the larger of the Width and Height, and the Minor Axis equal to the smaller of the Width and Height. The CenterPoint of the EllipticArc is the CenterPoint of the Envelope.

constructEnvelope in interface IConstructEllipticArcboundingEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void constructUpToFivePoints(IPoint from,
IPoint to,
IPoint thru,
IPoint point4,
IPoint point5)
throws java.io.IOException,
AutomationException
IConstructEllipticArcConstructs an EllipticArc using as many of the zero to five input points as possible. The first input point is always the From Point of the constructed EllipticArc. The second input point is always the To Point of the constructed EllipticArc. The third point is the Thru Point of the EllipticArc and is always guaranteed to lie on the constructed EllipticArc. The fourth and fifth points may lie on either the constructed EllipticArc or the embedded extension of the EllipticArc. The first three input points are guaranteed to be used in the construction of the EllipticArc. The fourth and fifth points are used in preferential order as long as they do not create an invalid EllipticArc. All points used to construct an EllipticArc must lie on a Convex Hull, otherwise the fourth or fifth non-convex points are discarded to maintain convexity. Zero input points defines an empty EllipticArc. One input point defines a degenerate IsPoint EllipticArc. Two disjoint input points uniquely define a degenerate IsLine EllipticArc with the points at the end of the semiMajor axis with a Minor/Major Ratio of 0. Three non-colinear input points uniquely define an IsCircular EllipticArc in the same manner as ConstructThreePoints constructs a CircularArc. Four input points on a convex hull may be sufficient to uniquely define an unrotated (or Pi / 2 rotated) EllipticArc. For cases where an unrotated EllipticArc cannot be fit to the input points, a reasonable rotated EllipticArc is constructed to fit the input points (this EllipticArc is not the only rotated EllipticArc that can be fit to the input points.).

constructUpToFivePoints in interface IConstructEllipticArcfrom - A reference to a com.esri.arcgis.geometry.IPoint (in)to - A reference to a com.esri.arcgis.geometry.IPoint (in)thru - A reference to a com.esri.arcgis.geometry.IPoint (in)point4 - A reference to a com.esri.arcgis.geometry.IPoint (in)point5 - A reference to a com.esri.arcgis.geometry.IPoint (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void constructQuarterEllipse(IPoint fromPoint,
IPoint toPoint,
boolean cCW)
throws java.io.IOException,
AutomationException
IConstructEllipticArcConstructQuarterEllipse constructs a quarter EllipticArc between a given From Point and To Point with the desired orientation. The From Point and the To Point lie on the ends of the EllipticArc Axes. The constructed quarter Ellipse can be thought of as being the EllipticArc within the envelope defined by the From Point and To Point with a semiMajor axis equal to the longer side of the envelope and a semiMinor axis equal to the shorter side of the envelope.

constructQuarterEllipse in interface IConstructEllipticArcfromPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)toPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)cCW - The cCW (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void constructTwoPointsEnvelope(IPoint fromPoint,
IPoint toPoint,
IEnvelope suggestedEnvelope,
int orientation)
throws java.io.IOException,
AutomationException
IConstructEllipticArcConstructTwoPointsEnvelope constructs an EllipticArc given the From and To Points and a suggested Envelope as input. The constructed EllipticArc has characteristics similar to the full ellipse defined by the input Envelope. The final EllipticArc may vary slightly from the input Envelope depending on how well the input Points fit the suggested EllipticArc.

constructTwoPointsEnvelope in interface IConstructEllipticArcfromPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)toPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)suggestedEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)orientation - A com.esri.arcgis.geometry.esriArcOrientation constant (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void queryNearestPoint(IPoint p,
int extension,
IPoint nearest)
throws java.io.IOException,
AutomationException
IProximityOperatorQueries 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 IProximityOperatorp - 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)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.esriSegmentExtension
public IPoint returnNearestPoint(IPoint p,
int extension)
throws java.io.IOException,
AutomationException
IProximityOperatorFinds 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 IProximityOperatorp - A reference to a com.esri.arcgis.geometry.IPoint (in)extension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.esriSegmentExtension
public double returnDistance(IGeometry other)
throws java.io.IOException,
AutomationException
IProximityOperatorReturns 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 IProximityOperatorother - A reference to a com.esri.arcgis.geometry.IGeometry (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void interfaceSupportsErrorInfo(GUID riid)
throws java.io.IOException,
AutomationException
ISupportErrorInfoIndicates whether the interface supports IErrorInfo.
interfaceSupportsErrorInfo in interface ISupportErrorInforiid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public IClone esri_clone()
throws java.io.IOException,
AutomationException
IClone
esri_clone in interface IClonejava.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void assign(IClone src)
throws java.io.IOException,
AutomationException
IClone
assign in interface IClonesrc - A reference to a com.esri.arcgis.system.IClone (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isEqual(IClone other)
throws java.io.IOException,
AutomationException
IClone
isEqual in interface ICloneother - A reference to a com.esri.arcgis.system.IClone (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public boolean isIdentical(IClone other)
throws java.io.IOException,
AutomationException
IClone
isIdentical in interface ICloneother - A reference to a com.esri.arcgis.system.IClone (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void getMs(double[] fromM,
double[] toM)
throws java.io.IOException,
AutomationException
ISegmentMReturns the M attributes held by the From and To point of the segment.
getMs in interface ISegmentMfromM - The fromM (out: use single element array)toM - The toM (out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void setMs(double fromM,
double toM)
throws java.io.IOException,
AutomationException
ISegmentM
setMs in interface ISegmentMfromM - The fromM (in)toM - The toM (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void getZs(double[] fromZ,
double[] toZ)
throws java.io.IOException,
AutomationException
ISegmentZReturns the Z attributes held by the From and To point of the segment.
getZs in interface ISegmentZfromZ - The fromZ (out: use single element array)toZ - The toZ (out: use single element array)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
public void setZs(double fromZ,
double toZ)
throws java.io.IOException,
AutomationException
ISegmentZ
setZs in interface ISegmentZfromZ - The fromZ (in)toZ - The toZ (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void getIDs(int[] fromID,
int[] toID)
throws java.io.IOException,
AutomationException
ISegmentIDReturns the PointID attributes held by the From and To point of the segment.
getIDs in interface ISegmentIDfromID - The fromID (out: use single element array)toID - The toID (out: use single element array)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public void setIDs(int fromID,
int toID)
throws java.io.IOException,
AutomationException
ISegmentID
setIDs in interface ISegmentIDfromID - The fromID (in)toID - The toID (in)
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||