public CubicBezierBuilder( IEnumerable<MapPoint> points )
Public Function New( _ ByVal points As IEnumerable(Of MapPoint) _ )
Parameters
- points
- The enumeration of points from which the curve will be constructed. Four points must be supplied.
public CubicBezierBuilder( IEnumerable<MapPoint> points )
Public Function New( _ ByVal points As IEnumerable(Of MapPoint) _ )
Exception | Description |
---|---|
System.ArgumentException | 4 points are required for a cubic bezier. |
System.InvalidOperationException | Incompatible spatial references. The spatial reference of the MapPoints do not match. |
ArcGIS.Core.CalledOnWrongThreadException | This method or property must be called within the lambda passed to QueuedTask.Run. |
System.ArgumentNullException | points is null. |
GeometryObjectException | An operation on an empty geometry was attempted. points contains an empty point. |
// Use a builder convenience method or use a builder constructor. MapPoint startPt = MapPointBuilder.CreateMapPoint(1.0, 1.0, SpatialReferences.WGS84); MapPoint endPt = MapPointBuilder.CreateMapPoint(2.0, 2.0, SpatialReferences.WGS84); MapPoint ctrl1Pt = MapPointBuilder.CreateMapPoint(1.0, 2.0, SpatialReferences.WGS84); MapPoint ctrl2Pt = MapPointBuilder.CreateMapPoint(2.0, 1.0, SpatialReferences.WGS84); List<MapPoint> listMapPoints = new List<MapPoint>(); listMapPoints.Add(startPt); listMapPoints.Add(ctrl1Pt); listMapPoints.Add(ctrl2Pt); listMapPoints.Add(endPt); // Builder convenience methods don't need to run on the MCT CubicBezierSegment bezier = CubicBezierBuilder.CreateCubicBezierSegment(listMapPoints); // Builder constructors need to run on the MCT ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() => { using (CubicBezierBuilder cbb = new CubicBezierBuilder(listMapPoints)) { // do something with the builder bezier = cbb.ToSegment(); } });
Target Platforms: Windows 10, Windows 8.1, Windows 7