Skip to content

History

Christian Woltering edited this page Mar 8, 2023 · 4 revisions

A brief history of Triangle.NET.

Beta 1 (2012-03-21)

The initial release of Triangle.NET on CodePlex in March 2012. Mostly a direct port of the original C-code. Included was a very simple demo app to render input geometries and meshes.

Beta 2 (2012-06-20)

Released in June 2012, fixing a couple of known issues, but more importantly it included a much improved demo app MeshExplorer.

Beta 3 (2013-06-18)

Released in June 2013, including fixes but also new features like mesh smoothing and node renumbering.

Beta 4 (unreleased)

A major rewrite started in April 2014, introducing a couple of breaking changes:

  1. Removed the InputGeometry class. The new IPolygon interface allows direct access to points, segments, holes and regions, thus methods like AddPoint or AddSegment from the InputGeometry class are no longer needed. The Contour class allows adding contours and (possibly non-convex) holes in an easy way.
  2. Removed public Mesh constructor. A mesh can be created by the GenericMesher class in the TriangleNet.Meshing namespace. The preferred method is to use one of the extension methods of the IPolygon interface. If you simply want to triangulate a pointset, you now have access to the Delaunay algorithms in the TriangleNet.Meshing.Algorithm namespace.
  3. Removed public access to Behavior class. Mesh creation can be controlled by the new ConstraintOptions and QualityOptions classes. The Verbose option was moved to the Log class.
  4. Removed Load method from Mesh class. Use the Converter.Instance singleton in the TriangleNet.Meshing namespace or the TriangleFormat class in the TriangleNet.IO namespace to load meshes.
  5. Removed Smooth method from Mesh class. Use the SimpleSmoother class in the TriangleNet.Smoothing namespace.
  6. Included Shewchuk's robust geometric predicates.

Beta 4.x

In 2017, Microsoft announced to shut down CodePlex. Since then, a couple of forks appeared on GitHub, most notably a fork by Geri Borbás, which contained the complete SVN history and is the origin of this repository.

Beta 5 (current)

In February 2022 I decided to fork Triangle.NET from Geri, fixing known issues and bringing the code up to date with my local repository. Instead of merging this fork back into the original repository, we decided to hand ownership over to me.

So, here we are. If you want a detailed change log, please refer to the commit history starting from 2022-02-13. Some major changes:

  • Switch to netstandard2.0
  • New unit test project Triangle.Tests (very incomplete)
  • New examples project Triangle.Examples
  • Renaming the demo app to Triangle.Viewer
  • Fixed Voronoi issues, improving mesh smoother reliability
  • Fixed issues finding points inside non-convex contours
Clone this wiki locally