Parameters
- dx
- Change in x
- dy
- Change in y
- asRatio
- If asRatio = true, the expansion is multiplicative. If false, the expansion is additive.
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method or property must be called within the lambda passed to QueuedTask.Run. |
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.
// 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;
Target Platforms: Windows 10, Windows 8.1