Hypertriton, Inc. Hypertriton, Inc.
( Francais )
HOME | DOWNLOAD | DOCS | SUPPORT | AUTHOR | CONTRIBUTE | BUGZILLA
What is FreeSG?

Application using FreeSG FreeSG ("Free" as in "Free software" and "Free of bloat") is an open-source, cross-platform toolkit integrating optimized math & computational geometry methods, visualization tools and a 2D/3D graphics rendering system.

FreeSG depends on the Agar library, and it released under the same revised BSD license. FreeSG and its related projects are sponsored by Csoft.net: Security conscious, high-availability Unix hosting on redundant server arrays.

Example applications

FreeSG is currently being used by our circuit simulator, notably for its linear algebra functions and visualization widgets.

The sketch-based CAD modeler we are currently developing relies on the SG library for 3D visalization of models and SK for 2D sketching. The geometric constraint solving built into SG enables complex 3D assemblies, and a two-dimensional version of the algorithm enables efficient sketching and parametric features.

SG

With the SG ("scene graph") library, we aim to implement a set of efficient scene rendering algorithms where the speed and memory tradeoffs can be adjusted to the widest possible range of professional applications and hardware platforms. We use a generic, extensible scene description language and a compact storage format. Objects use an unambiguous polyhedral representation based on the half-edge structure, which allows for fast geometric queries. A variety of scene-partitioning techniques are available.

SK

The SK library provides precisely dimensioned 2D vector drawings (or sketches), and supports geometrical constraint systems using a graph-directed algebraic method. This is a central component of cadtools, our parametric solid CAD modeler in early development.

M

The M library is a general-purpose math library which can be compiled to use different precisions and architecture extensions. Notably, it implements basic linear algebra, with architecture-dependent optimizations for operations in R2, R3 and R4, as well as sparse-matrix optimizations for operations in Rn. In addition to linear algebra, M also includes routines for portable complex-number arithmetic / quaternions, and computational geometry. Some useful GUI widgets (such as a plotter) are also implemented. M can be compiled to select between different architecture optimizations on runtime, but it is also possible to explicitely compile them inline.

Forums

Support FreeSG If you have any questions, comments or suggestions, don't hesitate to contact the author. You can also obtain support and discuss with the developers via the #agar channel on irc.freenode.net.

Announcements
03/02/2008 Created freesg-commits mailing list for automated commit notifications of the FreeSG source code exlusively. Note that the previous source-diff list will continue to receive notices as well. The new list provides a RSS feed.
"The idea is if you use those two shapes and try to colour the plane with them so the colours match, then the only way you can do this is to produce a pattern which never repeats itself." -- Roger Penrose