Editing Overview

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
Since 1979, the U.S. Army Research Laboratory has been developing and distributing the BRL-CAD constructive solid geometry (CSG) modeling package for a wide range of military and industrial applications.  The package includes a large collection of tools and utilities including an interactive geometry editor, ray tracing and generic framebuffer libraries, a network-distributed image-processing and signal-processing capability, and an embedded scripting language.
+
Since 1979, the U.S. Army Research Laboratory has been developing and distributing the BRL-CAD constructive solid geometry (CSG) modeling package for a wide range of military and industrial applications.  The package includes a large collection of tools and utilities including an interactive geometry editor, raytracing and generic framebuffer libraries, a network-distributed image-processing and signal-processing capability, and an embedded scripting language.
  
 
== What is BRL-CAD? ==
 
== What is BRL-CAD? ==
Since the late 1950's, computers have been used to assist with the design and study of combat vehicle systems.  The result has been a reduction in the amount of time and money required to take a system from the drawing board to full-scale production as well as increased efficiency in testing and evaluation.
+
Since the late 1950s, computers have been used to assist with the design and study of combat vehicle systems.  The result has been a reduction in the amount of time and money required to take a system from the drawing board to full-scale production as well as increased efficiency in testing and evaluation.
  
In 1979, the U.S. Army Ballistic Research Laboratory (BRL) (now the U.S. Army Research Laboratory [ARL]) expressed a need for interactive 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.
+
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.
  
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, ray tracing 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).
+
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).
  
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 ray tracer, 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."
+
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."  
  
 
== Why CSG Modeling? ==
 
== Why CSG Modeling? ==
Line 48: Line 48:
  
 
* Tools for raytracing and interrogating raytraced geometric objects.
 
* Tools for raytracing and interrogating raytraced geometric objects.
 +
 
** rt – the main raytracer for rendering images in BRL-CAD.
 
** rt – the main raytracer for rendering images in BRL-CAD.
 +
 
** nirt – a package for firing rays interactively and getting information about what the rays run into.
 
** nirt – a package for firing rays interactively and getting information about what the rays run into.
 +
 
** remrt – a network-distributed raytracing package.
 
** remrt – a network-distributed raytracing package.
  
Line 75: Line 78:
  
 
* Tools for combining two images and blending them together.  (These tools were created before good image editing tools for video production were available; today users would typically load the images directly into a video editing package.)
 
* Tools for combining two images and blending them together.  (These tools were created before good image editing tools for video production were available; today users would typically load the images directly into a video editing package.)
 
== Benchmark Testing ==
 
As changes are implemented in BRL-CAD, ARL developers run a standard set of computationally intensive image files (shown in Figure 2) on a common machine in order to benchmark and compare raytrace performance.  In addition, these images are provided with each source distribution of the package so that users can also test performance on their machines, if desired.
 
 
To run the benchmark images, run the script run.sh in the "bench" directory of the source directory tree.
 
<gallery caption="Standard Benchmark Images" widths="128px" heights="128px" perrow="3">
 
Image:Benchmarking Moss.jpg|Moss
 
Image:Benchmarking World.jpg|World
 
Image:Benchmarking Star.jpg|Star
 
Image:Benchmarking Bldg 391.jpg|Bldg 391
 
Image:Benchmarking M35.jpg|M35
 
Image:Benchmarking Sphflake.jpg|Sphflake
 
</gallery>
 
 
== Acknowledgements ==
 
The authors would like to thank the members of the Advanced Computer Systems Team, who reviewed this document in a timely manner and made many helpful suggestions to improve its accuracy and presentation.  At the time this document was prepared team members included John Anderson, TraNese Christy, Bob Parker, Ron Bowers, and Sean Morrison.
 
 
In addition, the authors would like to especially acknowledge Mike Muuss, a team member and the original architect of BRL-CAD, who passed away in the fall of 2000.  Without his vision, this work would not have been possible.  Therefore, the BRL-CAD Tutorial Series is dedicated to his memory.
 
 
[[Category:Documentation]]
 

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)