Projects / libefgy


libefgy is a set of C++ headers containing lots of templates loosely related to maths. The headers include templates for fractional arithmetic, big integers (and thus "big fractions"), calculating π, e, and some calculations with those (for trigonometrics), matrix manipulations, tuples, polar and Euclidian spaces in arbitrary dimensions, (perspective) projections, colour space manipulations in RGB and HSL, and assorted other things.

Operating Systems

RSS Recent releases

  •  02 Feb 2014 22:25

Release Notes: This sixth release of the library primarily updates geometry code: parametric surfaces, trigonometric functions, arbitrary coordinate systems for models, vectors, and a simple GLSL synthesiser. S-expression classes have also been added, and documentation has been improved. The number of Doxygen warning lines is now finally under a thousand. Two models have been added, a klein bottle and a torus.

Release Notes: Adds a numeric tracer, sequences, series, power series, a geometric primitive factory, basic statistics, and stream operators. Updates the e and pi templates, test cases, and the documentation documentation. Removes sets, trigonometrics (temporarily), parts of the geometry code, and the general dependence on the 'primitive' data type wrapper.

  •  15 Dec 2013 19:16

    Release Notes: This release adds some minor new features such as the vt100 terminal code and a matrix animation demo, and greatly improves the current state of the source code documentation. Additionally, a lot of code has been rewritten to use standard C++11 features where applicable.

    Release Notes: This release adds code for random affine IFSs, fractal flames, an improved OpenGL 3.2/OpenGL ES 2.0/WebGL 1.0 renderer used in Topologic, and custom Mersenne Twister documentation and test cases. There are quite a few cleanups. The code is now available via Github or Google Code.

    •  11 Oct 2013 20:11

      Release Notes: This release fixes bugs in the sphere primitive templates, includes a lot of cleanups (in particular to the OpenGL renderer), and introduces code to calculate two new primitives, the sierpinski gasket and the sierpinski carpet.


      Project Spotlight


      An artificial intelligence module.


      Project Spotlight


      Software that converts data into something meaningful and interpretable.