BRL-CAD

From GICL Wiki
Revision as of 22:59, 10 May 2009 by Ccannon (Talk | contribs)

Jump to: navigation, search

Title(s): BRL-CAD - BRL-CAD geometry

Version ID: 7.14.0

Date released: 2008-11-04

Date: 1984-01-01 (First public release)

Creator(s): U.S. Army Ballistic Research Laboratory

Contributor(s): N/A

Relationships: N/A

  • Previous Version(s): N/A
  • Contains: N/A
  • Syntax Format(s): N/A
  • Family Format(s): N/A

Description: BRL-CAD is a powerful cross-platform Open Source combinatorial Constructive Solid Geometry (CSG) solid modeling system that includes interactive 3D solid geometry editing, high-performance ray-tracing support for rendering and geometric analysis, network-distributed framebuffer support, image and signal-processing tools, path-tracing and photon mapping support for realistic image synthesis, a system performance analysis benchmark suite, an embedded scripting interface, and libraries for robust high-performance geometric representation and analysis.

BRL-CAD supports a great variety of geometric representations including an extensive set of traditional CSG primitive implicit solids such as boxes, ellipsoids, cones, and tori, as well as explicit solids made from closed collections of Uniform B-Spline Surfaces, Non-Uniform Rational B-Spline (NURBS) surfaces, n-Manifold Geometry (NMG), and purely faceted mesh geometry. All geometric objects may be combined using boolean set-theoretic CSG operations including union, intersection, and difference.

BRL-CAD has been under active development with a portability heritage that includes systems such as a DEC VAX-11/780 running 4.3 BSD; DECStations running ULTRIX; Silicon Graphics 3030, 4D "IRIS", O2, Onyx, and Origin systems running various versions of IRIX; Sun Microsystems Sun-3 and Sun-4 Sparcs running SunOS; the Cray 1, Cray X-MP, Cray Y-MP, and Cray 2 running UNICOS; DEC Alpha AXP running OSF/1; Apple Macintosh II running A/UX; iPSC/860 Hypercube running NX/2; the Alliant FX/8, FX/80, and FX/2800; Gould/Encore SEL PowerNode6000/9000 and NP1; NeXT workstations; IBM RS/6000; HPPA 9000/700 running HPUX; Ardent/Stardent; Encore Multi-Max; and much more.

BRL-CAD is a collection of more than 400 tools, utilities, and applications comprising more than a million lines of source code. The package is intentionally designed to be extensively cross-platform and is actively developed on and maintained for many common operating system environments including for BSD, Linux, Solaris, Mac OS X, and Windows among others. BRL-CAD is distributed in binary and source code form as free open source software (FOSS), provided under Open Source Initiative (OSI) approved license terms.

History: For more than 20 years, BRL-CAD has been the primary tri-service solid modeling CAD system used by the U.S. military to model weapons systems for vulnerability and lethality analyses. The solid modeling system is frequently used in a wide range of military, academic, and industrial applications including in the design and analysis of vehicles, mechanical parts, and architecture. The package has also been used in radiation dose planning, medical visualization, computer graphics education, CSG concepts and modeling education, and system performance benchmark testing among other purposes.

Mike Muuss began the initial architecture and design of BRL-CAD back in 1979. Development as a unified package began in 1983. The first public release was made in 1984. BRL-CAD became an open source project on December 21, 2004, with portions licensed under the LGPL and BSD licenses.

Example(s): Example file from a BRL-CAD database outputted as ASCII. This file contains two objects: a pipe and an ellipse.

title {Untitled BRL-CAD Database}
units mm
attr set {_GLOBAL}
put {ellipse} ehy V {0 0 -1000} H {0 0 2000} A {0 1 0} r_1 1000 r_2 500 c 500
put {pipe} pipe V0 { 0 0 -1000 } O0 500 I0 250 R0 500 V1 { 0 0 1000 } O1 500 I1 250 R1 500


Identifier: http://brlcad.org/

Documentation: BRL-CAD Documentation

File Extensions: g

Applications:

  • Native application(s): BRL-CAD
  • Interoperable applications: N/A

Magic numbers: N/A

Format(s): Unknown

Rights: LGPL, BSD

Sustainability Factors:

  • Standardization: None
  • Adoption: None - Information about how this format has been adopted by other organizations.
    • Licensing and patent claims: None
  • Self-documentation: None
  • External dependencies: None
  • Technical protection considerations: None

Typical use: CAD

File classification: - Specific properties that pertain to this engineering format.

  • Type {Binary, Text}: Binary
  • Raster data:
  • Geometric representation:
  • Multi-resolution models: - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
    • Is Supported: - Is the feature supported in the engineering format?
    • Description: - This field is used to describe the support or lack of support of the feature.
  • Dynamics: - Section describes whether or not the engineering format supports dynamics.
    • Kinematics: - Can the format support kinematics? Example: Does the format allow model parts to rotate?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Assembly: - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Force(s): - Can the format support forces? Example: Does the format support acceleration forces?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Boundary representation - Can the format support models with boundary representations?
    • Manifold surface boundary representations: - Can the format support manifold surface boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Manifold volume boundary representations: - Can the format support manifold volume boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Non-manifold boundary representations: - Can the format support non-manifold boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Material transparency: - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
    • Is Supported: - Is the feature supported in the engineering format?
    • Description: - This field is used to describe the support or lack of support of the feature.

References: - A list of references regarding any aspects of this engineering format; any reading material supplemental to this page.