public void AddGeometries( IEnumerable<Geometry> geometries )
Public Sub AddGeometries( _ ByVal geometries As IEnumerable(Of Geometry) _ )
Parameters
- geometries
- The list of geometries to add.
public void AddGeometries( IEnumerable<Geometry> geometries )
Public Sub AddGeometries( _ ByVal geometries As IEnumerable(Of Geometry) _ )
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method or property must be called within the lambda passed to QueuedTask.Run. |
System.ArgumentNullException | geometries is null. |
System.ArgumentNullException | A geometry in geometries is null. You cannot add a null geometry into GeometryBag. |
System.ArgumentException | A geometry in geometries is GeometryBag. You cannot add a GeometryBag to another GeometryBag. |
MapPoint point = MapPointBuilder.CreateMapPoint(10, 20); List<Coordinate2D> coords = new List<Coordinate2D>() { new Coordinate2D(50, 60), new Coordinate2D(-120, -70), new Coordinate2D(40, 60) }; Multipoint multipoint = MultipointBuilder.CreateMultipoint(coords, SpatialReferences.WebMercator); Polyline polyline = PolylineBuilder.CreatePolyline(coords); string json = "{\"rings\":[[[0,0],[0,1],[1,1],[1,0],[0,0]],[[3,0],[3,1],[4,1],[4,0],[3,0]]]}"; Polygon polygon = PolygonBuilder.FromJson(json); var geometries = new List<Geometry>() { point, multipoint, polyline, polygon }; // Builder constructors need to run on the MCT. ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() => { using (var builder = new GeometryBagBuilder(SpatialReferences.WGS84)) { // builder.CountGeometries = 0 builder.AddGeometries(geometries); // builder.CountGeometries = 4 GeometryBag geomBag = builder.ToGeometry(); // bag.PartCount = 4 (point, multipoint, polyline, polygon) geometries = new List<Geometry>() { point, polyline }; builder.InsertGeometries(1, geometries); // builder.CountGeometries = 6 geomBag = builder.ToGeometry(); // bag.PartCount = 6 (point, point, polyline, multipoint, polyline, polygon) } });
Target Platforms: Windows 10, Windows 8.1, Windows 7