GoTools is the name of a collection of C++ libraries related to geometry. The libraries are interdependent. Most of the functionality is based on a spline representation of the geometry.
New: Downloads are now located on a separate web page. Click here to get to the downloads page.
The GoTools Core library contains core functionality and basic geometrical utility functions:
The purpose of the GoTools Parametrization library is to compute a reasonable parametrization for a discrete geometrical object. This geometrical object can be a planar graph embedded in or (triangulation, rectangular grid, etc.) or a point cloud without any explicit connectivity, but with an identified border.
There are many contexts for which such a parametrization is useful, for example when mapping textures onto polygonal meshes or when triangulating a surface from a set of scattered 3D points. The algorithms contained in this software are based on the work of Dr. Michael Floater.
GoTools Approximate Implicitization
This library contains tools for implicitizing spline curves and surfaces. Contains also various classes for Bernstein polynomials.
Historically, the underlying ideas for implicitzation and approximate implicitization were developed by Tor Dokken at SINTEF, ICT, in his Ph.D. thesis: Aspects of Intersection Algorithms and Approximation, University of Oslo, Norway, 1997. The implementations in this library was done in connection with the EU projects GAIA I and II.
An object oriented library for finding intersections of geometric objects like spline curves and surfaces. The library handles singular surfaces and singular and near singular intersections.
Basic IGES reading and writing utility.
Click here to get to the downloads page.