The following code example determines the spatial extent of the union of two geometries:
[C#]
privatevoid Union(IGeometry geometry1, IGeometry geometry2)
{
if(geometry1 == null || geometry2 == null)
{
//Geometries are null.return;
}
IEnvelope envelope1 = geometry1.Envelope;
IEnvelope envelope2 = geometry2.Envelope;
//Envelope1 is modified to become the union of the extents of geometry1 and geometry2.
envelope1.Union(envelope2);
String report = "LowerLeft X = " + envelope1.LowerLeft.X + "\n" +
"LowerLeft Y = " + envelope1.LowerLeft.Y + "\n\n" +
"LowerRight X = " + envelope1.LowerRight.X + "\n" +
"LowerRight Y = " + envelope1.LowerRight.Y + "\n\n" +
"UpperLeft X = " + envelope1.UpperLeft.X + "\n" +
"UpperLeft Y = " + envelope1.UpperLeft.Y + "\n\n" +
"UpperRight X = " + envelope1.UpperRight.X + "\n" +
"UpperRight Y = " + envelope1.UpperRight.Y;
System.Windows.Forms.MessageBox.Show(report);
}
[VB.NET]
PrivateSub Union(ByVal geometry1 As IGeometry, ByVal geometry2 As IGeometry)
If geometry1 IsNothingOr geometry2 IsNothingThen'Geometries are null.ExitSubEndIfDim envelope1 As IEnvelope = geometry1.Envelope
Dim envelope2 As IEnvelope = geometry2.Envelope
'Envelope1 is modified to become the union of the extents of geometry1 and geometry2.
envelope1.Union(envelope2)
Dim report AsString = "LowerLeft X = " & envelope1.LowerLeft.X & ControlChars.NewLine & _
"LowerLeft Y = " & envelope1.LowerLeft.Y & ControlChars.NewLine & _
"LowerRight X = " & envelope1.LowerRight.X & ControlChars.NewLine & _
"LowerRight Y = " & envelope1.LowerRight.Y & ControlChars.NewLine & _
"UpperLeft X = " & envelope1.UpperLeft.X & ControlChars.NewLine & _
"UpperLeft Y = " & envelope1.UpperLeft.Y & ControlChars.NewLine & _
"UpperRight X = " & envelope1.UpperRight.X & ControlChars.NewLine & _
"UpperRight Y = " & envelope1.UpperRight.Y
Windows.Forms.MessageBox.Show(report)
EndSub