Upload
barb
View
35
Download
2
Tags:
Embed Size (px)
DESCRIPTION
U.S. Army Research, Development and Engineering Command. NURBS Methodology for BRL-CAD 26 July 2010. Edwin Davisson Software Development Branch Ballistics & NBC Division 410-278-6300/ [email protected]. Approved for Public Release – Distribution Unlimited. - PowerPoint PPT Presentation
Citation preview
U.S. Army Research, Development and Engineering CommandU.S. Army Research, Development and Engineering Command
Edwin DavissonSoftware Development BranchBallistics & NBC Division410-278-6300/ [email protected]
NURBS Methodology for BRL-CAD
26 July 2010
Approved for Public Release – Distribution Unlimited
First, some definitions:What are NURBS?
2
NURBS are non-uniform rational B-splines.
They are a mathematical means by which complex (or simple) geometries can be modeled.
Most commercial modeling systems, e.g. Pro/E or Rhino, use NURBS in a boundary representation (brep) of geometry, in which faces of an object are modeled by NURBS surface patches that are trimmed to fit together at object edges.
The resulting collection of patches is a “trimmed NURBS brep”.
I have loosely used the term NURBS in what follows to mean trimmed NURBS breps and their associated details.
Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
A very simple example of a trimmed NURBS brep
3Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
We are not generating geometry as quickly as needed for vulnerability studies and often must rely on codes that reduce fidelity and introduce errors that must be fixed.
– Preparation of geometry is the most time-consuming part of a vulnerability analysis.
– NURBS geometry is often provided by manufacturers to our geometry modeling team, but has not been directly useable for vulnerability analyses.
– NURBS models currently must be converted to triangles, reducing the fidelity of the models, introducing overlapping regions, and requiring weeks of correction.
If we implement tools to use NURBS models directly, we can speed up preparation of geometry, avoid conversion errors, and maintain model fidelity.
What problem is being solved and why is it important?
4Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
More modelers: still left with reduced model fidelity and long timelines due to errors needing correction.
Improved tools for dealing with faceted models: still left with reduced model fidelity and errors needing correction.
Exclusive use of commercial ray-tracer tied to a single provider: still left with a risk for our core business.
Adaptation is quicker when we are in control of the resources.
Alternatives to building our own capability
Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
5
Currently: loss of model fidelityand more work due to overlaps
Vulnerability/ Lethality
analysis codes (MUVES-S2, MUVES 3,..)
BRL-CADRay-tracer
conversionto facets (under Pro/E control)
Tedious removal of overlaps introduced in conversion. (A week or more per description)
6
BRL-CAD geometry file
(facetized)
Pro/E model (NURBS) file
Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
A busy map of our planned tools/capabilities
BRL-CAD editor, MGED
Vulnerability/ Lethality
analysis codes (MUVES-S2, MUVES 3,..)
BRL-CADray-tracer
Exporter
NURBSBooleanevaluator
NURBS facetizer
NURBS healingcode
7
Pro/E model (NURBS) filePro/E model (NURBS) fileCommercial
modeler (NURBS) file BRL-CAD
(trimmed NURBS) file
BRL-CADunevaluated(NURBS) file
BRL-CADgeometry (facetized)
STEP (NURBS) file
Analysis results
Any BRL-CADgeometry
file
CSG to NURBS converter
Importer
Improved editor
NURBS ray-tracer,(Optimized for speed )
Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
What have we worked on and what are we doing?
BRL-CAD editor, MGED
Vulnerability/ Lethality
analysis codes (MUVES-S2, MUVES 3,..)
BRL-CADray-tracer
Exporter
NURBSBooleanevaluator
NURBS facetizer
NURBS healingcode (Optimized
for speed )
8
Pro/E model (NURBS) filePro/E model (NURBS) fileCommercial
modeler (NURBS) file BRL-CAD
(trimmed NURBS) file
BRL-CADunevaluated(NURBS) file
BRL-CADgeometry (facetized)
STEP (NURBS) file
Analysis results
Any BRL-CADgeometry
file
CSG to NURBS converter
Importer
Improved editor
NURBS ray-tracer,
Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
Two BRL-CAD imports of STEP files from different sources
Cam shaft from a Kodak camera. STEP file found online and converted to BRL-CAD. Original modeling system unknown.
Duck modeled in Rhino, exported to STEP, and imported (step-g) to BRL-CAD.
9Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
Our newest NURBS ray-tracer is more accurate and faster.
FY08
Current raytrace, end of FY09
FY09
In FY08 the NURBS ray-tracing images were riddled with errors, mostly near the edges where two parameter patches intersect.
In FY09 new ray-tracing preparation algorithms were developed that eliminated nearly all errors and improved ray-tracing
speed as well.10Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
The current ray-tracer accurately renders complex NURBS models
OpenMoko cell phone.
About 70 regions.
Region size ranging from about 6 surface patches to over 100 patches.
11Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
All BRL-CAD primitives have NURBS representations, shown here:
12Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
We will be done when we can:– reliably import NURBS-based models from STEP into
BRL-CAD without introducing overlapping regions.– visualize and manipulate BRL-CAD NURBS models in
a shaded display mode.– reliably apply an optimized BRL-CAD NURBS ray-
tracer to BRL-CAD NURBS models for use in vulnerability analyses.
– export BRL-CAD NURBS to STEP (providing a round-trip capability in conjunction with the STEP NURBS importer to BRL-CAD).
– convert existing BRL-CAD models to trimmed NURBS in BRL-CAD to support transitioning to these tools.
How will we know when we are done ?
13Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
Collaborators:– Geometric Modeling Team– MUVES 3 developers– MUVES-S2 developers
Customers:– National Ground Intelligence Center– Joint Technical Coordination Group– Vulnerability analysts
Contributors:– Open source contributors (47 permitted to commit; 26 of the 47
are/have been government or contractor. Of those 47, 18 have committed within the last 12 months; 11 of the 18 are government/contractor/or student.)
– Participants in the Google Summer of Code
Collaborators, customers,and contributors
14Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
• Tolerances and numerics are, even more than we expected them to be, key in providing reliable NURBS capabilities.
• Development of these tools is much faster when several people have dedicated time to immerse themselves in the issues.
• Close interaction between developers and users vastly improves the resulting product.
• Developers are most productive when tasks are matched with interests.
What have we learned?
15Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
During the next two to three years:
• Improve STEP converter and optimize ray-tracer, applying user-testing feedback.
• Develop code to heal NURBS to get reliable representations of imported NURBS models.
• Work on boundary-aligned tessellations of trimmed NURBS for shaded display viewing and, when needed, for analysis codes requiring facetized geometry.
• Develop a methodology for evaluating Boolean operations to get trimmed BRL-CAD NURBS.
Next tasks for the Advanced Computer Systems Team
16Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
Interactive Raytracing: The nirt Command by Clifford Yapp, April 2009, ARL-CR-624, prepared by Quantum Research International, Inc. under contract W911QX-06-F-0057.
Vehicle Tire and Wheel Creation in BRL-CAD by Clifford Yapp, April 2009, ARL-CR-625, prepared by Quantum Research International, Inc. under contract W911QX-06-F-0057.
Various contributions to documentation and discussion at brl-cad.org .
Recent publications
17Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited
Edwin DavissonSoftware Development Branch
Ballistics & NBC Division
410-278-6300/ [email protected]
Questions?
18Approved for Public Release – Distribution Unlimited
Approved for Public Release – Distribution Unlimited