Categories
Fade2.5D Examples

Cut and Fill Volumes in C++

Cut And Fill (Wikipedia) Earthwork volume computations for C++. The library module Cut-And-Fill takes two overlapping surfaces and computes the volume between. The result is a set of volumes where soil must be filled or where material must be digged off to turn one surface into the other one. Example Source Code – Basic Usage…

Categories
Fade2.5D Examples

Segment Checker for 2.5D Segment Intersections

The Segment Checker computes intersections of 3D line segments. Thereby two segments are considered to intersect when their projections in the xy-plane intersect. In other words, even if the involved segments are at different heights. The Segment Checker is fast and it is robust against degenerate and glancing intersections. C++ Example: Segment Intersections Let’s go…

Categories
Fade2.5D Examples

Breakline Insertion, ISO Contours and the Cookie Cutter

Breakline insertion You can insert constraint edges, also known as “Breaklines”, into a triangulation. As in the 2D case, you can do that with or without subdividing the segments. In addition you can insert a segment with its original height or you can adjust its height to the triangulation. This results in the four possibilities:…

Categories
Fade2.5D Examples

Valleys and Ridges, Smoothing, Mesh-Improvements

In this example, we will flip edges in an unnatural looking triangulation to better match its valleys and ridges. Further we’ll use Fade’s Weighted Laplacian smoothing technique to improve the quality of a noisy triangle mesh. And finally we address an annoying problem, namely bad shaped triangles at the boundary of a triangulation. We remove…

Categories
Fade2.5D Examples

2.5D Terrain Triangulation (TIN)

2.5D Delaunay triangulations are also known as TIN (Triangulated Irregular Networks). They are like a classic 2D Delaunay triangulation, but with elevated points. This article describes the optional simplification of point clouds from LiDAR scans and surface metrology data using adaptive and grid-based clustering methods. Further it shows how to triangulate point clouds in a…