Open Soure

Cotangent is not open source, but it's built on open source technology. In fact, many of the core components used to build Cotangent are open source libraries also developed by Gradientspace Corp. So, when you support Cotangent, you're also supporting these open-source projects!


Gradientspace Open Source Components

The core 3D printing slicer used in Cotangent is available under the open-source MIT License. This slicer is split into two libraries, both available on the Gradientspace Github repository - gsGCode is the low-level GCode processing library, and gsSlicer is the 3D printing slice-meshes-and-generate-toolpaths library. The Gradientspace website also has tutorials about using these libraries.

Cotangent uses many (many!) 2D and 3D geometry processing algorithms and data structures. Most of these are well-known things, and open-source implementations are available /somewhere/. But assembling it all together is a huge amount of work. The geometry3Sharp library is a from-scratch C# implementation released under the Boost license. This library has no dependencies and is compatible with Unity.

Interactive 3D design tools are difficult to build because they require a lot of infrastructure that is not provided by standard "scene graph" engines. Things like flexible 3D widget systems, undo/redo systems, etc, etc, etc (etc!). The frame3Sharp library is infrastructure for building these kinds of tools on top of the Unity game engine. 


Third-Party Open Source Components


Polygon booleans and offsets are a stable of 3D printer toolpathing. The gsSlicer library incorporates the C# version of the Clipper library written by Angus Johnson.

WildMagic 5 and GTEngine

Although Cotangent currently does not directly use the WildMagic or GTEngine libraries provided by David Eberly at, geometry3Sharp includes C# ports of many of the classes and algorithms from these libraries.