com.esri.arcgis.geometry
Interface IGeometryBridge

All Superinterfaces:
Serializable
All Known Subinterfaces:
IGeometryBridge2
All Known Implementing Classes:
GeometryEnvironment

public interface IGeometryBridge
extends Serializable

Provides access to a set of generic methods that can be used in all languages supported.

Superseded By

IGeometryBridge2

Description

The IGeometryBridge methods can be used with any supported development languages: Java, C#, VB.Net, VB 6.0, C++, etc... The methods on the regular interfaces (IGeometryCollection, ISegmentCollection, IPointCollection, etc) are using C style arrays, which are not supported by some languages; the IGeometryBridge interface is there to solve that problem allowing to pass safe arrays instead.

Product Availability

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


Method Summary
 void addGeometries(IGeometryCollection pGeometryCollection, IGeometry[] newGeometries)
          Adds references to the specified geometries.
 void addPoints(IPointCollection4 pPointCollection, 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, Triangles, TriangleFan, or TriangleStrip.
 void addSegments(ISegmentCollection pSegmentCollection, ISegment[] newSegments)
          Adds references to segments.
 void addWKSPointZs(IPointCollection4 pPointCollection, _WKSPointZ[] pointStructures)
          Adds vertices/points to this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch.
 IEnumGeometry constructBuffers(ITopologicalOperator2 pTopologicalOperator, double[] distances)
          Constructs a set of buffers at various distances.
 void densify(ISegment pSegment, double maxDeviation, int[] pcOutSegments, ILine[][] segments)
          Densify segment into the specified number of smaller segments.
 void getPoints(IPointCollection4 pPointCollection, int index, IPoint[][] points)
          Populates an array with references to points in the Multipoint.
 void insertGeometries(IGeometryCollection pGeometryCollection, int index, IGeometry[] newGeometries)
          Inserts at the specified index references to some number of geometries in the input array.
 void insertPoints(IPointCollection4 pPointCollection, int index, 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, Triangles, TriangleFan, or TriangleStrip.
 void insertSegments(ISegmentCollection pSegmentCollection, int index, ISegment[] newSegments)
          Inserts references to the input segments.
 void insertWKSPointZs(IPointCollection4 pPointCollection, int index, _WKSPointZ[] newPoints)
          Inserts new vertices/points into this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch.
 void queryBeginningRings(IMultiPatch pMultiPatch, int ringTypesDesired, IRing[][] beginningRings)
          Populates an array with references to all beginning rings of the specified types.
 void queryFollowingRings(IMultiPatch pMultiPatch, IRing beginningRing, 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(IGeometryCollection pGeometryCollection, int index, IGeometry[][] geometries)
          Populates the array with references to a sub-sequence of geometries.
 void queryPoints(IPointCollection4 pPointCollection, int index, IPoint[][] points)
          Copies some points to an existing array of points.
 void querySegments(ISegmentCollection pSegmentCollection, int index, ISegment[][] segments)
          Returns references to some of the input segments.
 void queryWKSPointZs(IPointCollection4 pPointCollection, int index, _WKSPointZ[][] pointStructures)
          Copies vertices/points coordinates to the array of point structures.
 void replacePoints(IPointCollection4 pPointCollection, int index, int goingAway, IPoint[] newPoints)
          Replaces vertices/points within a PointCollection.
 void replaceSegments(ISegmentCollection pSegmentCollection, int index, int goingAway, ISegment[] newSegments)
          Removes and inserts from segments.
 void setGeometries(IGeometryCollection pGeometryCollection, IGeometry[] newGeometries)
          Replaces all geometries in the collection with the specified number of references to those in the input array.
 void setPoints(IPointCollection4 pPointCollection, 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, Triangles, TriangleFan, or TriangleStrip with references to the input points.
 void setSegments(ISegmentCollection pSegmentCollection, ISegment[] newSegments)
          Replaces all segments with references to the input segments.
 void setWKSPointZs(IPointCollection4 pPointCollection, _WKSPointZ[] pointStructures)
          Replaces all vertices/points of this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch with new ones.
 

Method Detail

queryGeometries

void queryGeometries(IGeometryCollection pGeometryCollection,
                     int index,
                     IGeometry[][] geometries)
                     throws IOException,
                            AutomationException
Populates the array with references to a sub-sequence of geometries.

Description

All development languages compatible version of IGeometryCollection::QueryGeometries.

Product Availability

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

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

addGeometries

void addGeometries(IGeometryCollection pGeometryCollection,
                   IGeometry[] newGeometries)
                   throws IOException,
                          AutomationException
Adds references to the specified geometries.

Description

All development languages compatible version of IGeometryCollection::AddGeometries .

Product Availability

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

Parameters:
pGeometryCollection - A reference to a com.esri.arcgis.geometry.IGeometryCollection (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertGeometries

void insertGeometries(IGeometryCollection pGeometryCollection,
                      int index,
                      IGeometry[] newGeometries)
                      throws IOException,
                             AutomationException
Inserts at the specified index references to some number of geometries in the input array.

Description

All development languages compatible version of IGeometryCollection::InsertGeometries.

Product Availability

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

Parameters:
pGeometryCollection - A reference to a com.esri.arcgis.geometry.IGeometryCollection (in)
index - The index (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeometries

void setGeometries(IGeometryCollection pGeometryCollection,
                   IGeometry[] newGeometries)
                   throws IOException,
                          AutomationException
Replaces all geometries in the collection with the specified number of references to those in the input array.

Description

All development languages compatible version of IGeometryCollection::SetGeometries .

Product Availability

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

Parameters:
pGeometryCollection - A reference to a com.esri.arcgis.geometry.IGeometryCollection (in)
newGeometries - A reference to a com.esri.arcgis.geometry.IGeometry array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryPoints

void queryPoints(IPointCollection4 pPointCollection,
                 int index,
                 IPoint[][] points)
                 throws IOException,
                        AutomationException
Copies some points to an existing array of points.

Description

All development languages compatible version of IPointCollection::QueryPoints.

When calling this method no count parameter is needed. The length of the array parameter will be used in place of the explicit number given in the IPointCollection::QueryPoints call. This also requires that the array parameter given to IGeometryBridge::QueryPoints can not be longer than the length of the PointCollection minus the index parameter.

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
points - A reference to a com.esri.arcgis.geometry.IPoint array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertPoints

void insertPoints(IPointCollection4 pPointCollection,
                  int index,
                  IPoint[] newPoints)
                  throws 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, Triangles, TriangleFan, or TriangleStrip.

Description

All development languages compatible version of IPointCollection::InsertPoints .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addPoints

void addPoints(IPointCollection4 pPointCollection,
               IPoint[] newPoints)
               throws 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, Triangles, TriangleFan, or TriangleStrip.

Description

All development languages compatible version of IPointCollection::AddPoints .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPoints

void setPoints(IPointCollection4 pPointCollection,
               IPoint[] newPoints)
               throws 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, Triangles, TriangleFan, or TriangleStrip with references to the input points.

Description

All development languages compatible version of IPointCollection::SetPoints .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPoints

void getPoints(IPointCollection4 pPointCollection,
               int index,
               IPoint[][] points)
               throws IOException,
                      AutomationException
Populates an array with references to points in the Multipoint. The QueryPoints method on IPointCollection makes copies of the points.

Description

All development languages compatible version of IPointCollection::GetPoints .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
points - A reference to a com.esri.arcgis.geometry.IPoint array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

replacePoints

void replacePoints(IPointCollection4 pPointCollection,
                   int index,
                   int goingAway,
                   IPoint[] newPoints)
                   throws IOException,
                          AutomationException
Replaces vertices/points within a PointCollection.

Description

All development languages compatible version of IPointCollection::ReplacePoints .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
goingAway - The goingAway (in)
newPoints - A reference to a com.esri.arcgis.geometry.IPoint array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addWKSPointZs

void addWKSPointZs(IPointCollection4 pPointCollection,
                   _WKSPointZ[] pointStructures)
                   throws IOException,
                          AutomationException
Adds vertices/points to this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch.

Description

All development languages compatible version of IPointCollection4::AddWKSPointsZs .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (An array of com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setWKSPointZs

void setWKSPointZs(IPointCollection4 pPointCollection,
                   _WKSPointZ[] pointStructures)
                   throws IOException,
                          AutomationException
Replaces all vertices/points of this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch with new ones.

Description

All development languages compatible version of IPointCollection4::SetWKSPointsZs .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (An array of com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryWKSPointZs

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

Description

All development languages compatible version of IPointCollection4::QueryWKSPointsZs .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
pointStructures - A Structure: com.esri.arcgis.system._WKSPointZ (An array of com.esri.arcgis.system._WKSPointZ COM typedef) (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertWKSPointZs

void insertWKSPointZs(IPointCollection4 pPointCollection,
                      int index,
                      _WKSPointZ[] newPoints)
                      throws IOException,
                             AutomationException
Inserts new vertices/points into this Path, Ring, Polyline, Polygon, Multipoint, Triangles, TriangleFan, TriangleStrip, or MultiPatch.

Description

All development languages compatible version of IPointCollection4::InsertWKSPointsZs .

Product Availability

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

Parameters:
pPointCollection - A reference to a com.esri.arcgis.geometry.IPointCollection4 (in)
index - The index (in)
newPoints - A Structure: com.esri.arcgis.system._WKSPointZ (An array of com.esri.arcgis.system._WKSPointZ COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

querySegments

void querySegments(ISegmentCollection pSegmentCollection,
                   int index,
                   ISegment[][] segments)
                   throws IOException,
                          AutomationException
Returns references to some of the input segments.

Description

All development languages compatible version of ISegmentCollection::QuerySegments .

Product Availability

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

Parameters:
pSegmentCollection - A reference to a com.esri.arcgis.geometry.ISegmentCollection (in)
index - The index (in)
segments - A reference to a com.esri.arcgis.geometry.ISegment array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addSegments

void addSegments(ISegmentCollection pSegmentCollection,
                 ISegment[] newSegments)
                 throws IOException,
                        AutomationException
Adds references to segments.

Description

All development languages compatible version of ISegmentCollection::AddSegments .

Product Availability

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

Parameters:
pSegmentCollection - A reference to a com.esri.arcgis.geometry.ISegmentCollection (in)
newSegments - A reference to a com.esri.arcgis.geometry.ISegment array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertSegments

void insertSegments(ISegmentCollection pSegmentCollection,
                    int index,
                    ISegment[] newSegments)
                    throws IOException,
                           AutomationException
Inserts references to the input segments.

Description

All development languages compatible version of ISegmentCollection::InsertSegments .

Product Availability

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

Parameters:
pSegmentCollection - A reference to a com.esri.arcgis.geometry.ISegmentCollection (in)
index - The index (in)
newSegments - A reference to a com.esri.arcgis.geometry.ISegment array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

replaceSegments

void replaceSegments(ISegmentCollection pSegmentCollection,
                     int index,
                     int goingAway,
                     ISegment[] newSegments)
                     throws IOException,
                            AutomationException
Removes and inserts from segments.

Description

All development languages compatible version of ISegmentCollection::ReplaceSegments .

Product Availability

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

Parameters:
pSegmentCollection - A reference to a com.esri.arcgis.geometry.ISegmentCollection (in)
index - The index (in)
goingAway - The goingAway (in)
newSegments - A reference to a com.esri.arcgis.geometry.ISegment array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSegments

void setSegments(ISegmentCollection pSegmentCollection,
                 ISegment[] newSegments)
                 throws IOException,
                        AutomationException
Replaces all segments with references to the input segments.

Description

All development languages compatible version of ISegmentCollection::SetSegments .

Product Availability

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

Parameters:
pSegmentCollection - A reference to a com.esri.arcgis.geometry.ISegmentCollection (in)
newSegments - A reference to a com.esri.arcgis.geometry.ISegment array (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

densify

void densify(ISegment pSegment,
             double maxDeviation,
             int[] pcOutSegments,
             ILine[][] segments)
             throws IOException,
                    AutomationException
Densify segment into the specified number of smaller segments.

Description

All development languages compatible version of ISegment::Densify .

Product Availability

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

Parameters:
pSegment - A reference to a com.esri.arcgis.geometry.ISegment (in)
maxDeviation - The maxDeviation (in)
pcOutSegments - The pcOutSegments (in/out: use single element array)
segments - A reference to a com.esri.arcgis.geometry.ILine array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

constructBuffers

IEnumGeometry constructBuffers(ITopologicalOperator2 pTopologicalOperator,
                               double[] distances)
                               throws IOException,
                                      AutomationException
Constructs a set of buffers at various distances. More efficient than calling Buffer repeatedly on the same geometry.

Description

All development languages compatible version of ITopologicalOperator2::ConstructBuffers .

Product Availability

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

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

queryBeginningRings

void queryBeginningRings(IMultiPatch pMultiPatch,
                         int ringTypesDesired,
                         IRing[][] beginningRings)
                         throws IOException,
                                AutomationException
Populates an array with references to all beginning rings of the specified types.

Description

All development languages compatible version of IMultipatch::QueryBeginningRings.

Product Availability

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

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

queryFollowingRings

void queryFollowingRings(IMultiPatch pMultiPatch,
                         IRing beginningRing,
                         IRing[][] followingRings)
                         throws IOException,
                                AutomationException
Populates an array with references to following rings that are in the ring group that starts with the specified beginning ring.

Description

All development languages compatible version of IMultipatch::QueryFollowingRings .

Product Availability

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

Parameters:
pMultiPatch - A reference to a com.esri.arcgis.geometry.IMultiPatch (in)
beginningRing - A reference to a com.esri.arcgis.geometry.IRing (in)
followingRings - A reference to a com.esri.arcgis.geometry.IRing array (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.