|
|
Software
This page can be reached at: http://www.sintef.no/math_software. Over many years, we have developed software libraries as part of research and industrial projects. The most important of these that are available for other developers are listed below. Libraries and source code available online - SISL - "The SINTEF Spline Library" <Description> <Source code (GPL license)>
"SISL" a comprehensive NURBS library for the modeling and interrogation of curves and surfaces. It is implemented in C and has been under continuous development over two decades. - TTL - "Triangulation Template Library" <Description> <Source code (QPL license)>
"TTL" is a library for operations related to triangulations. TTL is not dependent on a specific data structure, but can be adapted to any type of triangulation defined by the user. Delaunay triangulation, add/remove nodes and search/traversing are examples of tools. The code is implemented in C++. - MBA - "Multilevel B-spline Approximation Library" - version 1.1 <Description> <Source Code (GPL)>
"MBA" is rather a single algorithm than a library. It is developed for making surfaces form scattered data points. The algorithm works at different levels, and can be used both for small and large point sets. Compared to similar methods is extremely fast. The code is implemented in C++. (New version 1.1 updated November 23, 2007.) - LSMG - "Least Squares Approximation of Scattered Data with B-Splines" - version 1.1 <Description><Source Code (GPL)>
"LSMG" is a method for making surface from scattered data points by error mineralization (least squares). It is more computational and memory demanding than the MBA-algorithm. However, in some case the result is “better”. The code is implemented in C++. (New version 1.1 updated November 27, 2007.) - LSSEG - "Level-Set Segmentation Library" <Description> <Source Code (GPL)>
"LSSEG" is an experimental library for segmentation and anisotropic smoothing of images, using PDE-based methods. This code was written within the framework of a project that you can read more about here.
GoTools modules:GoTools is the name of a collection of C++ libraries related to geometry. The libraries are interdependent. In order to minimize the need of installing multiple libraries, we have gathered the most important ones in a core module. If you wish to use other GoTools libraries, you must first install this core module. - GoTools core module - version 1.1 <Description> <Source code (GPL license)> <Precompiled Windows library file (NB: Version 1.0.1.)>
You will need to install this module before using other GoTools libraries. The core module contains generic tools and spline functionality. If you use Windows, you can download the compiled library file. However, you still need to download the source code to get access to the header files, and in order to generate Doxygen documentation. (New version 1.1 updated June 11. 2007.) - GoTools parametrization module - version 1.1 <Description> <Source code (GPL license)> <Precompiled Windows library file (NB: Version 1.0.)>
The parametrization module of GoTools can be use to generate parametrizations of meshes or point clouds. This is useful for instance for texture mapping on triangulations or for generating surfaces out of point clouds. If you use Windows, you can download the compiled library file. However, you still need to download the source code to get access to the header, and in order to generate Doxygen documentation. (New version 1.1 updated June 11. 2007.) - GoTools Approximate Implicitization - version 1.0 <Description> <Source code (GPL license)>
The toolkit offers functionality for approximate implicitization of 2D NURBS curves, 3D NURBS surfaces, surfaces defined by a 3D curve and a vector, and 3D point sets. The algebraic degree of the approximation is chosen by user, and can in most cases be chosen much lower than the theory of exact implicitization provides. (New version 1.0 updated June 11. 2007.) GoTools Intersections - version 1.0 <Description> <Source code (GPL license)> "Intersections" is an object oriented library for finding intersections of geometric objects. The library handles singular surfaces and singular and near singular intersections. (Version 1.0, November 23, 2007.)
Libraries with online documentation- SISCAT - "The SINTEF Scattered Data Library" <Description>
Siscat (SINTEF Scattered data library) is a fully object-oriented numerical software library for the approximation and interpolation of scattered data. The library is used for analysis, and the generation of curves and surfaces from data measured from, for example, laser scans of mechanical parts, seismic surveys, x-ray and ultrasound data, and satellite images. - Multi-variate Splines <Description>.
This is a generic library handling tensor product spline functions, e.g., scalar fields in many dimensions. The functionality includes interpolation, approximation, integration, collapse of dimension, pick subpart etc. The library is written aiming at large bulks of data, and is implemented in C++- Currently DoxyGen-generate PDF documentation is available. - Structured Blocks <Description> This is a generic library addressing multi-dimensional, user defined adjacent blocks of data. It can be used together with the Multivariate Splines Library to represent block structured simulation grids in a spline format. The library is written aiming at large bulks of data, and is implemented in C++- Currently DoxyGen-generate PDF documentation is available.
Other librariesGoTools is a suit of libraries written in C++. All the libraries are related to geometry. Some of the libraries are planned to be distributed under the GPL license. - GoTools Topology
"Topology" is a library for representation, analysis and creation of the topology of a set of surfaces, (E.g. find and describe the adjacency relations) based on the relative spatial location of the surfaces. - GoTools Viewlib
"Viewlib" is a a library for adding functionality for visualizing geometric object of all types in the ”geometry” library. A QT-based application for visualization is included “govview” - GoTools Subdivision
"Subdivision" is a library for subdivision surfaces. Both triangulation, rectangular grids and mixed meshes are supported. Schemas both for approximating and interpolating subdivision are included. Among the functionality are general point evaluation, area calculation and volume calculation.
Published November 29, 2007
|
|