IGeometry4 Interface

Provides access to methods that indicate if a geometry has been changed (edited, projected, etc).


Name Description
Read/write property Changed Indicates if a geometry has been changed (edited, projected, etc).
Read-only property Dimension The topological dimension of this geometry.
Read-only property Envelope Creates a copy of this geometry's envelope and returns it.
Read-only property GeometryType The type of this geometry.
Method GeoNormalize Shifts longitudes, if need be, into a continuous range of 360 degrees.
Method GeoNormalizeFromLongitude Normalizes longitudes into a continuous range containing the longitude. This method is obsolete.
Read-only property IsEmpty Indicates whether this geometry contains any points.
Method Project Projects this geometry into a new spatial reference.
Method ProjectEx Projects a geometry, optionally applies a GeoTransformation, and optionally densifies the geometry.
Method QueryEnvelope Copies this geometry's envelope properties into the specified envelope.
Method QueryWKSEnvelope Defines the specified wksenvelope to be the current extent of this geometry in the x-y plane.
Method SetEmpty Removes all points from this geometry.
Method SnapToSpatialReference Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system.
Read/write property SpatialReference The spatial reference associated with this geometry.

IGeometry4.Changed Property

Indicates if a geometry has been changed (edited, projected, etc).

Public Property Changed As Boolean
public bool Changed {get; set;}


The Changed method returns whether or not the geometry has been modified. If the geometry always stays in memory that method only returns 'false' immediately after its creation. However if the shape came from disk the Changed method will return 'false' until de geometry is modified in memory.

//This example demonstrates how to use the Changed method

    private void Changed_Example()


        IEnvelope envelope = new EnvelopeClass();

        envelope.PutCoords(0, 0, 20, 20);

        ISegmentCollection segmentCollection = new PolygonClass();


        IGeometry4 geometry = segmentCollection as IGeometry4;

        System.Windows.Forms.MessageBox.Show("Just after creation : " + geometry.Changed);


        System.Windows.Forms.MessageBox.Show("Just after modification : " + geometry.Changed);


Inherited Interfaces

Interfaces Description
IGeometry3 Provides rapid access to a geometry's extent in the x-y plane.
IGeometry2 Provides access to members that extend the IGeometry interface with a more sophisticated projection method.
IGeometry Provides access to members that describe properties and behavior of all geometric objects.

Classes that implement IGeometry4

Classes Description
Envelope A rectangle with sides parallel to a coordinate system defining the extent of another geometry; optionally has min and max measure, height and ID attributes.
GeometryBag An ordered collection of objects that support the IGeometry interface.
MultiPatch A collection of surface patches.
Multipoint An ordered collection of points; optionally has measure, height and ID attributes.
Point A two dimensional point, optionally with measure, height, and ID attributes.
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.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.