com.esri.arcgis.geometry
Class MultiPatch

java.lang.Object
  extended by com.esri.arcgis.geometry.MultiPatch
All Implemented Interfaces:
IArea, IArea3D, IConstructMultiPatch, IGeneralMultiPatchInfo, IGeometry, IGeometry2, IGeometry3, IGeometry4, IGeometry5, IGeometryCollection, IHitTest, IHitTest3D, IMAware, IMCollection, IMSnap, IMultiPatch, IPointCollection, IPointCollection2, IPointCollection3, IPointCollection4, IPointIDAware, IProximityOperator, IProximityOperator3D, IRelationalOperator, IRelationalOperator2, IRelationalOperator3D, IRelationalOperator3D2, ITopologicalOperator, ITopologicalOperator2, ITopologicalOperator3, ITransform2D, ITransform3D, IVolume, IZAware, IZCollection, com.esri.arcgis.interop.RemoteObjRef, IClone, IPersist, IPersistStream, ISupportErrorInfo, IXMLSerialize, java.io.Externalizable, java.io.Serializable

public class MultiPatch
extends java.lang.Object
implements com.esri.arcgis.interop.RemoteObjRef, IGeometry, IGeometry2, IGeometry3, IGeometry4, IGeometry5, IGeometryCollection, IPointCollection, IPointCollection4, IMultiPatch, IConstructMultiPatch, ITopologicalOperator, ITopologicalOperator2, ITopologicalOperator3, IHitTest, IHitTest3D, IArea, IArea3D, IZAware, IZCollection, IMAware, IMCollection, IPointIDAware, ISupportErrorInfo, IPersist, IPersistStream, IClone, ITransform2D, ITransform3D, IXMLSerialize, IMSnap, IGeneralMultiPatchInfo, IProximityOperator, IRelationalOperator, IRelationalOperator2, IProximityOperator3D, IRelationalOperator3D, IRelationalOperator3D2, IVolume, java.io.Externalizable

COM Class 'MultiPatch'. Generated 3/19/2015 1:20:44 PM from 'C:\ArcGIS\COM\esriGeometry.olb'

Description 'A collection of surface patches.' Generator Options: PromptForTypeLibraries = False ClashPrefix = esri_ LowerCaseMemberNames = True IDispatchOnly = False RetryOnReject = False AwtForOcxs = True ArraysAsObjects = False DontRenameSameMethods = False ImplementConflictingInterfaces = True ReuseMethods = True RenameConflictingInterfaceMethods = True GenBeanInfo = True GenerateJavadoc =

See Also:
Serialized Form

Field Summary
static long serialVersionUID
           
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometry5
IID, IID134b247e_83f6_471c_9ad1_11c35312d5ef, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometry4
IIDc4c70b7a_dfba_4892_86cd_a9100357409b
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometry3
IIDd034f81b_7137_40a6_90ea_d88968c33e60
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometry2
IIDb79b2d7e_dbc8_11d3_9f60_00c04f6bdd7f
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometry
IID1b07790d_38c5_11d0_92d2_00805f7c28b0
 
Fields inherited from interface com.esri.arcgis.geometry.IGeometryCollection
IID, IIDc801565e_99ca_11d0_82f7_0000f8034032, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IPointCollection4
IID, IID773f7279_aefb_11d5_8112_00c04fa0adf8, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IPointCollection3
IIDaf10d3e8_f2f8_49ec_a6c5_7018099eeaed
 
Fields inherited from interface com.esri.arcgis.geometry.IPointCollection2
IIDf643a012_c208_48db_b2d6_565f52b55c8e
 
Fields inherited from interface com.esri.arcgis.geometry.IPointCollection
IIDde08a214_4fc2_11d1_834e_0000f8775be9
 
Fields inherited from interface com.esri.arcgis.geometry.IMultiPatch
IID, IIDf3c041c8_ae4d_11d2_9c93_00c04fb17838, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IConstructMultiPatch
IID, IID51cde393_03b4_11d4_9f56_00c04f6bdf0d, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.ITopologicalOperator3
IID, IIDd4dc3b12_88ea_42d8_87b7_4eb7460737c1, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.ITopologicalOperator2
IID805aeeb0_1d4c_11d4_9f75_00c04f6bdd7f
 
Fields inherited from interface com.esri.arcgis.geometry.ITopologicalOperator
IID1b077911_38c5_11d0_92d2_00805f7c28b0
 
Fields inherited from interface com.esri.arcgis.geometry.IHitTest
IID, IID0eb12c6e_18f6_11d1_8337_0000f8775be9, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IHitTest3D
IID, IIDa2fa4e9a_4e10_4a62_9eed_48680a7423dd, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IArea
IID, IID6039e192_4cc8_11d1_834e_0000f8775be9, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IArea3D
IID, IID984839b4_f7ea_42f8_ae20_48632369cc08, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IZAware
IID, IIDefeeb8b3_dc23_11d2_9f2e_00c04f6bdf0d, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IZCollection
IID, IIDefeeb8b4_dc23_11d2_9f2e_00c04f6bdf0d, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IMAware
IID, IID52c59396_d744_11d2_9f34_00c04f6bdf06, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IMCollection
IID, IID01faff20_5191_11d2_92f6_0000f875171d, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IPointIDAware
IID, IID739a1669_e870_11d2_9f30_00c04f6bdf0d, xxDummy
 
Fields inherited from interface com.esri.arcgis.system.ISupportErrorInfo
IID, IIDdf0b3d60_548f_101b_8e65_08002b2bd119, xxDummy
 
Fields inherited from interface com.esri.arcgis.system.IPersistStream
IID, IID00000109_0000_0000_c000_000000000046, xxDummy
 
Fields inherited from interface com.esri.arcgis.system.IPersist
IID0000010c_0000_0000_c000_000000000046
 
Fields inherited from interface com.esri.arcgis.system.IClone
IID, IID9bff8aeb_e415_11d0_943c_080009eebecb, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.ITransform2D
IID, IID3be78ad0_886e_11d1_bc78_0000f875bcce, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.ITransform3D
IID, IID9414e949_ffa0_11d3_9f56_00c04f6bdf0d, xxDummy
 
Fields inherited from interface com.esri.arcgis.system.IXMLSerialize
IID, IIDc8545045_6615_48e3_af27_52a0e5fc35e2, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IMSnap
IID, IID3732f8b2_0f64_11d5_9fde_00c04f6bdd7f, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IGeneralMultiPatchInfo
IID, IID69656158_701d_408c_8b6a_a0b4c012c843, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IProximityOperator
IID, IID1b07790f_38c5_11d0_92d2_00805f7c28b0, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IRelationalOperator2
IID, IID839f5c7e_ed5f_4b3f_8f97_c0a9cc4817ee, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IRelationalOperator
IID1b07790e_38c5_11d0_92d2_00805f7c28b0
 
Fields inherited from interface com.esri.arcgis.geometry.IProximityOperator3D
IID, IID97e08cf7_7a24_4290_ba8a_acedb753b42c, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IRelationalOperator3D2
IID, IIDcc14f157_ec46_4498_8148_fde8d6b43e20, xxDummy
 
Fields inherited from interface com.esri.arcgis.geometry.IRelationalOperator3D
IIDf6eaefde_888e_4f1d_b5b7_84f36da677b0
 
Fields inherited from interface com.esri.arcgis.geometry.IVolume
IID, IIDaade8029_6549_41e8_85f5_b17b8e7d9212, xxDummy
 
Constructor Summary
MultiPatch()
          Constructs a MultiPatch using ArcGIS Engine.
