Delaunay Mesh Generator – Example6

The Delaunay Mesh Generator of Fade creates quality meshes in a polygonal area. The triangles in these meshes meet the specified quality criteria like minimum interior angle or maximum edge length. The present article covers the straightforward refine() method. If you need detailed control over the mesh generation process read also Advanced Mesh Generator. Preparing […]

Polygon Clipping, Boolean Operations – Example5

Boolean Operations on Polygons Fade provides polygon clipping and functions to combine polygons through the boolean operations: Union (A OR B) Intersection (A AND B) Difference (A NOT B) Symmetric Difference (A XOR B) The demo source code described below is contained in the file example5.cpp in the Fade2D download. Creating two Shapes (Zones) A […]

Zone and Area – Example4

This is the right article if you want to triangulate a polygon. Zones are among the most powerful concepts in Fade. A zone defines an area in a (Constrained) Delaunay triangulation. Zones can be combined using boolean set operations such as union and difference, a quality mesh can be constructed inside a zone and the […]

Constraint Edges – Example3

Create a Delaunay triangulation Constrained Delaunay: Insert Constraint Edges And now assume that we want to enforce an edge from the lower left to the upper right corner. There are two different insertion strategies: Code for Constrained Delaunay We prepare a vector of one or more constraint segments and call createConstraint() using the constraint insertion […]

Access Triangulation Elements – Example2

Development is so much easier when you can visualize geometric situations. Lern how to draw geometric primitives using Fade’s Postscript writer class Visualizer2. The present Example2 will go over a triangulation and access specific elements like triangles, their neighbors, opposite points or Voronoi cells and draw them. That’s it. Under Windows you can use Evince, […]

2D Delaunay Triangulation Performance – Example1

Fade is a very fast multithreaded Delaunay triangulation library, see the benchmark diagram below. The present test code (example1.cpp, contained in the download) allows you to evaluate the performance on your own hardware. It starts with a call to Fade_2D::setNumCPU(int numCPU): numCPU=1 means single-threaded execution (default behavior) larger values activate multithreading and the special value […]

Getting Started – Example0

Getting Started with the Fade Delaunay Triangulation The Delaunay triangulation library supports 2D and 2.5D, hence it comes as two separate libraries, Fade2D and Fade2.5D. They have a common code base and thus they are very similar to use. The difference is a z-coordinate and additional functionality in the 2.5D version. To facilitate your start […]