diff --git a/Triangle.NET/Triangle/Geometry/Polygon.cs b/Triangle.NET/Triangle/Geometry/Polygon.cs index 6e045da..733c96c 100644 --- a/Triangle.NET/Triangle/Geometry/Polygon.cs +++ b/Triangle.NET/Triangle/Geometry/Polygon.cs @@ -52,12 +52,29 @@ namespace TriangleNet.Geometry get { return points.Count; } } + /// + /// Initializes a new instance of the class. + /// public Polygon() - : this(3) + : this(3, false) { } + /// + /// Initializes a new instance of the class. + /// + /// The default capacity for the points list. public Polygon(int capacity) + : this(3, false) + { + } + + /// + /// Initializes a new instance of the class. + /// + /// The default capacity for the points list. + /// Use point and segment markers. + public Polygon(int capacity, bool markers) { points = new List(capacity); holes = new List(); @@ -65,8 +82,8 @@ namespace TriangleNet.Geometry segments = new List(); - HasPointMarkers = false; - HasSegmentMarkers = false; + HasPointMarkers = markers; + HasSegmentMarkers = markers; } /// @@ -236,12 +253,14 @@ namespace TriangleNet.Geometry /// /// Return true if the given point is inside the polygon, or false if it is not. /// - /// - /// + /// The point to check. + /// The polygon (list of contour points). /// /// /// WARNING: If the point is exactly on the edge of the polygon, then the function /// may return true or false. + /// + /// See http://alienryderflex.com/polygon/ /// private bool IsPointInPolygon(Point point, List poly) { diff --git a/Triangle.NET/Triangle/IO/FileProcessor.cs b/Triangle.NET/Triangle/IO/FileProcessor.cs index e96fe78..faa4a7b 100644 --- a/Triangle.NET/Triangle/IO/FileProcessor.cs +++ b/Triangle.NET/Triangle/IO/FileProcessor.cs @@ -1,4 +1,9 @@ - +// ----------------------------------------------------------------------- +// +// Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ +// +// ----------------------------------------------------------------------- + namespace TriangleNet.IO { using System; diff --git a/Triangle.NET/Triangle/IO/IFileFormat.cs b/Triangle.NET/Triangle/IO/IFileFormat.cs index f688adb..cd61998 100644 --- a/Triangle.NET/Triangle/IO/IFileFormat.cs +++ b/Triangle.NET/Triangle/IO/IFileFormat.cs @@ -1,4 +1,9 @@ - +// ----------------------------------------------------------------------- +// +// Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ +// +// ----------------------------------------------------------------------- + namespace TriangleNet.IO { public interface IFileFormat diff --git a/Triangle.NET/Triangle/IO/IPolygonFormat.cs b/Triangle.NET/Triangle/IO/IPolygonFormat.cs index e726442..9889230 100644 --- a/Triangle.NET/Triangle/IO/IPolygonFormat.cs +++ b/Triangle.NET/Triangle/IO/IPolygonFormat.cs @@ -1,5 +1,5 @@ // ----------------------------------------------------------------------- -// +// // Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ // // ----------------------------------------------------------------------- diff --git a/Triangle.NET/Triangle/IO/InputTriangle.cs b/Triangle.NET/Triangle/IO/InputTriangle.cs index 5a8fcc2..cf57fa9 100644 --- a/Triangle.NET/Triangle/IO/InputTriangle.cs +++ b/Triangle.NET/Triangle/IO/InputTriangle.cs @@ -1,5 +1,5 @@ // ----------------------------------------------------------------------- -// +// // Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ // // ----------------------------------------------------------------------- diff --git a/Triangle.NET/Triangle/IO/TriangleReader.cs b/Triangle.NET/Triangle/IO/TriangleReader.cs index 71aed56..1e5dd91 100644 --- a/Triangle.NET/Triangle/IO/TriangleReader.cs +++ b/Triangle.NET/Triangle/IO/TriangleReader.cs @@ -1,5 +1,5 @@ // ----------------------------------------------------------------------- -// +// // Original Triangle code by Jonathan Richard Shewchuk, http://www.cs.cmu.edu/~quake/triangle.html // Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ // diff --git a/Triangle.NET/Triangle/IO/TriangleWriter.cs b/Triangle.NET/Triangle/IO/TriangleWriter.cs index c5c8280..9dd1a15 100644 --- a/Triangle.NET/Triangle/IO/TriangleWriter.cs +++ b/Triangle.NET/Triangle/IO/TriangleWriter.cs @@ -1,5 +1,5 @@ // ----------------------------------------------------------------------- -// +// // Original Triangle code by Jonathan Richard Shewchuk, http://www.cs.cmu.edu/~quake/triangle.html // Triangle.NET code by Christian Woltering, http://triangle.codeplex.com/ // @@ -194,6 +194,8 @@ namespace TriangleNet.IO { // TODO: write vertex attributes + writer.WriteLine("{0} 2 0 {1}", polygon.Points.Count, polygon.HasPointMarkers ? "1" : "0"); + // Write nodes to this file. TriangleWriter.WriteNodes(writer, polygon.Points, polygon.HasPointMarkers, 0, false);