MultiPatch(java.lang.Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
MultiPatch theMultiPatch = (MultiPatch) obj;
 
Method Summary
 void addGeometries(int count, IGeometry newGeometries)
          Adds references to the specified geometries.
 void addGeometry(IGeometry inGeometry, java.lang.Object before, java.lang.Object after)
          Adds a reference to the input geometry either at the end, or before, or after the specified index.
 void addGeometryCollection(IGeometryCollection newGeometries)
          Adds references to geometries in the input collection.
 void addPoint(IPoint inPoint, java.lang.Object before, java.lang.Object after)
          Adds a vertex to a Path, Ring, Polyline, or Polygon; or adds a reference to the input point to a Multipoint, TriangleFan, or TriangleStrip.
 void addPointCollection(IPointCollection newPoints)
          Adds copies of points in the input point collection to this Path, Ring, Polyline, or Polygon; or adds references to the points in the collection to this Multipoint, TriangleFan, or TriangleStrip.
 void addPoints(int count, IPoint newPoints)
          Adds copies of the input points as vertices to this Path, Ring, Polyline, or Polygon; or references to the input points to this Multipoint, TriangleFan, or TriangleStrip.
 void addWKSPointZs(int count, _WKSPointZ pointStructures)
          Adds vertices/points to this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch.
 void assign(IClone src)
          Assigns the properties of src to the receiver.
 IGeometry buffer(double distance)
          Constructs a polygon that is the locus of points at a distance less than or equal to a specified distance from this geometry.
 void clip(IEnvelope clipperEnvelope)
          Constructs the intersection of this geometry and the specified envelope.
 void clipDense(IEnvelope clipperEnvelope, double denseDistance)
          Constructs the intersection of this geometry and the specified envelope; densifies lines in output contributed by the clipping envelope.
 void clipToDomain()
          Clips the geometry to the domain of the spatial reference.
 IEnumGeometry constructBuffers(int numBuffers, double[] distances)
          Constructs a set of buffers at various distances.
 void constructExtrude(double offsetZ, IGeometry baseGeom)
          Construct a MultiPatch by using an input (non-point) geometry as one base and offsetting the Zs already set on the input geometry to get the second base.
 void constructExtrudeAbsolute(double toZ, IGeometry baseGeom)
          Construct a MultiPatch by extruding a (non-point) geometry using its initial Zs for one base, and a uniform input Z for the other.
 void constructExtrudeAlongLine(ILine extrusionLine, IGeometry baseGeom)
          Construct a MultiPatch by extruding a (non-point) geometry along a specified line, using the Zs on the two ends of the line to set Zs on the top and bottom.
 void constructExtrudeBetween(IFunctionalSurface fromSurface, IFunctionalSurface toSurface, IGeometry baseGeom)
          Construct a MultiPatch by extruding a (non-point) geometry between two functional surfaces.
 void constructExtrudeFromTo(double fromZ, double toZ, IGeometry baseGeom)
          Construct a MultiPatch by extruding a (non-point) geometry between two specified Z values.
 void constructExtrudeRelative(IVector3D extrusionVector, IGeometry baseGeom)
          Construct a MultiPatch by extruding a (non-point) geometry along a specified vector, using Zs already set on the input geometry.
 void constructUnion(IEnumGeometry geometries)
          Defines this geometry to be the union of the inputs.
 boolean contains(IGeometry other)
          Indicates if this geometry contains the other geometry.
 boolean containsEx(IGeometry pOther, int relation)
          Indicates if this geometry contains the other geometry, optionally using Celementini's definition.
 IGeometry convexHull()
          Constructs the convex hull of this geometry.
 boolean crosses(IGeometry other)
          Indicates if the two geometries intersect in a geometry of lesser dimension.
 void cut(IPolyline cutter, IGeometry[] leftGeom, IGeometry[] rightGeom)
          Splits this geometry into a part left of the cutting polyline, and a part right of it.
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 IGeometry difference(IGeometry other)
          Constructs the geometry containing points from this geometry but not the other geometry.
 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 non-valid number (NaN).
 void dropPointIDs()
          Unsets all PointID values without changing awareness.
 void dropZs()
          Sets all the Z values to a non-valid number (NaN).
 boolean equals(java.lang.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.
 IRing findBeginningRing(IRing followingRing)
          Returns the beginning ring of the ring group containing the specified following ring.
 void geometriesChanged()
          Tells this geometry collection that some of its geometries have been altered.
 void geoNormalize()
          Shifts longitudes, if need be, into a continuous range of 360 degrees.
 void geoNormalizeEx(ISpatialReference sR, double denseDistance)
          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.
 double getArea3D()
          The 3D surface area.
 int getBeginningRingCount(int ringTypesDesired)
          The number of beginning rings, counting only those of the desired types.
 IGeometry getBoundary()
          The boundary of this geometry.
 IPoint getCentroid()
          The center of gravity (centroid).
 IPoint getCentroid3D()
          A 3D point whose XY coordinates are set to the center of gravity of the shape’s 2D footprint and Z set to the shape’s ZMax.
 IPoint getCentroidEx()
          The center of gravity (centroid).
 void getClassID(GUID[] pClassID)
          getClassID
static java.lang.String getClsid()
          getClsid.
 int getDimension()
          The topological dimension of this geometry.
 IEnumVertex getEnumVertices()
          A new enumerator for this point collection.
 IEnvelope getEnvelope()
          Creates a copy of this geometry's envelope and returns it.
 int getFollowingRingCount(IRing beginningRing)
          The number of following rings in the ring group that starts with the specified beginning ring.
 IGeometry getGeometry(int index)
          A reference to the ith geometry.
 int getGeometryCount()
          The number of geometries in this collection.
 int getGeometryType()
          The type of this geometry.
 int getIdCount()
          Get Id Count.
 IEnumVertex getIndexedEnumVertices(IGeometry queryGeometry)
          An indexed vertex enumerator for this point collection.
 com.esri.arcgis.interop.Dispatch getJintegraDispatch()
          Deprecated. Internal use only.
 IPoint getLabelPoint()
          A point guaranteed to be inside this area.
 IPoint getLabelPoint3D()
          A point guaranteed to be on this 3D surface area.
 int getMaterialColor(int index)
          Get material color.
 int getMaterialCount()
          Get Material Count.
 int getMaterialTextureBytesPerPixel(int index)
          Get Material texture bytes per pixel.
 int getMaterialTextureColumnCount(int index)
          Get Material texture column count.
 int getMaterialTexturePixelColor(int index, int row, int column)
          Get Material texture pixel color.
 int getMaterialTextureRowCount(int index)
          Get Material texture row count.
 int getMaterialTransparencyPercent(int index)
          Get transparency %, in range of 0 - 100
 int getMCount()
          Get M Count.
 double getMMax()
          The maximum M value.
 double getMMin()
          The minimum M value.
 int getNormalCount()
          Get Normal Count.
 int getPatchCount()
          Get Patch Count.
 double getPatchM(int patch, int index)
          Get M for patch at vertex index.
 int getPatchMaterialIndex(int patch)
          Get patch material index.
 int getPatchPriority(int patch)
          Get patch priority.
 _WKSPoint getPatchTextureVertex(int patch, int index)
          Get Texture WKSPoint for a patch at vertex index.
 int getPatchTextureVertexCount(int patch)
          Get texture vertex count for a patch.
 int getPatchType(int patch)
          Get patch type.
 _WKSPointZ getPatchVertex(int patch, int index)
          Get Point for patch at vertex index.
 int getPatchVertexCount(int patch)
          Get count of vertices in patch.
 int getPatchVertexID(int patch, int index)
          Get vertex Id for a patch at vertex index.
 IPoint getPoint(int i)
          A copy of the ith vertex of a Path, Ring, Polyline, or Polygon; or a reference to the ith point of a Multipoint, TriangleFan, or TriangleStrip.
 int getPointCount()
          The number of points in the collection.
 void getPoints(int index, int count, IPoint[] points)
          Populates an array with references to points in the Multipoint.
 int getRingType(IRing queryRing, boolean[] isBeginningRing)
          Gets the esriMultiPatchRingType of the input Ring and returns a boolean indicating if that ring is a beginning ring.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISpatialReference getSpatialReference()
          The spatial reference associated with this geometry.
 int getTextureVertexCount()
          Get Texture Vertex Count.
 int getVertexCount()
          Get Vertex Count.
 double getVolume()
          The enclosed 3D volume.
 IGeometry getXYFootprint()
          A reference to a cached copy of the multipatch's footprint in the x-y plane.
 double getZMax()
          The maximum Z value.
 double getZMin()
          The minimum Z value.
 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.
 boolean hitTest3D(IPoint queryPoint, double searchRadius, int geometryPart, IPoint hitPoint, double[] hitDistance, int[] hitPartIndex, int[] hitSegmentIndex)
          Locates a part of a geometry closest to a query point.
 boolean hitTestCone(IRay pQueryRay, double minAngle, int geometryPart, IPoint pHitPoint, double[] pHitDistance, int[] pHitPartIndex, int[] pHitSegmentIndex)
          Locates a part of a geometry closest to a query ray.
 void insertGeometries(int index, int count, IGeometry newGeometries)
          Inserts at the specified index references to some number of geometries in the input array.
 void insertGeometryCollection(int index, IGeometryCollection newGeometries)
          Inserts at the specified index references to all if the geometries in the input collection.
 void insertPointCollection(int index, IPointCollection newPoints)
          Inserts copies of points, from the input point collection, as vertices into this Path, Ring, Polyline, or Polygon; or references to points in the input point collection into this Multipoint, TriangleFan, or TriangleStrip.
 void insertPoints(int index, int count, IPoint newPoints)
          Inserts copies of the input points as vertices into a Path, Ring, Polyline, or Polygon; or references to the input points into a Multipoint, TriangleFan, or TriangleStrip.
 void insertWKSPointZs(int index, int count, _WKSPointZ newPoints)
          Inserts new vertices/points into this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch.
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 IGeometry intersect(IGeometry other, int resultDimension)
          Constructs the geometry that is the set-theoretic intersection of the input geometries.
 IGeometry intersectMultidimension(IGeometry other)
          Constructs the set-theoretic intersection of the inputs.
 void invalXYFootprint()
          Notifies the multipatch that its cached footprint has been modified by an outside agent.
 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)
          Indicates if the receiver and other have the same properties.
 boolean isIdentical(IClone other)
          Indicates if the receiver and other are the same object.
 boolean isKnownSimple()
          Indicates whether this geometry is known (or assumed) to be topologically correct.
 boolean isMaterialCullBackface(int index)
          Get backface culling enabled,
 boolean isMaterialTextured(int index)
          Get Is Material textured.
 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 isNear(IGeometry pOther, double distance)
          Indicates if this geometry is within distance from the other geometry.
 boolean isNear3D(IGeometry pOther, double distance)
          Indicates if this geometry is within distance from the other geometry; both geometries must have Zs.
 boolean isPointIDAware()
          Indicates whether or not the geometry is aware of and capable of handling PointIDs.
 boolean isPointIDSimple()
          Indicates if all PointID values for this geometry are well-defined.
 boolean isSimple()
          Indicates whether this geometry is known (or assumed) to be topologically correct, after explicitly determining this if the geometry is not already known (or assumed) to be simple.
 boolean isSimpleEx(int[] reason)
          Determines why a geometry is not simple.
 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 move3D(double dx, double dy, double dz)
          Moves the object by dx, dy and dz along the x, y, and z axes respectively.
 void moveVector(ILine v)
          Moves a direction and distance v.
 void moveVector3D(IVector3D v)
          Moves the object by an offset defined by a 3D vector.
 void multiplyMs(double factor)
          Multiplies all the M values by a factor.
 void multiplyZs(double factor)
          Multiplies all the Z values by a factor.
 void offsetMs(double offset)
          Offsets all the M values by an offset value.
 void offsetZs(double offset)
          Offsets all the Z values by an offset value.
 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.
 IGeometry projectToPlane(IPoint planarOrigin, IVector3D planarPositiveX, IVector3D planarNorm)
          Generates a polygon footprint for the object in an arbitrary plane.
 void putRingType(IRing queryRing, int ringType)
          Defines the type of the input Ring.
 void queryBeginningRings(int ringTypesDesired, int numBeginningRingsRequested, IRing[] beginningRings)
          Populates an array with references to all beginning rings of the specified types.
 void queryCentroid(IPoint center)
          Copies the centroid of this area to the specified point.
 void queryCentroid3D(IPoint center)
          Copies the centroid of this 3D surface area to the specified point.
 void queryClipped(IEnvelope clipperEnvelope, IGeometry clippedGeometry)
          Redefines clippedGeometry to be the intersection of this geometry and the clipping envelope.
 void queryClippedDense(IEnvelope clipperEnvelope, double denseDistance, IGeometry clippedGeometry)
          Redefines clippedGeometry to be the intersection of this geometry and the clipping envelope; densifies lines in the output contributed by the clipping envelope.
 void queryEnvelope(IEnvelope outEnvelope)
          Copies this geometry's envelope properties into the specified envelope.
 void queryFollowingRings(IRing beginningRing, int numFollowingRingsRequested, IRing[] followingRings)
          Populates an array with references to following rings that are in the ring group that starts with the specified beginning ring.
 void queryGeometries(int index, int count, IGeometry[] geometries)
          Populates the array with references to a sub-sequence of geometries.
 void queryLabelPoint(IPoint labelPoint)
          Copies to the input point a point guaranteed to be inside this area.
 void queryLabelPoint3D(IPoint labelPoint)
          Copies to the input point a point guaranteed to be on this 3D surface area.
 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 queryPatchNormal(int patch, int index, IVector3D pNormal)
          Copies the Normal for patch at specified vertex index into the input vector.
 void queryPoint(int index, IPoint point)
          Queries for a point in the PointCollection at given index.
 void queryPoints(int index, int count, IPoint points)
          Copies some points to an existing array of points.
 void queryWKSEnvelope(_WKSEnvelope[] e)
          Defines the specified wksenvelope to be the current extent of this geometry in the x-y plane.
 void queryWKSPointZs(int index, int count, _WKSPointZ[] pointStructures)
          Copies vertices/points coordinates to the array of point structures.
 void readExternal(java.io.ObjectInput in)
           
 boolean relation(IGeometry other, java.lang.String relationDescription)
          Indicates if the defined relationship exists.
 void release()
          Release a MultiPatch.
 void removeGeometries(int index, int count)
          Removes references to some geometries from this collection.
 void removePoints(int index, int count)
          Removes vertices from a Path, Ring, Polyline, or Polygon, or references to points from a Multipoint, TriangleFan, or TriangleStrip.
 void replacePointCollection(int index, int goingAway, IPointCollection newPoints)
          Replaces vertices/points within a PointCollection.
 void replacePoints(int index, int comingIn, int goingAway, IPoint newPoints)
          Replaces vertices/points within a PointCollection.
 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 rotateVector3D(IVector3D axis, double rotationAngle)
          Rotates the object about axis defined by the specified vector through an angle measured in radians.
 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 scale3D(IPoint origin, double sx, double sy, double sz)
          Scales the object about the specified origin point.
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setChanged(boolean isChanged)
          Indicates if a geometry has been changed (edited, projected, etc).
 void setEmpty()
          Removes all points from this geometry.
 void setGeometries(int count, IGeometry newGeometries)
          Replaces all geometries in the collection with the specified number of references to those in the input array.
 void setGeometryCollection(IGeometryCollection newParts)
          Replaces all geometries in the collection with references to geometries from the input collection.
 void setIsKnownSimple(boolean rhs1)
          Indicates whether this geometry is known (or assumed) to be topologically correct.
 void setMAware(boolean mAware)
          Indicates whether or not the geometry is aware of and capable of handling Ms.
 void setPointCollection(IPointCollection newPoints)
          Replaces all vertices of this Path, Ring, Polyline, or Polygon with copies of the points in the input collection; or all points of this Multipoint, TriangleFan, or TriangleStrip with references to points from the input collection.
 void setPointIDAware(boolean idAware)
          Indicates whether or not the geometry is aware of and capable of handling PointIDs.
 void setPoints(int count, IPoint newPoints)
          Replaces all existing vertices of this Path, Ring, Polyline, or Polygon with copies of the input points; or all existing points of this Multipoint, TriangleFan, or TriangleStrip with references to the input points (for C++ and VB users only).
 void setSpatialReferenceByRef(ISpatialReference spatialRef)
          The spatial reference associated with this geometry.
 void setWKSPointZs(int count, _WKSPointZ pointStructures)
          Replaces all vertices/points of this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch with new ones.
 void setZAware(boolean zAware)
          Indicates whether or not the geometry is aware of and capable of handling Zs.
 void simplify()
          Makes this geometry topologically correct.
 void snap()
          Snaps ms to the precision of the spatial reference associated with the geometry.
 void snapToSpatialReference()
          Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system.
 IGeometry symmetricDifference(IGeometry other)
          Constructs the geometry that contains points from either but not both input geometries.
 boolean touches(IGeometry other)
          Indicates if the boundaries of the geometries intersect.
 void transform(int direction, ITransformation transformation)
          Applies an arbitrary transformation.
 void transform3D(int direction, ITransformation3D transformation)
          Applies an arbitrary 3D transformation.
 IGeometry union(IGeometry other)
          Constructs the geometry that is the set-theoretic union of the input geometries.
 void updatePoint(int i, IPoint p)
          Changes the ith vertex or point to be a copy of the input point.
 boolean within(IGeometry other)
          Indicates if this geometry is contained (is within) another geometry.
 boolean withinEx(IGeometry pOther, int relation)
          Indicates if this geometry contains the other geometry, optionally using Celementini's definition.
 void writeExternal(java.io.ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

public static final long serialVersionUID
See Also:
Constant Field Values
Constructor Detail

MultiPatch

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

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

MultiPatch

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

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

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

getClsid

public static java.lang.String getClsid()
getClsid.


equals

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

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class java.lang.Object

getJintegraDispatch

public com.esri.arcgis.interop.Dispatch getJintegraDispatch()
Deprecated. Internal use only.

Specified by:
getJintegraDispatch in interface com.esri.arcgis.interop.RemoteObjRef

release

public void release()
Release a MultiPatch.

Specified by:
release in interface com.esri.arcgis.interop.RemoteObjRef

getGeometryType

public int getGeometryType()
                    throws java.io.IOException,
                           AutomationException
The type of this geometry.

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

getDimension

public int getDimension()
                 throws java.io.IOException,
                        AutomationException
The topological dimension of this geometry.

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

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws java.io.IOException,
                                             AutomationException
The spatial reference associated with this geometry.

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

setSpatialReferenceByRef

public void setSpatialReferenceByRef(ISpatialReference spatialRef)
                              throws java.io.IOException,
                                     AutomationException
The spatial reference associated with this geometry.

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

isEmpty

public boolean isEmpty()
                throws java.io.IOException,
                       AutomationException
Indicates whether this geometry contains any points.

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

setEmpty

public void setEmpty()
              throws java.io.IOException,
                     AutomationException
Removes all points from this geometry.

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

queryEnvelope

public void queryEnvelope(IEnvelope outEnvelope)
                   throws java.io.IOException,
                          AutomationException
Copies this geometry's envelope properties into the specified envelope.

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

getEnvelope

public IEnvelope getEnvelope()
                      throws java.io.IOException,
                             AutomationException
Creates a copy of this geometry's envelope and returns it.

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

project

public void project(ISpatialReference newReferenceSystem)
             throws java.io.IOException,
                    AutomationException
Projects this geometry into a new spatial reference.

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

snapToSpatialReference

public void snapToSpatialReference()
                            throws java.io.IOException,
                                   AutomationException
Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system.

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

geoNormalize

public void geoNormalize()
                  throws java.io.IOException,
                         AutomationException
Shifts longitudes, if need be, into a continuous range of 360 degrees.

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

geoNormalizeFromLongitude

public void geoNormalizeFromLongitude(double longitude)
                               throws java.io.IOException,
                                      AutomationException
Normalizes longitudes into a continuous range containing the longitude. This method is obsolete.

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

projectEx

public void projectEx(ISpatialReference newReferenceSystem,
                      int direction,
                      IGeoTransformation geoTransformation,
                      boolean bAngularDensify,
                      double maxSegmentLength,
                      double maxDeviation)
               throws java.io.IOException,
                      AutomationException
Projects a geometry, optionally applies a GeoTransformation, and optionally densifies the geometry.

Specified by:
projectEx in interface IGeometry2
Parameters:
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)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryWKSEnvelope

public void queryWKSEnvelope(_WKSEnvelope[] e)
                      throws java.io.IOException,
                             AutomationException
Defines the specified wksenvelope to be the current extent of this geometry in the x-y plane.

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

isChanged

public boolean isChanged()
                  throws java.io.IOException,
                         AutomationException
Indicates if a geometry has been changed (edited, projected, etc).

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

setChanged

public void setChanged(boolean isChanged)
                throws java.io.IOException,
                       AutomationException
Indicates if a geometry has been changed (edited, projected, etc).

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

project5

public void project5(ISpatialReference newSpatialReference,
                     int projectionHint)
              throws java.io.IOException,
                     AutomationException
Same as Project, but with additional parameter projectionHint.

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

projectEx5

public void projectEx5(ISpatialReference newReferenceSystem,
                       int direction,
                       ITransformation transformation,
                       boolean bAngularDensify,
                       double maxSegmentLength,
                       double maxDeviation,
                       int projectionHint)
                throws java.io.IOException,
                       AutomationException
Same as ProjectEx, but with additional parameter projectionHint.

Specified by:
projectEx5 in interface IGeometry5
Parameters:
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)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCentroidEx

