Uniform Tests of File Converters Using Unit Cubes 

by Steven J Nichols 

ARL-CR-0770 March 2015 

Under contract 

W911NF-10-2-0076 

Approved for public release; distribution unlimited. 
NOTICES 

Disclaimers 

The findings in this report are not to be construed as an official Department of the Army position 

unless so designated by other authorized documents. 

Citation of manufacturer’s or trade names does not constitute an official endorsement or 

approval of the use thereof. 

Destroy this report when it is no longer needed. Do not return it to the originator. 
Army Research Laboratory 

Aberdeen Proving Ground, MD 21005 

ARL-CR-0770 March 2015 

Uniform Tests of File Converters Using Unit Cubes 

Steven J Nichols 

Survivability/Lethality Analysis Directorate, ARL 

Under contract 

W911NF-10-2-0076 

Approved for public release; distribution unlimited.
ii

REPORT DOCUMENTATION PAGE Form Approved 

OMB No. 0704-0188

Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering and maintaining the 

data needed, and completing and reviewing the collection information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing the 

burden, to Department of Defense, Washington Headquarters Services, Directorate for Information Operations and Reports (0704-0188), 1215 Jefferson Davis Highway, Suite 1204, Arlington, VA 22202-4302. 

Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to any penalty for failing to comply with a collection of information if it does not display a currently valid 

OMB control number. 

PLEASE DO NOT RETURN YOUR FORM TO THE ABOVE ADDRESS. 

1. REPORT DATE (DD-MM-YYYY)

March 2015 

2. REPORT TYPE 

Contractor Report 

3. DATES COVERED (From - To) 

07/2014– 08/2014 

4. TITLE AND SUBTITLE 

Uniform Tests of File Converters Using Unit Cubes 

5a. CONTRACT NUMBER 

W911NF-10-2-0076 

5b. GRANT NUMBER 

5c. PROGRAM ELEMENT NUMBER 

6. AUTHOR(S) 

Steven J Nichols 

5d. PROJECT NUMBER 

5e. TASK NUMBER 

5f. WORK UNIT NUMBER 

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 

US Army Research Laboratory 

ATTN: RDRL-SLB-S 

Aberdeen Proving Ground, MD 21005 

8. PERFORMING ORGANIZATION 

 REPORT NUMBER 

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S) 

11. SPONSOR/MONITOR'S REPORT 

 NUMBER(S) 

ARL-CR-0770 

12. DISTRIBUTION/AVAILABILITY STATEMENT 

Approved for public release; distribution unlimited. 

13. SUPPLEMENTARY NOTES 

14. ABSTRACT 

Ballistic Research Laboratory–Computer-Aided Design (BRL–CAD) is a solid-geometry modeling system used to design and 

develop geometric systems. It employs a sophisticated ray-tracing software system to evaluate materials, perform calculations, 

and render images of models of US Army vehicles. Ray-tracing large geometries could require millions of floating-point 

operations. Also included in BRL–CAD are converters that allow the user to convert from different geometry file types. The 

goal of this project is to create a uniform test for every file converter. This test is the creation of 1,000-unit cubes, from volume 

0 (0 × 0 × 0) to 1-meter cubed (1,000 × 1,000 × 1,000), each incrementing by 1 millimeter. This tests the functionality of each

converter and allows for comparison. This project was approached by first designing a program that would create 1,000 cubes 

of sizes incrementing by 1. The program was run in both of the BRL–CAD geometry editors before the files were changed to fit 

into the parameters of the other formats, allowing for the conversion of all different file types.

15. SUBJECT TERMS

converter, BRL–CAD, file, cube 

16. SECURITY CLASSIFICATION OF: 

17. LIMITATION 

 OF 

 ABSTRACT 

UU 

18. NUMBER 

 OF 

 PAGES 

14 

19a. NAME OF RESPONSIBLE PERSON

Geoffrey Sauerborn 

A. Report 

Unclassified

b. ABSTRACT 

Unclassified

c. THIS PAGE 

Unclassified

19b. TELEPHONE NUMBER (Include area code) 

410-278-6178 

Standard Form 298 (Rev. 8/98) 

Prescribed by ANSI Std. Z39.18 
iii

Contents 

List of Figures iv

Acknowledgments v

Student Biography vi

1. Introduction/Background 1

2. Experiment/Calculations 1

3. Results and Discussion 3

4. Summary and Conclusions 4

List of Symbols, Abbreviations, and Acronyms 5

Distribution List 6
iv

List of Figures 

Fig. 1 Old historic BRL–CAD logo (left) and current logo (right) ...............................................1

Fig. 2 Converter test cube set .........................................................................................................2

Fig. 3 Single cube in STL ..............................................................................................................2

Fig. 4 Single cube in .g ..................................................................................................................3
v

Acknowledgments 

The author wishes to acknowledge the mentorship of Geoffrey Sauerborn and Sean Morrison as 

well as the US Army Educational Outreach Program and the Army Science and Engineering 

Apprenticeship Program. 
vi

Student Biography 

