rilpoint_mw113

BRL-CAD

Line 1: Line 1:
==''' Overview'''==
==''' Overview'''==
-
BRL-CAD is a powerful cross-platform open source solid modeling system that
+
BRL-CAD is a powerful cross-platform open source solid modeling system that includes interactive geometry editing, high-performance ray-tracing for rendering and geometric analysis, image and signal-processing tools, a system performance analysis benchmark suite, libraries for robust geometric representation, with more than 20 years of active development.
-
includes interactive geometry editing, high-performance ray-tracing for  
+
-
rendering and geometric analysis, image and signal-processing tools, a system
+
-
performance analysis benchmark suite, libraries for robust geometric  
+
-
representation, with more than 20 years of active development.
+
-
In 1979, the U.S. Army Ballistic Research Laboratory (BRL) (now the U.S. Army  
+
In 1979, the U.S. Army Ballistic Research Laboratory (BRL) (now the U.S. Army Research Laboratory [ARL]) expressed a need for tools that could assist with the computer simulation and engineering analysis of combat vehicle systems and environments. When no existing computer-aided design (CAD) package was found to be adequate for this purpose, BRL software developers began assembling a suite of utilities capable of interactively displaying, editing, and interrogating geometric models. This suite became known as BRL-CAD.
-
Research Laboratory [ARL]) expressed a need for tools that could assist with  
+
-
the computer simulation and engineering analysis of combat vehicle systems and  
+
-
environments. When no existing computer-aided design (CAD) package was found to  
+
-
be adequate for this purpose, BRL software developers began assembling a suite  
+
-
of utilities capable of interactively displaying, editing, and interrogating  
+
-
geometric models. This suite became known as BRL-CAD.
+
-
Now comprising almost a million lines of C code, BRL-CAD has become a powerful  
+
Now comprising almost a million lines of C code, BRL-CAD has become a powerful constructive solid geometry (CSG) modeling package that has been licensed at over 2,000 sites throughout the world. It contains a large collection of tools, utilities, and libraries including an interactive geometry editor, raytracing and generic framebuffer libraries, a network-distributed image-processing and signal-processing capability, and a customizable embedded scripting language. In addition, BRL-CAD simultaneously supports dual interaction methods, one using a command line and one using a graphical user interface (GUI).
-
constructive solid geometry (CSG) modeling package that has been licensed at  
+
-
over 2,000 sites throughout the world. It contains a large collection of tools,
+
-
utilities, and libraries including an interactive geometry editor, raytracing  
+
-
and generic framebuffer libraries, a network-distributed image-processing and
+
-
signal-processing capability, and a customizable embedded scripting language.  
+
-
In addition, BRL-CAD simultaneously supports dual interaction methods, one  
+
-
using a command line and one using a graphical user interface (GUI).
+
-
A particular strength of the package lies in its ability to build and analyze  
+
A particular strength of the package lies in its ability to build and analyze realistic models of complex objects using a relatively small set of "primitive shapes." To do this, the shapes are manipulated by employing the basic Boolean operations of union, subtraction, and intersection. Another strength of the package is the speed of its raytracer, which is one of the fastest in existence. Finally, BRL-CAD users can accurately model objects on scales ranging from the subatomic through the galactic and get "all the details, all the time."
-
realistic models of complex objects using a relatively small set of "primitive
+
-
shapes." To do this, the shapes are manipulated by employing the basic Boolean  
+
-
operations of union, subtraction, and intersection. Another strength of the  
+
-
package is the speed of its raytracer, which is one of the fastest in  
+
-
existence. Finally, BRL-CAD users can accurately model objects on scales  
+
-
ranging from the subatomic through the galactic and get "all the details, all  
+
-
the time."
+
-
 
+
-
Although BRL-CAD has been used for a wide variety of engineering and graphics
+
-
applications, the package's primary purpose continues to be the support of (1)
+
-
ballistic and (2) electromagnetic analyses. Accordingly, developers have found
+
-
CSG modeling to be the best approach in terms of model accuracy, storage
+
-
efficiency, precision, and speed of computational analysis.
+
-
 
+
-
While polygonal and boundary representation (B-rep) modeling often focuses on
+
-
just the surfaces of objects, CSG modeling focuses on the entire volume and
+
-
content of objects. This gives BRL-CAD the capability to be "more than skin
+
-
deep" and build objects with real-world materials, densities, and thicknesses
+
-
so that analysts can study physical phenomena such as ballistic penetration and
+
-
thermal, radiative, neutron, and other types of transport.
+
-
 
+
-
The BRL-CAD libraries (designated by the prefix "lib") are designed primarily
+
-
for the geometric modeler who also wants to tinker with software and, perhaps,
+
-
design custom tools. Each library fits into one of three categories: (1)
+
-
creating and/or editing geometry, (2) raytracing geometry, or (3) image
+
-
handling. The following is a list of the major BRL-CAD libraries and
+
-
descriptions of their functions.
+
-
 
+
-
 
+
-
=='''Libraries'''==
+
-
 
+
-
    libbu – a basic utility (bu) library containing fundamental computer science types of routines, including manipulating data (e.g., converting from host format data to network format data), parallel processing, parsing parameters, handling variable-length strings, performing error checks, converting units from one format to another, manipulating bit vectors, running parallel-safe versions of input/output (I/O) routines, and maintaining symbol tables.
+
-
 
+
-
    libbn – a library of routines to support basic numerical (bn) handling, including 2-D/3-D vector, matrix, and quaternion manipulation; 3-D plotting support; automatic inference of image size (BRL-CAD images have no internal header; image dimensions are intuited from the size of the file); and wavelet decomposition and reconstruction, etc.
+
-
 
+
-
    libdm – BRL-CAD's primary graphics display manager (dm) library. It handles opening windows onto the display and displaying geometry in the graphics window, etc.
+
-
 
+
-
    libfb – the framebuffer (fb) library, which supports having a window in which the user puts pixel data when raytracing.
+
-
 
+
-
    libmultispectral and liboptical – the shader and texturing libraries for the raytracer.
+
-
 
+
-
    libpkg – a library that implements a remote procedure call (rpc) mechanism. This library is a predecessor of the modern rpc system. Unlike the typical UNIX rpc service, applications can set up services and handle requests without requiring configuration by a system administrator.
+
-
 
+
-
    librt – the library that contains all of the geometry support, including data representations for the primitives, support for raytracing (rt), and binary I/O support for CSG geometric descriptions.
+
-
 
+
-
    libz – a public-domain compression library.
+
-
 
+
-
    libtcl, libtk, and libitcl – libraries that provide the Tcl/Tk scripting language.
+
-
 
+
-
    libpng – a library that provides portable network graphics (png).
+

Revision as of 06:33, 14 March 2011