KernelCAD Documentation

DInsight Home
Skip Navigation Links. Skip Navigation LinksHome Page > Open C++ Source
KernelCAD Developer

C++ source code

This topic describes the open parts of the C++ source code available in this version

Third party open source

In the current version there are two major open source components used in KernelCAD. Both can be modified and recompiled to run with KernelCAD. They are Open Cascade Technology and Open Graphics Rendering Engine (Ogre)

Both components have minor modifications, without which KernelCAD will not work. The source code, projects and other related data required to build the componets are included in: available from the downloads page:

The downloaded files must be extracted into the KernelCAD installation folder. The default KernelCAD location C:\Projects\KernelCAD_5_1\ should be the target folder for the zip extraction. The final directory structure must include C:\Projects\KernelCAD_5_1\ThirdParty\

The included projects and solutions must be compiled with Visual Studio 2013

Open Cascade Technology

This release is based on the OCCT v6.9.1.

Open solution C:\Projects\KernelCAD_5_1\ThirdParty\OCCT\adm\msvc\vc12\ OCCT.sln and build Win32 or x64 release configuration to obtain the new binaries.  The compiled target files will replace installed ones located in C:\Projects\KernelCAD_5_1\Bin and will have TK_*.dll names.


The source code is based on v1.10 of Ogre. To build: Open solution C:\Projects\KernelCAD_5_1\ThirdParty\Ogre\Builds\OGRE.sln and build Release Win32 or x64 configuration. The solution uses precompiled binaies for Ogre dependencies. They might need to be rebuild if your compiler version is different. The solutions are located in C:\Projects\KernelCAD\ThirdParty\Ogre\Ogre\Dependencies\src\

C++ interface of KernelCAD

C++ interface of KernelCAD is a collection of C++ declarations and related files, which allows direct access to KernelCAD classes. It makes possible creation of custom objects and other extensions of all KernelCAD features. There is also numerous functionality which becomes available, which othersise is not exposed via the interface hierarchy.

Please contact us about obtaining the relevant source code