Parameters
- multipart
- The base geometry.
- fromZ
- The Z-value of the base.
- toZ
- The Z-value of the top.
Return Value
Returns the multipatch.
Exception | Description |
---|---|
System.ArgumentNullException | Geometry is null or empty. |
System.InvalidOperationException | The geometry is not Z-Aware. |
// build a polygon string json = "{\"hasZ\":true,\"rings\":[[[0,0,0],[0,1,0],[1,1,0],[1,0,0],[0,0,0]]],\"spatialReference\":{\"wkid\":4326}}"; Polygon polygon = PolygonBuilderEx.FromJson(json); // extrude the polygon by an offset to create a multipatch Multipatch multipatch = GeometryEngine.Instance.ConstructMultipatchExtrude(polygon, 2); // a different polygon json = "{\"hasZ\":true,\"rings\":[[[0,0,1],[0,1,2],[1,1,3],[1,0,4],[0,0,1]]],\"spatialReference\":{\"wkid\":4326}}"; polygon = PolygonBuilderEx.FromJson(json); // extrude between z values to create a multipatch multipatch = GeometryEngine.Instance.ConstructMultipatchExtrudeFromToZ(polygon, -10, 20); // extrude along the axis defined by the coordinate to create a multipatch Coordinate3D coord = new Coordinate3D(10, 18, -10); multipatch = GeometryEngine.Instance.ConstructMultipatchExtrudeAlongVector3D(polygon, coord); // build a polyline json = "{\"hasZ\":true,\"paths\":[[[400,800,1000],[800,1400,1500],[1200,800,2000],[1800,1800,2500],[2200,800,3000]]],\"spatialReference\":{\"wkid\":3857}}"; Polyline polyline = PolylineBuilderEx.FromJson(json); // extrude to a specific z value to create a multipatch multipatch = GeometryEngine.Instance.ConstructMultipatchExtrudeToZ(polyline, 500); Coordinate3D fromCoord = new Coordinate3D(50, 50, -500); Coordinate3D toCoord = new Coordinate3D(200, 50, 1000); // extrude between two coordinates to create a multipatch multipatch = GeometryEngine.Instance.ConstructMultipatchExtrudeAlongLine(polyline, fromCoord, toCoord);
Target Platforms: Windows 11, Windows 10, Windows 8.1