An algorithm suitable for triangulating 3D data points, produced by a machine vision system or coordinate measuring machine (CMM), is described. The algorithm is suitable for processing the data collected from objects composed of free form surface patches. The data is produced by a 3D machine vision system integrated into a computer numerically controlled CMM. The software can model very large 3D data sets, termed cloud data, using a unified, non-redundant triangular mesh. This is accomplished from the 3D data points in two steps. Firstly, an initial data thinning is performed, to reduce the copious data set size, employing 3D spatial filtering. Secondary, the triangulation commences, utilizing a set of heuristic rules, from a user defined seed point. The triangulation algorithm interrogates the local geometric and topological information inherent in the cloud data points. The spatial filtering parameters are extracted from the cloud data set, by a series of local surface patches, and the required spatial error between the final triangulation and the cloud data. Case studies are presented that illustrate the efficacy of the technique for rapidly constructing a geometric model from 3D digitized data.