The Geometry Service Project aims to restructure the geometry management services within BRL-CAD and provide a new user interface. As part of these efforts BRL-CAD's core C++ interface should become a self-contained object-oriented interface to BRL-CAD's geometry kernel, hence the Geometry Engine. With that, the C++ interface would be a canonical API for external applications, interfaces to other programming languages, etc.. That's why it is included in the brlcad.dll (and its SDK): Easy distribution of BRL-CAD functionality to MS Windows programs.
The C++ interface already provides access to the 3 database types read-only, write-on-change and in-memory. The last one provides the usual "load -> change -> save" behavior for applications. Additionally objects for most of the simple primitives and combinations are included too.
Possible tasks are
- Implement the C++ core classes for the remaining primitives
- Geometry Service Project Main
- BRL-CAD's core C++ interface
- Familiarity with C/C++