Parameters
- geometry
- The geometry to scale.
- origin
- The origin around which the geometry will be scaled.
- sx
- The scale factor along the X-axis.
- sy
- The scale factor along the Y-axis.
Return Value
The scaled geometry.
Exception | Description |
---|---|
System.ArgumentNullException | Either geometry or origin or both are null or empty. |
System.NotImplementedException | The method is not implemented for GeometryBag. |
System.InvalidOperationException | Incompatible spatial references between the input geometries. |
List<MapPoint> pts = new List<MapPoint>(); pts.Add(MapPointBuilderEx.CreateMapPoint(1.0, 1.0, 3.0)); pts.Add(MapPointBuilderEx.CreateMapPoint(1.0, 3.0, 3.0)); pts.Add(MapPointBuilderEx.CreateMapPoint(3, 3, 3.0)); pts.Add(MapPointBuilderEx.CreateMapPoint(3.0, 1.0, 3.0)); MapPoint midPt = MapPointBuilderEx.CreateMapPoint(1.5, 1.5); // polyline Polyline polyline = PolylineBuilderEx.CreatePolyline(pts); // polyline.Length = 6 // polyline.Length3D = 0 Geometry g = GeometryEngine.Instance.Scale(polyline, midPt, 0.5, 0.5); Polyline resultPolyline = g as Polyline; // resultPolyline.length = 3 // resultPolyline.Points[0] = 1.25, 1.25, 3 // resultPolyline.Points[1] = 1.25, 2.25, 3 // resultPolyline.Points[2] = 2.25, 2.25, 3 // resultPolyline.Points[3] = 2.25, 1.25, 3 // 3D point - scale in 3d MapPoint midPtZ = MapPointBuilderEx.CreateMapPoint(1.5, 1.5, 1); g = GeometryEngine.Instance.Scale(polyline, midPtZ, 0.5, 0.5, 0.25); resultPolyline = g as Polyline; // resultPolyline.Points[0] = 1.25, 1.25, 1.5 // resultPolyline.Points[1] = 1.25, 2.25, 1.5 // resultPolyline.Points[2] = 2.25, 2.25, 1.5 // resultPolyline.Points[3] = 2.25, 1.25, 1.5
Target Platforms: Windows 11, Windows 10