ArcGIS Pro 2.8 API Reference Guide
Expand(Double,Double,Boolean) Method
Example 

ArcGIS.Core.Geometry Namespace > EnvelopeBuilder Class > Expand Method : Expand(Double,Double,Boolean) Method
Change in x
Change in y
If asRatio = true, the expansion is multiplicative. If false, the expansion is additive.
Moves the X and Y coordinates of the envelope sides toward or away from each other to scale the size of the envelope.
Syntax
public void Expand( 
   double dx,
   double dy,
   bool asRatio
)
Public Overloads Sub Expand( _
   ByVal dx As Double, _
   ByVal dy As Double, _
   ByVal asRatio As Boolean _
) 

Parameters

dx
Change in x
dy
Change in y
asRatio
If asRatio = true, the expansion is multiplicative. If false, the expansion is additive.
Exceptions
ExceptionDescription
This method or property must be called within the lambda passed to QueuedTask.Run.
Remarks
If asRatio = false, the expansion is additive. If you want to increase the envelope width by 5 units, then dx = 5. On the other hand, if you want to decrease the envelope width by 5 units, then dx = -5. Similarly, set dy to increase or decrease the envelope height.

If asRatio = true, the expansion is multiplicative. If you want to increase the envelope width by 10%, then dx = 1.1. On the other hand, if you want to decrease the width by 10%, then dx = 0.9. Similarly, set dy to increase or decrease the envelope height. No negative numbers are allowed when asRatio is set to true.

The Envelope remains centered at the same position.

Example
// Use a builder convenience method or use a builder constructor.

// Builder convenience methods don't need to run on the MCT.
Envelope envelope = EnvelopeBuilder.CreateEnvelope(100.0, 100.0, 500.0, 500.0);

// shrink the envelope by 50%
Envelope result = envelope.Expand(0.5, 0.5, true);

// Builder constructors need to run on the MCT.
ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
{
  using (EnvelopeBuilder eBuilder = new EnvelopeBuilder(100.0, 100.0, 500.0, 500.0))
  {
    // shrink by 50%
    eBuilder.Expand(0.5, 0.5, true);

    result = eBuilder.ToGeometry();
  }
});

// builderEx constructors don't need to run on the MCT.
EnvelopeBuilderEx builderEx = new EnvelopeBuilderEx(100.0, 100.0, 500.0, 500.0);
builderEx.Expand(0.5, 0.5, true);
envelope = builderEx.ToGeometry() as Envelope;
Requirements

Target Platforms: Windows 10, Windows 8.1

See Also

Reference

EnvelopeBuilder Class
EnvelopeBuilder Members
Overload List