This document is archived and information here might be outdated.  Recommended version.


ISegmentCollection Interface (ArcObjects .NET 10.6 SDK)
ArcObjects Help for .NET developers > ArcObjects namespaces > Geometry > ESRI.ArcGIS.Geometry > Interfaces > IS > ISegmentCollection Interface (ArcObjects .NET 10.6 SDK)
ArcObjects Library Reference (Geometry)  

ISegmentCollection Interface

Provides access to members that manipulate the segments of a path, ring, polyline, or polygon.

Product Availability

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

Description

A Segment Collection is a collection of Segments that compose a segment-based geometry.  A Segment Collection can be used to access any segment within a segment-based geometry without regard to the overall geometry that the Segment Collection represents.  As a geometry, the Segment Collection is assumed to be a valid Path.  Although it is possible to access the Segment Collection of an entire Polyline or Polygon, manipulation of Polyline and Polygons is best done with a Geometry Collection.

When To Use

If you are using a development language that does not support C style arrays, use IGeometryBridge instead. The IGeometryBridge interface solves that problem allowing you to pass safe arrays instead.

Members

Name Description
Method AddSegment Adds a reference to the input segment at the end, or before or after a specified index.
Method AddSegmentCollection Adds references to the segments from the specified segment collection.
Method AddSegments Adds references to segments. This method is intended for internal use only.
Read-only property EnumCurve A new curve enumerator for this segment collection.
Read-only property EnumSegments A new enumerator for this segment collection.
Method HasNonLinearSegments Indicates if this segment collection contains segments other than lines.
Read-only property IndexedEnumSegments A new indexed segment enumerator for this segment collection.
Method InsertSegmentCollection Inserts references to the segments in the input collectoin.
Method InsertSegmentCollectionEx Inserts references to some of the segments from the input collection.
Method InsertSegments Inserts references to the input segments. This method is intended for internal use only.
Method QuerySegments Returns references to some of the input segments. This method is intended for internal use only.
Method RemoveSegments Removes references to some segments. If closeGap is TRUE, then any remaining internal gap in the path, ring, polyline or polygon is connected with a single line segment.
Method ReplaceSegmentCollection Remove and inserts some segments.
Method ReplaceSegments Removes and inserts from segments. This method is intended for internal use only.
Read-only property Segment A reference to the ith segment.
Read-only property SegmentCount The number of segments.
Method SegmentsChanged Informs the segment collection that any cached values that it may be maintaining (envelope, length, etc.) are invalid. Use this method after editing segments directly.
Method SetCircle Defines this path, ring, polyline or polygon to contain a single circular arc segment that is closed.
Method SetRectangle Defines this path, ring, polyline or polygon to have four line segments in the same positions as the sides of the input envelope.
Method SetSegmentCollection Replaces all segments with references to segments from the input collection.
Method SetSegments Replaces all segments with references to the input segments. This method is intended for internal use only.
Method SynchronizeEmptyAttributes If, at end point shared by two segments, one segment has an empty value for an attribute and the other has a non-empty value, use the non-empty value for both.

CoClasses that implement ISegmentCollection

CoClasses and Classes Description
Path A sequence of connected segments.
Polygon A collection of rings ordered by their containment relationship; optionally has measure, height and ID attributes.
Polyline An ordered collection of paths; optionally has measure, height and ID attributes.
Ring An area bounded by one, closed sequence of connected segments; optionally has measure, height and ID attributes at each vertex.

See Also

ISegment Interface | ILine Interface | IEllipticArc Interface | ICircularArc Interface | IBezierCurve Interface | ISegmentCollection Interface | IGeometryCollection Interface | IPointCollection Interface

.NET Snippets

Remove Segments From Geometry

.NET Samples

Curve conversion add-in (Code Files: CurveConversionDockWin) | Create a custom raster type from the ground up for DMCII data (Code Files: DMCIIRasterType)

.NET Related Topics

Calling the Simplify method | Cartographic representations | Creating a topology in the geodatabase | Creating custom symbols | Geodatabase | How to add point IDs to a polyline | How to build a polygon using segments and points | How to create a multipart polyline | How to create a polygon | How to create a polyline | How to modify a specific segment of a polyline | How to perform an affine transformation | How to use the IEnumSegment methods | How to use the IEnumVertex methods | How to work with IEllipticArc properties | Working with the edit sketch