public IPoint getCentroidEx()
                     throws java.io.IOException,
                            AutomationException
The center of gravity (centroid).

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

getGeometryCount

public int getGeometryCount()
                     throws java.io.IOException,
                            AutomationException
The number of geometries in this collection.

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

getGeometry

public IGeometry getGeometry(int index)
                      throws java.io.IOException,
                             AutomationException
A reference to the ith geometry.

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

addGeometry

public void addGeometry(IGeometry inGeometry,
                        java.lang.Object before,
                        java.lang.Object after)
                 throws java.io.IOException,
                        AutomationException
Adds a reference to the input geometry either at the end, or before, or after the specified index.

Specified by:
addGeometry in interface IGeometryCollection
Parameters:
inGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
before - A Variant (in, optional, pass null if not required)
after - A Variant (in, optional, pass null if not required)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryGeometries

public void queryGeometries(int index,
                            int count,
                            IGeometry[] geometries)
                     throws java.io.IOException,
                            AutomationException
Populates the array with references to a sub-sequence of geometries. This method is intended for internal use only.

Specified by:
queryGeometries in interface IGeometryCollection
Parameters:
index - The index (in)
count - The count (in)
geometries - A reference to a com.esri.arcgis.geometry.IGeometry (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addGeometries

public void addGeometries(int count,
                          IGeometry newGeometries)
                   throws java.io.IOException,
                          AutomationException
Adds references to the specified geometries. This method is intended for internal use only.

Specified by:
addGeometries in interface IGeometryCollection
Parameters:
count - The count (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addGeometryCollection

public void addGeometryCollection(IGeometryCollection newGeometries)
                           throws java.io.IOException,
                                  AutomationException
Adds references to geometries in the input collection.

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

insertGeometries

public void insertGeometries(int index,
                             int count,
                             IGeometry newGeometries)
                      throws java.io.IOException,
                             AutomationException
Inserts at the specified index references to some number of geometries in the input array. This method is intended for internal use only.

Specified by:
insertGeometries in interface IGeometryCollection
Parameters:
index - The index (in)
count - The count (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertGeometryCollection

public void insertGeometryCollection(int index,
                                     IGeometryCollection newGeometries)
                              throws java.io.IOException,
                                     AutomationException
Inserts at the specified index references to all if the geometries in the input collection.

Specified by:
insertGeometryCollection in interface IGeometryCollection
Parameters:
index - The index (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometryCollection (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeometries

public void setGeometries(int count,
                          IGeometry newGeometries)
                   throws java.io.IOException,
                          AutomationException
Replaces all geometries in the collection with the specified number of references to those in the input array. This method is intended for internal use only.

Specified by:
setGeometries in interface IGeometryCollection
Parameters:
count - The count (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeometryCollection

public void setGeometryCollection(IGeometryCollection newParts)
                           throws java.io.IOException,
                                  AutomationException
Replaces all geometries in the collection with references to geometries from the input collection.

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

removeGeometries

public void removeGeometries(int index,
                             int count)
                      throws java.io.IOException,
                             AutomationException
Removes references to some geometries from this collection.

Specified by:
removeGeometries in interface IGeometryCollection
Parameters:
index - The index (in)
count - The count (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

geometriesChanged

public void geometriesChanged()
                       throws java.io.IOException,
                              AutomationException
Tells this geometry collection that some of its geometries have been altered. Use this method on polylines, polygons and multipatches after directly editing one of its parts.

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

getPointCount

public int getPointCount()
                  throws java.io.IOException,
                         AutomationException
The number of points in the collection.

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

getPoint

public IPoint getPoint(int i)
                throws java.io.IOException,
                       AutomationException
A copy of the ith vertex of a Path, Ring, Polyline, or Polygon; or a reference to the ith point of a Multipoint, TriangleFan, or TriangleStrip.

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

addPoint

public void addPoint(IPoint inPoint,
                     java.lang.Object before,
                     java.lang.Object after)
              throws java.io.IOException,
                     AutomationException
Adds a vertex to a Path, Ring, Polyline, or Polygon; or adds a reference to the input point to a Multipoint, TriangleFan, or TriangleStrip.

Specified by:
addPoint in interface IPointCollection
Parameters:
inPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
before - A Variant (in, optional, pass null if not required)
after - A Variant (in, optional, pass null if not required)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

updatePoint

public void updatePoint(int i,
                        IPoint p)
                 throws java.io.IOException,
                        AutomationException
Changes the ith vertex or point to be a copy of the input point.

Specified by:
updatePoint in interface IPointCollection
Parameters:
i - The i (in)
p - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPoints

public void queryPoints(int index,
                        int count,
                        IPoint points)
                 throws java.io.IOException,
                        AutomationException
Copies some points to an existing array of points. This method is intended for internal use only.

Specified by:
queryPoints in interface IPointCollection
Parameters:
index - The index (in)
count - The count (in)
points - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertPoints

public void insertPoints(int index,
                         int count,
                         IPoint newPoints)
                  throws java.io.IOException,
                         AutomationException
Inserts copies of the input points as vertices into a Path, Ring, Polyline, or Polygon; or references to the input points into a Multipoint, TriangleFan, or TriangleStrip. This method is intended for internal use only.

Specified by:
insertPoints in interface IPointCollection
Parameters:
index - The index (in)
count - The count (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertPointCollection

public void insertPointCollection(int index,
                                  IPointCollection newPoints)
                           throws java.io.IOException,
                                  AutomationException
Inserts copies of points, from the input point collection, as vertices into this Path, Ring, Polyline, or Polygon; or references to points in the input point collection into this Multipoint, TriangleFan, or TriangleStrip.

Specified by:
insertPointCollection in interface IPointCollection
Parameters:
index - The index (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPointCollection (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addPoints

public void addPoints(int count,
                      IPoint newPoints)
               throws java.io.IOException,
                      AutomationException
Adds copies of the input points as vertices to this Path, Ring, Polyline, or Polygon; or references to the input points to this Multipoint, TriangleFan, or TriangleStrip. This method is intended for internal use only.

Specified by:
addPoints in interface IPointCollection
Parameters:
count - The count (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addPointCollection

public void addPointCollection(IPointCollection newPoints)
                        throws java.io.IOException,
                               AutomationException
Adds copies of points in the input point collection to this Path, Ring, Polyline, or Polygon; or adds references to the points in the collection to this Multipoint, TriangleFan, or TriangleStrip.

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

setPoints

public void setPoints(int count,
                      IPoint newPoints)
               throws java.io.IOException,
                      AutomationException
Replaces all existing vertices of this Path, Ring, Polyline, or Polygon with copies of the input points; or all existing points of this Multipoint, TriangleFan, or TriangleStrip with references to the input points (for C++ and VB users only).

Specified by:
setPoints in interface IPointCollection
Parameters:
count - The count (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPointCollection

public void setPointCollection(IPointCollection newPoints)
                        throws java.io.IOException,
                               AutomationException
Replaces all vertices of this Path, Ring, Polyline, or Polygon with copies of the points in the input collection; or all points of this Multipoint, TriangleFan, or TriangleStrip with references to points from the input collection.

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

removePoints

public void removePoints(int index,
                         int count)
                  throws java.io.IOException,
                         AutomationException
Removes vertices from a Path, Ring, Polyline, or Polygon, or references to points from a Multipoint, TriangleFan, or TriangleStrip.

Specified by:
removePoints in interface IPointCollection
Parameters:
index - The index (in)
count - The count (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEnumVertices

public IEnumVertex getEnumVertices()
                            throws java.io.IOException,
                                   AutomationException
A new enumerator for this point collection.

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

replacePoints

public void replacePoints(int index,
                          int comingIn,
                          int goingAway,
                          IPoint newPoints)
                   throws java.io.IOException,
                          AutomationException
Replaces vertices/points within a PointCollection.

Specified by:
replacePoints in interface IPointCollection
Parameters:
index - The index (in)
comingIn - The comingIn (in)
goingAway - The goingAway (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

replacePointCollection

public void replacePointCollection(int index,
                                   int goingAway,
                                   IPointCollection newPoints)
                            throws java.io.IOException,
                                   AutomationException
Replaces vertices/points within a PointCollection.

Specified by:
replacePointCollection in interface IPointCollection
Parameters:
index - The index (in)
goingAway - The goingAway (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPointCollection (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPoint

public void queryPoint(int index,
                       IPoint point)
                throws java.io.IOException,
                       AutomationException
Queries for a point in the PointCollection at given index.

Specified by:
queryPoint in interface IPointCollection
Parameters:
index - The index (in)
point - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addWKSPointZs

public void addWKSPointZs(int count,
                          _WKSPointZ pointStructures)
                   throws java.io.IOException,
                          AutomationException
Adds vertices/points to this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch.

Specified by:
addWKSPointZs in interface IPointCollection4
Parameters:
count - The count (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setWKSPointZs

public void setWKSPointZs(int count,
                          _WKSPointZ pointStructures)
                   throws java.io.IOException,
                          AutomationException
Replaces all vertices/points of this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch with new ones.

Specified by:
setWKSPointZs in interface IPointCollection4
Parameters:
count - The count (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryWKSPointZs

public void queryWKSPointZs(int index,
                            int count,
                            _WKSPointZ[] pointStructures)
                     throws java.io.IOException,
                            AutomationException
Copies vertices/points coordinates to the array of point structures.

Specified by:
queryWKSPointZs in interface IPointCollection4
Parameters:
index - The index (in)
count - The count (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertWKSPointZs

public void insertWKSPointZs(int index,
                             int count,
                             _WKSPointZ newPoints)
                      throws java.io.IOException,
                             AutomationException
Inserts new vertices/points into this Path, Ring, Polyline, Polygon, Multipoint, TriangleFan, Triangles, TriangleStrip, or MultiPatch.

Specified by:
insertWKSPointZs in interface IPointCollection4
Parameters:
index - The index (in)
count - The count (in)
newPoints - A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getIndexedEnumVertices

public IEnumVertex getIndexedEnumVertices(IGeometry queryGeometry)
                                   throws java.io.IOException,
                                          AutomationException
An indexed vertex enumerator for this point collection.

Specified by:
getIndexedEnumVertices in interface IPointCollection3
Parameters:
queryGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Returns:
A reference to a com.esri.arcgis.geometry.IEnumVertex
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPoints

public void getPoints(int index,
                      int count,
                      IPoint[] points)
               throws java.io.IOException,
                      AutomationException
Populates an array with references to points in the Multipoint. The QueryPoints method on IPointCollection makes copies of the points. This method is intended for internal use only.

Specified by:
getPoints in interface IPointCollection2
Parameters:
index - The index (in)
count - The count (in)
points - A reference to a com.esri.arcgis.geometry.IPoint (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findBeginningRing

public IRing findBeginningRing(IRing followingRing)
                        throws java.io.IOException,
                               AutomationException
Returns the beginning ring of the ring group containing the specified following ring.

Specified by:
findBeginningRing in interface IMultiPatch
Parameters:
followingRing - A reference to a com.esri.arcgis.geometry.IRing (in)
Returns:
A reference to a com.esri.arcgis.geometry.IRing
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBeginningRingCount

public int getBeginningRingCount(int ringTypesDesired)
                          throws java.io.IOException,
                                 AutomationException
The number of beginning rings, counting only those of the desired types.

Specified by:
getBeginningRingCount in interface IMultiPatch
Parameters:
ringTypesDesired - The ringTypesDesired (in)
Returns:
The beginningRingCount
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryBeginningRings

public void queryBeginningRings(int ringTypesDesired,
                                int numBeginningRingsRequested,
                                IRing[] beginningRings)
                         throws java.io.IOException,
                                AutomationException
Populates an array with references to all beginning rings of the specified types. This method is intended for internal use only.

Specified by:
queryBeginningRings in interface IMultiPatch
Parameters:
ringTypesDesired - The ringTypesDesired (in)
numBeginningRingsRequested - The numBeginningRingsRequested (in)
beginningRings - A reference to a com.esri.arcgis.geometry.IRing (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFollowingRingCount

public int getFollowingRingCount(IRing beginningRing)
                          throws java.io.IOException,
                                 AutomationException
The number of following rings in the ring group that starts with the specified beginning ring.

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

queryFollowingRings

public void queryFollowingRings(IRing beginningRing,
                                int numFollowingRingsRequested,
                                IRing[] followingRings)
                         throws java.io.IOException,
                                AutomationException
Populates an array with references to following rings that are in the ring group that starts with the specified beginning ring. This method is intended for internal use only.

Specified by:
queryFollowingRings in interface IMultiPatch
Parameters:
beginningRing - A reference to a com.esri.arcgis.geometry.IRing (in)
numFollowingRingsRequested - The numFollowingRingsRequested (in)
followingRings - A reference to a com.esri.arcgis.geometry.IRing (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRingType

public int getRingType(IRing queryRing,
                       boolean[] isBeginningRing)
                throws java.io.IOException,
                       AutomationException
Gets the esriMultiPatchRingType of the input Ring and returns a boolean indicating if that ring is a beginning ring.

Specified by:
getRingType in interface IMultiPatch
Parameters:
queryRing - A reference to a com.esri.arcgis.geometry.IRing (in)
isBeginningRing - The isBeginningRing (in/out: use single element array)
Returns:
A com.esri.arcgis.geometry.esriMultiPatchRingType constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

putRingType

public void putRingType(IRing queryRing,
                        int ringType)
                 throws java.io.IOException,
                        AutomationException
Defines the type of the input Ring.

Specified by:
putRingType in interface IMultiPatch
Parameters:
queryRing - A reference to a com.esri.arcgis.geometry.IRing (in)
ringType - A com.esri.arcgis.geometry.esriMultiPatchRingType constant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getXYFootprint

public IGeometry getXYFootprint()
                         throws java.io.IOException,
                                AutomationException
A reference to a cached copy of the multipatch's footprint in the x-y plane. If the footprint is modified, InvalXYFootprint should be called.

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

invalXYFootprint

public void invalXYFootprint()
                      throws java.io.IOException,
                             AutomationException
Notifies the multipatch that its cached footprint has been modified by an outside agent. The footprint will be recalculated the next time it is requested.

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

constructExtrudeFromTo

public void constructExtrudeFromTo(double fromZ,
                                   double toZ,
                                   IGeometry baseGeom)
                            throws java.io.IOException,
                                   AutomationException
Construct a MultiPatch by extruding a (non-point) geometry between two specified Z values.

Specified by:
constructExtrudeFromTo in interface IConstructMultiPatch
Parameters:
fromZ - The fromZ (in)
toZ - The toZ (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructExtrudeAbsolute

public void constructExtrudeAbsolute(double toZ,
                                     IGeometry baseGeom)
                              throws java.io.IOException,
                                     AutomationException
Construct a MultiPatch by extruding a (non-point) geometry using its initial Zs for one base, and a uniform input Z for the other.

Specified by:
constructExtrudeAbsolute in interface IConstructMultiPatch
Parameters:
toZ - The toZ (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructExtrudeBetween

public void constructExtrudeBetween(IFunctionalSurface fromSurface,
                                    IFunctionalSurface toSurface,
                                    IGeometry baseGeom)
                             throws java.io.IOException,
                                    AutomationException
Construct a MultiPatch by extruding a (non-point) geometry between two functional surfaces.

Specified by:
constructExtrudeBetween in interface IConstructMultiPatch
Parameters:
fromSurface - A reference to a com.esri.arcgis.geometry.IFunctionalSurface (in)
toSurface - A reference to a com.esri.arcgis.geometry.IFunctionalSurface (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructExtrudeAlongLine

public void constructExtrudeAlongLine(ILine extrusionLine,
                                      IGeometry baseGeom)
                               throws java.io.IOException,
                                      AutomationException
Construct a MultiPatch by extruding a (non-point) geometry along a specified line, using the Zs on the two ends of the line to set Zs on the top and bottom.

Specified by:
constructExtrudeAlongLine in interface IConstructMultiPatch
Parameters:
extrusionLine - A reference to a com.esri.arcgis.geometry.ILine (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructExtrudeRelative

public void constructExtrudeRelative(IVector3D extrusionVector,
                                     IGeometry baseGeom)
                              throws java.io.IOException,
                                     AutomationException
Construct a MultiPatch by extruding a (non-point) geometry along a specified vector, using Zs already set on the input geometry.

Specified by:
constructExtrudeRelative in interface IConstructMultiPatch
Parameters:
extrusionVector - A reference to a com.esri.arcgis.geometry.IVector3D (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructExtrude

public void constructExtrude(double offsetZ,
                             IGeometry baseGeom)
                      throws java.io.IOException,
                             AutomationException
Construct a MultiPatch by using an input (non-point) geometry as one base and offsetting the Zs already set on the input geometry to get the second base.

Specified by:
constructExtrude in interface IConstructMultiPatch
Parameters:
offsetZ - The offsetZ (in)
baseGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSimple

public boolean isSimple()
                 throws java.io.IOException,
                        AutomationException
Indicates whether this geometry is known (or assumed) to be topologically correct, after explicitly determining this if the geometry is not already known (or assumed) to be simple.

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

isKnownSimple

public boolean isKnownSimple()
                      throws java.io.IOException,
                             AutomationException
Indicates whether this geometry is known (or assumed) to be topologically correct.

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

simplify

public void simplify()
              throws java.io.IOException,
                     AutomationException
Makes this geometry topologically correct.

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

buffer

public IGeometry buffer(double distance)
                 throws java.io.IOException,
                        AutomationException
Constructs a polygon that is the locus of points at a distance less than or equal to a specified distance from this geometry.

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

convexHull

public IGeometry convexHull()
                     throws java.io.IOException,
                            AutomationException
Constructs the convex hull of this geometry.

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

intersect

public IGeometry intersect(IGeometry other,
                           int resultDimension)
                    throws java.io.IOException,
                           AutomationException
Constructs the geometry that is the set-theoretic intersection of the input geometries. Use different resultDimension values to generate results of different dimensions.

Specified by:
intersect in interface ITopologicalOperator
Parameters:
other - A reference to a com.esri.arcgis.geometry.IGeometry (in)
resultDimension - A com.esri.arcgis.geometry.esriGeometryDimension constant (in)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

union

public IGeometry union(IGeometry other)
                throws java.io.IOException,
                       AutomationException
Constructs the geometry that is the set-theoretic union of the input geometries.

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

constructUnion

public void constructUnion(IEnumGeometry geometries)
                    throws java.io.IOException,
                           AutomationException
Defines this geometry to be the union of the inputs. More efficient for unioning multiple geometries than calling Union repeatedly.

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

difference

public IGeometry difference(IGeometry other)
                     throws java.io.IOException,
                            AutomationException
Constructs the geometry containing points from this geometry but not the other geometry.

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

symmetricDifference

public IGeometry symmetricDifference(IGeometry other)
                              throws java.io.IOException,
                                     AutomationException
Constructs the geometry that contains points from either but not both input geometries.

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

clip

public void clip(IEnvelope clipperEnvelope)
          throws java.io.IOException,
                 AutomationException
Constructs the intersection of this geometry and the specified envelope.

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

queryClipped

public void queryClipped(IEnvelope clipperEnvelope,
                         IGeometry clippedGeometry)
                  throws java.io.IOException,
                         AutomationException
Redefines clippedGeometry to be the intersection of this geometry and the clipping envelope.

Specified by:
queryClipped in interface ITopologicalOperator
Parameters:
clipperEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
clippedGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryClippedDense

public void queryClippedDense(IEnvelope clipperEnvelope,
                              double denseDistance,
                              IGeometry clippedGeometry)
                       throws java.io.IOException,
                              AutomationException
Redefines clippedGeometry to be the intersection of this geometry and the clipping envelope; densifies lines in the output contributed by the clipping envelope.

Specified by:
queryClippedDense in interface ITopologicalOperator
Parameters:
clipperEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
denseDistance - The denseDistance (in)
clippedGeometry - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

cut

public void cut(IPolyline cutter,
                IGeometry[] leftGeom,
                IGeometry[] rightGeom)
         throws java.io.IOException,
                AutomationException
Splits this geometry into a part left of the cutting polyline, and a part right of it.

Specified by:
cut in interface ITopologicalOperator
Parameters:
cutter - A reference to a com.esri.arcgis.geometry.IPolyline (in)
leftGeom - A reference to a com.esri.arcgis.geometry.IGeometry (out: use single element array)
rightGeom - A reference to a com.esri.arcgis.geometry.IGeometry (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBoundary

public IGeometry getBoundary()
                      throws java.io.IOException,
                             AutomationException
The boundary of this geometry. A polygon's boundary is a polyline. A polyline's boundary is a multipoint. A point or multipoint's boundary is an empty point or multipoint.

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

clipDense

public void clipDense(IEnvelope clipperEnvelope,
                      double denseDistance)
               throws java.io.IOException,
                      AutomationException
Constructs the intersection of this geometry and the specified envelope; densifies lines in output contributed by the clipping envelope.

Specified by:
clipDense in interface ITopologicalOperator
Parameters:
clipperEnvelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
denseDistance - The denseDistance (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructBuffers

public IEnumGeometry constructBuffers(int numBuffers,
                                      double[] distances)
                               throws java.io.IOException,
                                      AutomationException
Constructs a set of buffers at various distances. More efficient than calling Buffer repeatedly on the same geometry. This method is intended for internal use only.

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

clipToDomain

public void clipToDomain()
                  throws java.io.IOException,
                         AutomationException
Clips the geometry to the domain of the spatial reference. Useful for ensuring that buffers can be fit within the spatial domain of the feature class to which they are being added.

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

setIsKnownSimple

public void setIsKnownSimple(boolean rhs1)
                      throws java.io.IOException,
                             AutomationException
Indicates whether this geometry is known (or assumed) to be topologically correct.

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

intersectMultidimension

public IGeometry intersectMultidimension(IGeometry other)
                                  throws java.io.IOException,
                                         AutomationException
Constructs the set-theoretic intersection of the inputs. The results are returned in a geometry bag with one element per result dimension.

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

isSimpleEx

public boolean isSimpleEx(int[] reason)
                   throws java.io.IOException,
                          AutomationException
Determines why a geometry is not simple. Currently only implemented for polygons.

Specified by:
isSimpleEx in interface ITopologicalOperator3
Parameters:
reason - A com.esri.arcgis.geometry.esriNonSimpleReasonEnum constant (out: use single element array)
Returns:
The isSimple
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

geoNormalizeEx

public void geoNormalizeEx(ISpatialReference sR,
                           double denseDistance)
                    throws java.io.IOException,
                           AutomationException
Shifts longitudes, if need be, into a continuous range of 360 degrees.

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

hitTest

public boolean hitTest(IPoint queryPoint,
                       double searchRadius,
                       int geometryPart,
                       IPoint hitPoint,
                       double[] hitDistance,
                       int[] hitPartIndex,
                       int[] hitSegmentIndex,
                       boolean[] bRightSide)
                throws java.io.IOException,
                       AutomationException
Locates a part of a geometry closest to a query point. Any located part must be within searchRadius units from the query point.

Specified by:
hitTest in interface IHitTest
Parameters:
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)
Returns:
The bHit
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hitTest3D

public boolean hitTest3D(IPoint queryPoint,
                         double searchRadius,
                         int geometryPart,
                         IPoint hitPoint,
                         double[] hitDistance,
                         int[] hitPartIndex,
                         int[] hitSegmentIndex)
                  throws java.io.IOException,
                         AutomationException
Locates a part of a geometry closest to a query point. Any located part must be within searchRadius units from the query point.

Specified by:
hitTest3D in interface IHitTest3D
Parameters:
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)
Returns:
The bHit
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hitTestCone

public boolean hitTestCone(IRay pQueryRay,
                           double minAngle,
                           int geometryPart,
                           IPoint pHitPoint,
                           double[] pHitDistance,
                           int[] pHitPartIndex,
                           int[] pHitSegmentIndex)
                    throws java.io.IOException,
                           AutomationException
Locates a part of a geometry closest to a query ray.

Specified by:
hitTestCone in interface IHitTest3D
Parameters:
pQueryRay - A reference to a com.esri.arcgis.geometry.IRay (in)
minAngle - The minAngle (in)
geometryPart - A com.esri.arcgis.geometry.esriGeometryHitPartType constant (in)
pHitPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
pHitDistance - The pHitDistance (in/out: use single element array)
pHitPartIndex - The pHitPartIndex (in/out: use single element array)
pHitSegmentIndex - The pHitSegmentIndex (in/out: use single element array)
Returns:
The pbHit
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getArea

public double getArea()
               throws java.io.IOException,
                      AutomationException
The area.

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

getCentroid

public IPoint getCentroid()
                   throws java.io.IOException,
                          AutomationException
The center of gravity (centroid).

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

getLabelPoint

public IPoint getLabelPoint()
                     throws java.io.IOException,
                            AutomationException
A point guaranteed to be inside this area.

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

queryCentroid

public void queryCentroid(IPoint center)
                   throws java.io.IOException,
                          AutomationException
Copies the centroid of this area to the specified point.

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

queryLabelPoint

public void queryLabelPoint(IPoint labelPoint)
                     throws java.io.IOException,
                            AutomationException
Copies to the input point a point guaranteed to be inside this area.

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

getArea3D

public double getArea3D()
                 throws java.io.IOException,
                        AutomationException
The 3D surface area.

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

getCentroid3D

public IPoint getCentroid3D()
                     throws java.io.IOException,
                            AutomationException
A 3D point whose XY coordinates are set to the center of gravity of the shape’s 2D footprint and Z set to the shape’s ZMax.

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

getLabelPoint3D

public IPoint getLabelPoint3D()
                       throws java.io.IOException,
                              AutomationException
A point guaranteed to be on this 3D surface area.

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

queryCentroid3D

public void queryCentroid3D(IPoint center)
                     throws java.io.IOException,
                            AutomationException
Copies the centroid of this 3D surface area to the specified point.

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

queryLabelPoint3D

public void queryLabelPoint3D(IPoint labelPoint)
                       throws java.io.IOException,
                              AutomationException
Copies to the input point a point guaranteed to be on this 3D surface area.

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

isZAware

public boolean isZAware()
                 throws java.io.IOException,
                        AutomationException
Indicates whether or not the geometry is aware of and capable of handling Zs.

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

setZAware

public void setZAware(boolean zAware)
               throws java.io.IOException,
                      AutomationException
Indicates whether or not the geometry is aware of and capable of handling Zs.

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

isZSimple

public boolean isZSimple()
                  throws java.io.IOException,
                         AutomationException
Indicates if all the Zs are valid numbers.

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

dropZs

public void dropZs()
            throws java.io.IOException,
                   AutomationException
Sets all the Z values to a non-valid number (NaN).

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

getZMin

public double getZMin()
               throws java.io.IOException,
                      AutomationException
The minimum Z value.

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

getZMax

public double getZMax()
               throws java.io.IOException,
                      AutomationException
The maximum Z value.

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

multiplyZs

public void multiplyZs(double factor)
                throws java.io.IOException,
                       AutomationException
Multiplies all the Z values by a factor.

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

offsetZs

public void offsetZs(double offset)
              throws java.io.IOException,
                     AutomationException
Offsets all the Z values by an offset value.

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

isMAware

public boolean isMAware()
                 throws java.io.IOException,
                        AutomationException
Indicates whether or not the geometry is aware of and capable of handling Ms.

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

setMAware

public void setMAware(boolean mAware)
               throws java.io.IOException,
                      AutomationException
Indicates whether or not the geometry is aware of and capable of handling Ms.

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

isMSimple

public boolean isMSimple()
                  throws java.io.IOException,
                         AutomationException
Indicates if all the Ms are valid numbers.

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

dropMs

public void dropMs()
            throws java.io.IOException,
                   AutomationException
Sets all the M values to a non-valid number (NaN).

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

getMMin

public double getMMin()
               throws java.io.IOException,
                      AutomationException
The minimum M value.

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

getMMax

public double getMMax()
               throws java.io.IOException,
                      AutomationException
The maximum M value.

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

multiplyMs

public void multiplyMs(double factor)
                throws java.io.IOException,
                       AutomationException
Multiplies all the M values by a factor.

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

offsetMs

public void offsetMs(double offset)
              throws java.io.IOException,
                     AutomationException
Offsets all the M values by an offset value.

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

isPointIDAware

public boolean isPointIDAware()
                       throws java.io.IOException,
                              AutomationException
Indicates whether or not the geometry is aware of and capable of handling PointIDs.

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

setPointIDAware

public void setPointIDAware(boolean idAware)
                     throws java.io.IOException,
                            AutomationException
Indicates whether or not the geometry is aware of and capable of handling PointIDs.

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

isPointIDSimple

public boolean isPointIDSimple()
                        throws java.io.IOException,
                               AutomationException
Indicates if all PointID values for this geometry are well-defined. Only works if geometry is aware of PointIDs.

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

dropPointIDs

public void dropPointIDs()
                  throws java.io.IOException,
                         AutomationException
Unsets all PointID values without changing awareness. Only works if geometry is aware of PointIDs.

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

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws java.io.IOException,
                                       AutomationException
interfaceSupportsErrorInfo

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

getClassID

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

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

isDirty

public void isDirty()
             throws java.io.IOException,
                    AutomationException
isDirty

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

load

public void load(IStream pstm)
          throws java.io.IOException,
                 AutomationException
load

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

save

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

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

getSizeMax

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

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

esri_clone

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

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

assign

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

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

isEqual

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

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

isIdentical

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

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

move

public void move(double dx,
                 double dy)
          throws java.io.IOException,
                 AutomationException
Moves dx units horizontally and dy units vertically.

Specified by:
move in interface ITransform2D
Parameters:
dx - The dx (in)
dy - The dy (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

moveVector

public void moveVector(ILine v)
                throws java.io.IOException,
                       AutomationException
Moves a direction and distance v. v can be in a different spatial reference than the geometry being moved.

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

scale

public void scale(IPoint origin,
                  double sx,
                  double sy)
           throws java.io.IOException,
                  AutomationException
Scales about the specified origin using seperate horizonal and vertical scales. The origin point can be in a different spatial reference than the geometry being scaled.

Specified by:
scale in interface ITransform2D
Parameters:
origin - A reference to a com.esri.arcgis.geometry.IPoint (in)
sx - The sx (in)
sy - The sy (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotate

public void rotate(IPoint origin,
                   double rotationAngle)
            throws java.io.IOException,
                   AutomationException
Rotates about the specified origin point. The angle is in radians. The origin can be in a different spatial reference than the geometry being rotated.

Specified by:
rotate in interface ITransform2D
Parameters:
origin - A reference to a com.esri.arcgis.geometry.IPoint (in)
rotationAngle - The rotationAngle (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transform

public void transform(int direction,
                      ITransformation transformation)
               throws java.io.IOException,
                      AutomationException
Applies an arbitrary transformation. In particular, the transformation parameter can be either an affine transformation or a geographic transformation (datum shift).

Specified by:
transform in interface ITransform2D
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
transformation - A reference to a com.esri.arcgis.geometry.ITransformation (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

move3D

public void move3D(double dx,
                   double dy,
                   double dz)
            throws java.io.IOException,
                   AutomationException
Moves the object by dx, dy and dz along the x, y, and z axes respectively.

Specified by:
move3D in interface ITransform3D
Parameters:
dx - The dx (in)
dy - The dy (in)
dz - The dz (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

moveVector3D

public void moveVector3D(IVector3D v)
                  throws java.io.IOException,
                         AutomationException
Moves the object by an offset defined by a 3D vector.

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

scale3D

public void scale3D(IPoint origin,
                    double sx,
                    double sy,
                    double sz)
             throws java.io.IOException,
                    AutomationException
Scales the object about the specified origin point. sx, sy, and sz are the scaling factors for the x, y, and z dimensions repectively.

Specified by:
scale3D in interface ITransform3D
Parameters:
origin - A reference to a com.esri.arcgis.geometry.IPoint (in)
sx - The sx (in)
sy - The sy (in)
sz - The sz (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotateVector3D

public void rotateVector3D(IVector3D axis,
                           double rotationAngle)
                    throws java.io.IOException,
                           AutomationException
Rotates the object about axis defined by the specified vector through an angle measured in radians.

Specified by:
rotateVector3D in interface ITransform3D
Parameters:
axis - A reference to a com.esri.arcgis.geometry.IVector3D (in)
rotationAngle - The rotationAngle (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

transform3D

public void transform3D(int direction,
                        ITransformation3D transformation)
                 throws java.io.IOException,
                        AutomationException
Applies an arbitrary 3D transformation.

Specified by:
transform3D in interface ITransform3D
Parameters:
direction - A com.esri.arcgis.geometry.esriTransformDirection constant (in)
transformation - A reference to a com.esri.arcgis.geometry.ITransformation3D (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

projectToPlane

public IGeometry projectToPlane(IPoint planarOrigin,
                                IVector3D planarPositiveX,
                                IVector3D planarNorm)
                         throws java.io.IOException,
                                AutomationException
Generates a polygon footprint for the object in an arbitrary plane. The footprint may have multiple parts.

Specified by:
projectToPlane in interface ITransform3D
Parameters:
planarOrigin - A reference to a com.esri.arcgis.geometry.IPoint (in)
planarPositiveX - A reference to a com.esri.arcgis.geometry.IVector3D (in)
planarNorm - A reference to a com.esri.arcgis.geometry.IVector3D (in)
Returns:
A reference to a com.esri.arcgis.geometry.IGeometry
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

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

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

deserialize

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

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

snap

public void snap()
          throws java.io.IOException,
                 AutomationException
Snaps ms to the precision of the spatial reference associated with the geometry. M snapping does not happen automatically as part of calling IGeometry::SnapToSpatialReference.

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

getVertexCount

public int getVertexCount()
                   throws java.io.IOException,
                          AutomationException
Get Vertex Count.

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

getPatchCount

public int getPatchCount()
                  throws java.io.IOException,
                         AutomationException
Get Patch Count.

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

getMCount

public int getMCount()
              throws java.io.IOException,
                     AutomationException
Get M Count.

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

getNormalCount

public int getNormalCount()
                   throws java.io.IOException,
                          AutomationException
Get Normal Count.

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

getTextureVertexCount

public int getTextureVertexCount()
                          throws java.io.IOException,
                                 AutomationException
Get Texture Vertex Count.

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

getIdCount

public int getIdCount()
               throws java.io.IOException,
                      AutomationException
Get Id Count.

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

getMaterialCount

public int getMaterialCount()
                     throws java.io.IOException,
                            AutomationException
Get Material Count.

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

getPatchVertexCount

public int getPatchVertexCount(int patch)
                        throws java.io.IOException,
                               AutomationException
Get count of vertices in patch.

Specified by:
getPatchVertexCount in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
Returns:
The pCount
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchType

public int getPatchType(int patch)
                 throws java.io.IOException,
                        AutomationException
Get patch type.

Specified by:
getPatchType in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
Returns:
A com.esri.arcgis.geometry.esriPatchType constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchPriority

public int getPatchPriority(int patch)
                     throws java.io.IOException,
                            AutomationException
Get patch priority.

Specified by:
getPatchPriority in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
Returns:
The pPriority
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchMaterialIndex

public int getPatchMaterialIndex(int patch)
                          throws java.io.IOException,
                                 AutomationException
Get patch material index.

Specified by:
getPatchMaterialIndex in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
Returns:
The pIndex
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchVertex

public _WKSPointZ getPatchVertex(int patch,
                                 int index)
                          throws java.io.IOException,
                                 AutomationException
Get Point for patch at vertex index.

Specified by:
getPatchVertex in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
index - The index (in)
Returns:
A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchM

public double getPatchM(int patch,
                        int index)
                 throws java.io.IOException,
                        AutomationException
Get M for patch at vertex index.

Specified by:
getPatchM in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
index - The index (in)
Returns:
The pValue
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPatchNormal

public void queryPatchNormal(int patch,
                             int index,
                             IVector3D pNormal)
                      throws java.io.IOException,
                             AutomationException
Copies the Normal for patch at specified vertex index into the input vector.

Specified by:
queryPatchNormal in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
index - The index (in)
pNormal - A reference to a com.esri.arcgis.geometry.IVector3D (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchTextureVertexCount

public int getPatchTextureVertexCount(int patch)
                               throws java.io.IOException,
                                      AutomationException
Get texture vertex count for a patch.

Specified by:
getPatchTextureVertexCount in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
Returns:
The pCount
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPatchTextureVertex

public _WKSPoint getPatchTextureVertex(int patch,
                                       int index)
                                throws java.io.IOException,
                                       AutomationException
Get Texture WKSPoint for a patch at vertex index.

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

getPatchVertexID

public int getPatchVertexID(int patch,
                            int index)
                     throws java.io.IOException,
                            AutomationException
Get vertex Id for a patch at vertex index.

Specified by:
getPatchVertexID in interface IGeneralMultiPatchInfo
Parameters:
patch - The patch (in)
index - The index (in)
Returns:
The pId
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialColor

public int getMaterialColor(int index)
                     throws java.io.IOException,
                            AutomationException
Get material color.

Specified by:
getMaterialColor in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pColor (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialTransparencyPercent

public int getMaterialTransparencyPercent(int index)
                                   throws java.io.IOException,
                                          AutomationException
Get transparency %, in range of 0 - 100

Specified by:
getMaterialTransparencyPercent in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pTransparency
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMaterialCullBackface

public boolean isMaterialCullBackface(int index)
                               throws java.io.IOException,
                                      AutomationException
Get backface culling enabled,

Specified by:
isMaterialCullBackface in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pCull
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isMaterialTextured

public boolean isMaterialTextured(int index)
                           throws java.io.IOException,
                                  AutomationException
Get Is Material textured.

Specified by:
isMaterialTextured in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pIsTextured
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialTextureRowCount

public int getMaterialTextureRowCount(int index)
                               throws java.io.IOException,
                                      AutomationException
Get Material texture row count.

Specified by:
getMaterialTextureRowCount in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pCount
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialTextureColumnCount

public int getMaterialTextureColumnCount(int index)
                                  throws java.io.IOException,
                                         AutomationException
Get Material texture column count.

Specified by:
getMaterialTextureColumnCount in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pCount
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialTextureBytesPerPixel

public int getMaterialTextureBytesPerPixel(int index)
                                    throws java.io.IOException,
                                           AutomationException
Get Material texture bytes per pixel.

Specified by:
getMaterialTextureBytesPerPixel in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
Returns:
The pBytesPerPixel
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaterialTexturePixelColor

public int getMaterialTexturePixelColor(int index,
                                        int row,
                                        int column)
                                 throws java.io.IOException,
                                        AutomationException
Get Material texture pixel color.

Specified by:
getMaterialTexturePixelColor in interface IGeneralMultiPatchInfo
Parameters:
index - The index (in)
row - The row (in)
column - The column (in)
Returns:
The pColor (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryNearestPoint

public void queryNearestPoint(IPoint p,
                              int extension,
                              IPoint nearest)
                       throws java.io.IOException,
                              AutomationException
Copies into 'nearest' a point on this geometry nearest to the input point.

Specified by:
queryNearestPoint in interface IProximityOperator
Parameters:
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)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

returnNearestPoint

public IPoint returnNearestPoint(IPoint p,
                                 int extension)
                          throws java.io.IOException,
                                 AutomationException
Creates and returns a point on this geometry nearest to the input point.

Specified by:
returnNearestPoint in interface IProximityOperator
Parameters:
p - A reference to a com.esri.arcgis.geometry.IPoint (in)
extension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)
Returns:
A reference to a com.esri.arcgis.geometry.IPoint
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

returnDistance

public double returnDistance(IGeometry other)
                      throws java.io.IOException,
                             AutomationException
Returns the minimum distance between two geometries.

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

esri_equals

public boolean esri_equals(IGeometry other)
                    throws java.io.IOException,
                           AutomationException
Indicates if the two geometries are of the same type and define the same set of points in the plane.

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

touches

public boolean touches(IGeometry other)
                throws java.io.IOException,
                       AutomationException
Indicates if the boundaries of the geometries intersect.

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

contains

public boolean contains(IGeometry other)
                 throws java.io.IOException,
                        AutomationException
Indicates if this geometry contains the other geometry.

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

within

public boolean within(IGeometry other)
               throws java.io.IOException,
                      AutomationException
Indicates if this geometry is contained (is within) another geometry.

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

disjoint

public boolean disjoint(IGeometry other)
                 throws java.io.IOException,
                        AutomationException
Indicates if the two geometries share no points in common. Negate this result to compute the Intersect relation.

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

crosses

public boolean crosses(IGeometry other)
                throws java.io.IOException,
                       AutomationException
Indicates if the two geometries intersect in a geometry of lesser dimension.

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

overlaps

public boolean overlaps(IGeometry other)
                 throws java.io.IOException,
                        AutomationException
Indicates if the intersection of the two geometries has the same dimension as one of the input geometries.

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

relation

public boolean relation(IGeometry other,
                        java.lang.String relationDescription)
                 throws java.io.IOException,
                        AutomationException
Indicates if the defined relationship exists.

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

containsEx

public boolean containsEx(IGeometry pOther,
                          int relation)
                   throws java.io.IOException,
                          AutomationException
Indicates if this geometry contains the other geometry, optionally using Celementini's definition.

Specified by:
containsEx in interface IRelationalOperator2
Parameters:
pOther - A reference to a com.esri.arcgis.geometry.IGeometry (in)
relation - A com.esri.arcgis.geometry.esriSpatialRelationExEnum constant (in)
Returns:
The pbContains
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

withinEx

public boolean withinEx(IGeometry pOther,
                        int relation)
                 throws java.io.IOException,
                        AutomationException
Indicates if this geometry contains the other geometry, optionally using Celementini's definition.

Specified by:
withinEx in interface IRelationalOperator2
Parameters:
pOther - A reference to a com.esri.arcgis.geometry.IGeometry (in)
relation - A com.esri.arcgis.geometry.esriSpatialRelationExEnum constant (in)
Returns:
The pbWithin
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isNear

public boolean isNear(IGeometry pOther,
                      double distance)
               throws java.io.IOException,
                      AutomationException
Indicates if this geometry is within distance from the other geometry.

Specified by:
isNear in interface IRelationalOperator2
Parameters:
pOther - A reference to a com.esri.arcgis.geometry.IGeometry (in)
distance - The distance (in)
Returns:
The pbNear
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryNearestPoint3D

public void queryNearestPoint3D(IPoint pInP,
                                int extension,
                                IPoint pNearest)
                         throws java.io.IOException,
                                AutomationException
Copies into 'nearest' a point on this geometry nearest to the input point.

Specified by:
queryNearestPoint3D in interface IProximityOperator3D
Parameters:
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)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

returnNearestPoint3D

public IPoint returnNearestPoint3D(IPoint pInP,
                                   int extension)
                            throws java.io.IOException,
                                   AutomationException
Creates and returns a point on this geometry nearest to the input point.

Specified by:
returnNearestPoint3D in interface IProximityOperator3D
Parameters:
pInP - A reference to a com.esri.arcgis.geometry.IPoint (in)
extension - A com.esri.arcgis.geometry.esriSegmentExtension constant (in)
Returns:
A reference to a com.esri.arcgis.geometry.IPoint
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

returnDistance3D

public double returnDistance3D(IGeometry pOther)
                        throws java.io.IOException,
                               AutomationException
Returns the minimal distance between two geometries.

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

disjoint3D

public boolean disjoint3D(IGeometry pOther)
                   throws java.io.IOException,
                          AutomationException
Indicates if the two geometries share no points in common. Negate this result to compute the Intersect relation.

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

isNear3D

public boolean isNear3D(IGeometry pOther,
                        double distance)
                 throws java.io.IOException,
                        AutomationException
Indicates if this geometry is within distance from the other geometry; both geometries must have Zs.

Specified by:
isNear3D in interface IRelationalOperator3D2
Parameters:
pOther - A reference to a com.esri.arcgis.geometry.IGeometry (in)
distance - The distance (in)
Returns:
The pbNear
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVolume

public double getVolume()
                 throws java.io.IOException,
                        AutomationException
The enclosed 3D volume.

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

writeExternal

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

readExternal

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