Steven J Nichols is a senior at the Science and Mathematics Academy at the Aberdeen High 

School in Maryland. He hopes to attend college and earn a computer-engineering degree. This is 

his first research experience. 
1

1. Introduction/Background

Ballistics Research Laboratory–Computer-Aided Design (BRL–CAD) is a solid-modeling 

software system that was developed in the early 1980s as a way to model US Army vehicles. It 

uses an advanced ray-tracer to render models. Previously, it only rendered with Constructive 

Solid Geometry, in which Boolean operations are applied to simple primitives such as being 

added and subtracted from each other as well as using their intersection to create a nearly infinite 

number of shapes. Another feature of BRL–CAD is its set of geometry converters. Currently, it 

has the largest converter library in open-source software and is constantly expanding. Some 

converters have not been tested in decades, if at all. 

2. Experiment/Calculations

Before the actual experiment, about 2 weeks were spent digitizing historical tapes and learning 

the C language. During this time, tapes from as early as the 1970s were recorded and saved on a 

computer for their historical value. These tapes included tech demos of new features being added 

to BRL–CAD, promotional videos for BRL–CAD (Fig. 1 shows its historic logo), and even 

details of the historic Cray supercomputer. 

Fig. 1 Old historic BRL–CAD logo (left) and current logo (right) 
2

My main project was to support testing all BRL–CAD file converters using a set of unit cubes. 

This was a set of 1,000 cubes ranging in dimensions from 1 mm × 1 mm × 1 mm to 1,000 mm × 

1,000 mm × 1,000 mm. When rendered, these 1,000 cubes would appear as a single cube (as 

shown in Fig. 2). 

Fig. 2 Converter test cube set 

The converters were split into 3 groups: those with both importers and exporters, those with 

importers only, and those with exporters only. Those with both importers and exporters were the 

easiest as the only thing that was needed was to convert the file using the built-in converter in 

command line. The file was converted to the new format using command line and then converted 

back using a different built-in converter. One notable example was the STereoLithography (STL) 

format converter. This converts the entire geometry into a triangular mesh (as shown in Fig. 3) 

and otherwise remains the same in terms of volume and area. However, most of the converters 

keep the model in cubes (as displayed in Fig. 4). 

Fig. 3 Single cube in STL 
3

Fig. 4 Single cube in .g

For the importers only, the issue was “tricking” BRL–CAD into accepting the file as the file type 

that it required to convert back into a .g file. One example would be the FASTGEN format. This 

file type is able to raytrace completely flat (Plate Mode) geometry. Although it was not a 

problem faced during the project, it is something that needs to be considered in the future. 

For the exporters only, the main challenge was to find a way to convert the file back into a .g file 

without messing it up on the user end. This was less difficult than the importers because it was 

much more uniform in the way that the file needed to be. There were no file types that were in 

continual use that were exporters only. The only example was the ACAD format that was used 

by Lockheed Martin. 

3. Results and Discussion

From the converters tested, there were none that seemed to be incorrect from the tests. The tests 

involved 2 steps. The first was finding the volume of the bounding box of the entire shape. The 

bounding box is the smallest rectangular prism that can contain the entirety of the geometry. 

Because of the nature of the test (being made entirely out of cubes) the bounding box would also 

be the volume of the largest cube. A successful test would result in a volume of 1 m3

 or 

1,000,000,000 mm3. The second part would be to test each face of the cube using the rtarea

command, which finds the exposed surface area of all of the exposed objects. Any deviation of 
4

size in the bounding box would indicate that the size of the cubes was not preserved and instead 

was warped in some way, or the cubes’ dimensions were not that of the original. 

4. Summary and Conclusions

Converters in BRL–CAD allow for easy importation and exportation of files from various types. 

This is useful because of the necessity to bring in files to BRL–CAD as well as the demand for it 

as a fast and easy tool. This allows BRL–CAD to act as a hub for conversion and, in turn, 

increases the number of users of BRL–CAD. The converters all work well, considering the age 

of some of them and the fact that changes in their target formats are not under the control of 

BRL–CAD. However, this might be countered by the fact that BRL–CAD has also been 

maintained and has one of the longest histories of traceable software changes of any open-source 

project. 
5

List of Symbols, Abbreviations, and Acronyms 

ACAD AutoComputer-Aided Design 

BRL–CAD Ballistic Research Laboratory–Computer-Aided Design 

FASTGEN Fast Shotline Generator 

GDiff Geometry Differences 

GUI graphical user interface 

STL STereoLithography 
6

 1 DEFENSE TECHNICAL 

 (PDF) INFORMATION CTR 

 DTIC OCA 

 2 DIRECTOR 

 (PDF) US ARMY RSRCH LAB 

 RDRL CIO LL 

 IMAL HRA MAIL & RECORDS MGMT 

 1 GOVT PRINTG OFC 

 (PDF) A MALHOTRA 

 6 DIRECTOR 

 (PDF) US ARMY RSRCH LAB 

 RDRL SLB S 

 M PERRY 

 W BOWMAN 

 S MORRISON 

 N REED 

 G SAUERBORN 

 C YAPP