BRL-CAD

BRL-CAD is a constructive solid geometry (CSG) solid modeling computer-aided design (CAD) system. It includes an interactive geometry editor, ray tracing support for graphics rendering and geometric analysis, computer network distributed framebuffer support, scripting, image-processing and signal-processing tools. The entire package is distributed in source code and binary form.

Although BRL-CAD can be used for a variety of engineering and graphics applications, the package's primary purpose continues to be the support of ballistic and electromagnetic analyses. In keeping with the Unix philosophy of developing independent tools to perform single, specific tasks and then linking the tools together in a package, BRL-CAD is basically a collection of libraries, tools, and utilities that work together to create, raytrace, and interrogate geometry and manipulate files and data. In contrast to many other 3D modelling applications, BRL-CAD primarily uses CSG rather than boundary representation. This means BRL-CAD can "study physical phenomena such as ballistic penetration and thermal, radiative, neutron, and other types of transport". It does also support boundary representation.

The BRL-CAD libraries are designed primarily for the geometric modeler who also wants to tinker with software and design custom tools. Each library is designed for a specific purpose: creating, editing, and ray tracing geometry, and image handling. The application side of BRL-CAD also offers a number of tools and utilities that are primarily concerned with geometric conversion, interrogation, image format conversion, and command-line-oriented image manipulation.



History
In 1979, the U.S. Army Ballistic Research Laboratory (BRL) expressed a need for tools that could assist with the computer simulation and engineering analysis of combat vehicle systems and environments. When no CAD package was found to be adequate for this purpose, BRL software developers – led by Mike Muuss – began assembling a suite of utilities capable of interactively displaying, editing, and interrogating geometric models. This suite became known as BRL-CAD. Development on BRL-CAD as a package subsequently began in 1983; the first public release was made in 1984. BRL-CAD became an open-source project in December 2004.

The BRL-CAD source code repository is the oldest known public version-controlled codebase in the world that's still under active development, dating back to 1983-12-16 00:10:31 UTC.