@@ -8,6 +8,7 @@ namespace TriangleNet.Meshing
88{
99 using System ;
1010 using System . Collections . Generic ;
11+ using System . Threading ;
1112 using TriangleNet . Geometry ;
1213 using TriangleNet . IO ;
1314 using TriangleNet . Meshing . Algorithm ;
@@ -96,10 +97,11 @@ public IMesh Triangulate(IPolygon polygon, ConstraintOptions options)
9697 /// </summary>
9798 /// <param name="polygon">The input polygon.</param>
9899 /// <param name="quality">The <see cref="QualityOptions"/>.</param>
100+ /// <param name="cancellationToken">A token that receives a cancellation notification when requested.</param>
99101 /// <returns>The mesh.</returns>
100- public IMesh Triangulate ( IPolygon polygon , QualityOptions quality )
102+ public IMesh Triangulate ( IPolygon polygon , QualityOptions quality , CancellationToken cancellationToken = default )
101103 {
102- return Triangulate ( polygon , null , quality ) ;
104+ return Triangulate ( polygon , null , quality , cancellationToken ) ;
103105 }
104106
105107 /// <summary>
@@ -108,8 +110,9 @@ public IMesh Triangulate(IPolygon polygon, QualityOptions quality)
108110 /// <param name="polygon">The input polygon.</param>
109111 /// <param name="options">The <see cref="ConstraintOptions"/>.</param>
110112 /// <param name="quality">The <see cref="QualityOptions"/>.</param>
113+ /// <param name="cancellationToken">A token that receives a cancellation notification when requested.</param>
111114 /// <returns>The mesh.</returns>
112- public IMesh Triangulate ( IPolygon polygon , ConstraintOptions options , QualityOptions quality )
115+ public IMesh Triangulate ( IPolygon polygon , ConstraintOptions options , QualityOptions quality , CancellationToken cancellationToken = default )
113116 {
114117 var mesh = ( Mesh ) triangulator . Triangulate ( polygon . Points , config ) ;
115118
@@ -122,7 +125,7 @@ public IMesh Triangulate(IPolygon polygon, ConstraintOptions options, QualityOpt
122125 cmesher . Apply ( polygon , options ) ;
123126
124127 // Refine mesh.
125- qmesher . Apply ( quality ) ;
128+ qmesher . Apply ( quality , options ? . ConformingDelaunay ?? false , cancellationToken ) ;
126129
127130 return mesh ;
128131 }
0 commit comments