Bio-Bots-L-02_CAD

advertisement
Special Topics in Computer Science
Computational Modeling for
Snake-Based Robots
Computer-Aided Design
Crash Course
Week 1, Lecture 2
William Regli
Geometric and Intelligent Computing Laboratory
Department of Computer Science
Drexel University
http://gicl.cs.drexel.edu
1
Building Multidisciplinary Model
• Class Goal: create multidisciplinary
engineering models
• Challenge: Learn enough about each
discipline to create integrated models!
• Today: The role of 3D models and CAD
2
Computer Aided Design:
A Brief History
• In The Beginning…
1963
Ivan Sutherland’s
Sketchpad
• Modified
oscilloscope for
drawing
• The original CAD
system
Courtesy Marc Levoy @ Stanford U
3
History of the 3D graphics
industry
•
1960s:
•
1970’s:
•
1980s:
– Line drawings, hidden lines, parametric surfaces (B-splines…)
– Automated drafting & machining for car, airplane, and ships manufacturers
– Mainframes, Vector tubes (HP…)
– Software: Solids, (CSG), Ray Tracing, Z-buffer for hidden lines
–
–
–
–
Graphics workstations ($50K-$1M): Frame buffers, rasterizers , GL, Phigs
VR: CAVEs and head-mounted displays
CAD/CAM & GIS: CATIA, SDRC, PTC
Sun, HP, IBM, SGI, E&S, DEC
•
1990s:
•
2000s:
– PCs ($2K): Graphics boards, OpenGL, Java3D
– CAD+Videogames+Animations: AutoCAD, SolidWorks…, Alias-Wavefront
– Intel, many board vendors
– Laptops, PDAs, Cell Phones: Parallel graphic chips
– Everything will be graphics, 3D, animated, interactive
– Nvidia, Sony, Nokia
4
Buzzword Deconfliction
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Computer Aided Geometric Design (CAGD): Curves/surfaces
Solid Modeling: Representations and Algorithms for solids
Computational Geometry: Provably efficient algorithms
Computer-Aided Design (CAD): Automation of Shape Design
Computer-Aided Manufacturing (CAM): NC Machining
Finite Element Meshing (FEM): Construction and simulation
Animation: Capture, Design, Simulation of shape behavior
Visualization: Graphical interpretations of (large) nD datasets
Rendering: Making (realistic) pictures of 3D geometric shapes
Image-Based Rendering (IBR): Mix images and geometry
Computer Vision: Reconstruction of 3D models from images
Reverse Engineering: Fitting surfaces to scanned 3D points
Virtual Reality (VR): Immersion in interactive environments
Augmented Reality (AR): Track and mark-up what you see
5
What is CAD?
• Primary authoring tool for the geometry
and topology data associated with a
product (plan, train, auto, building, etc)
• CAD software is central to Product
Lifecycle Management and is often
integrated with manufacturing, analysis,
simulation and other engineering and
business functions
6
Different Aspects of CAD
7
2D Graphics
• Raster:
Pixels
–
–
–
–
–
–
X11 bitmap, XBM
X11 pixmap, XPM
GIF
TIFF
PNG
JPG
Lossy, jaggies when
transforming, good for
photos.
• Vector:
Drawing instructions
–
–
–
–
Postscript
CGM
Fig
DWG
Non-lossy, smooth when
scaling, good for line art and
diagrams.
8
Representing 3D Objects
• Approximate
– Facet / Mesh
• Just surfaces
– Voxel
• Volume info
• Exact
– Wireframe
– Parametric
Surface
– Solid Model
• CSG
• BRep
• Implicit Solid
Modeling
9
Representing 3D Objects
• Exact
– Precise model of
object topology
– Mathematically
represent all
geometry
• Approximate
– A discretization of
the 3D object
– Use simple
primitives to
model topology
and geometry
10
Negatives when
Representing 3D Objects
• Exact
– Complex data structures
– Expensive algorithms
– Wide variety of formats,
each with subtle nuances
– Hard to acquire data
– Translation required for
rendering
• Approximate
– Lossy
– Data structure sizes can
get HUGE, if you want
good fidelity
– Easy to break (i.e. cracks
can appear)
– Not good for certain
applications
• Lots of interpolation and
guess work
11
Positives when
Representing 3D Objects
• Exact
– Precision
• Simulation, modeling,
etc
– Lots of modeling
environments
– Physical properties
– Many applications (tool
path generation, motion,
etc.)
– Compact
• Approximate
– Easy to implement
– Easy to acquire
• 3D scanner, CT
– Easy to render
• Direct mapping to the
graphics pipeline
– Lots of algorithms
12
Two Major Types to Care About
(for this class)
• Mesh-based representations
• Solid Models
– As generated from CAD or modeling
systems
13
3D Mesh File Formats
Some common formats
• STL
• SMF
• OpenInventor
• VRML
14
Minimal
• Vertex + Face
• No colors, normals,
or texture
• Primarily used to
demonstrate
geometry algorithms
15
Full-Featured
• Colors / Transparency
• Vertex-Face Normals
(optional, can be computed)
•
•
•
•
Scene Graph
Lights
Textures
Views and Navigation
16
Subdivision Surfaces
• Coarse Mesh & Subdivision Rule
– Define smooth surface as limit of sequence of
algorithmic refinements
• Modify topology & interpolate neighboring vertices
• Used in graphics, animation and digital arts applications
17
Simple Mesh Format (SMF)
• Michael Garland
http://graphics.cs.uiuc.edu/~garland/
• Triangle data
• Vertex indices begin at 1
18
Stereolithography (STL)
• Triangle data +
Face Normal
• The de-facto
standard for rapid
prototyping
19
How STL Works
20
Open Inventor
• Developed by SGI
• Predecessor to
VRML
– Scene Graph
21
Virtual Reality Modeling
Language (VRML)
• SGML Based
• Scene-Graph
• Full Featured
22
Issues with 3D “mesh” formats
•
•
•
•
Easy to acquire
Easy to render
Harder to model with
Error prone
– split faces, holes, gaps, etc
23
Scanned Data
360° Scan
Single Scan
From Exact
Representation
24
How to scan (1)
25
How to scan (2)
26
Issues with Scanning
• Error and noise
• Time consuming
– Lots of human editing required to create
clean models
• Models can be very large
– Much larger than original BRep
27
Solid Models
28
3D solid model representations
•
•
•
•
•
•
•
•
•
Implicit models
Super/quadrics
Blobbies
Swept objects
Boundary representations
Spatial enumerations
Distance fields
Quadtrees/octrees
Stochastic models
29
3D solid model representations
•
•
•
•
•
•
•
•
•
Implicit models
Super/quadrics
Blobbies
Swept objects
Boundary representations
Spatial enumerations
Distance fields
Quadtrees/octrees
Stochastic models
30
Boundary Representation
Solid Modeling
• The de facto standard for CAD since ~1987
– BReps integrated into CAGD surfaces + analytic surfaces +
boolean modeling
• Models are defined by their boundaries
• Topological and geometric integrity constraints are
enforced for the boundaries
– Faces meet at shared edges, vertices are shared, etc.
31
Solids and Solid Modeling
• Solid modeling introduces a
mathematical theory of solid shape
– Domain of objects
– Set of operations on the domain of objects
– Representation that is
•
•
•
•
•
Unambiguous
Accurate
Unique
Compact
Efficient
32
Solid Objects and Operations
• Solids are point sets
– Boundary and interior
• Point sets can be operated on with
boolean algebra (union, intersect, etc)
33
Foley/VanDam, 1990/1994
Solid Object Definitions
• Boundary points
– Points where distance to the object and the
object’s complement is zero
• Interior points
– All the other points in the object
• Closure
– Union of interior points and boundary
points
34
Let’s Start Simple:
Polyhedral Solid Modeling
• Definition
– Solid bounded by
polygons whose
edges are each a
member of an even
number of polygons
– A 2-manifold: edges
members of 2
polygons
35
BRep Data Structure
• Vertex structure
– X,Y,Z point
– Pointers to n coincident edges
• Edge structure
–
–
–
–
2 pointers to end-point vertices
2 pointers to adjacent faces
Pointer to next edge
Pointer to previous edge
• Face structure
– Pointers to m edges
36
BRep Data Structures
• Winged-Edge Data
Structure (Weiler)
• Vertex
– n edges
• Edge
– 2 vertices
– 2 faces
• Face
– m edges
37
Pics/Math courtesy of Dave Mount @ UMD-CP
State of the Art:
BRep Solid Modeling
• … but much more than polyhedra
• Two main (commercial) alternatives
– All NURBS, all the time
• Pro/E, SDRC, …
– Analytic surfaces + parametric surfaces +
NURBS + …. all stitched together at edges
• Parasolid, ACIS, …
38
Issues in Boundary
Representation Solid Modeling
• Very complex data structures
– NURBS-based winged-edges, etc
• Complex algorithms
– manipulation, booleans, collision detection
•
•
•
•
•
Robustness
Integrity
Translation
Features
Constraints and Parametrics
39
Issues with 3D Set Operations
• Ops on 3D objects can create “non-3D objects”
or objects with non-uniform dimensions
• Objects need to be “Regularized”
– Take the closure of the interior
Input set
Closure
Interior
Regularized
41
Foley/VanDam, 1990/1994
Regularized Boolean
Operations
• 3D Example
– Two solids A and B
– Intersection leaves a
“dangling wall”
• A 2D portion hanging
off a 3D object
– Closure of interior
gives a uniform 3D
result
42
Pics/Math courtesy of Dave Mount @ UMD-CP
Boolean Operations
• Other Examples:
• (c) ordinary
intersection
• (d) regularized
intersection
– AB - objects on the
same side
– CD objects on
different sides
43
Foley/VanDam, 1990/1994
Boolean Operations
44
Foley/VanDam, 1990/1994
Constructive Solid Geometry
(CSG)
• A tree structure
combining primitives
via regularized
boolean operations
• Primitives can be
solids or half spaces
45
A Sequence of Boolean
Operations
• Boolean operations
• Rigid transformations
46
Pics/Math courtesy of Dave Mount @ UMD-CP
The Induced CSG Tree
47
Pics/Math courtesy of Dave Mount @ UMD-CP
The Induced CSG Tree
• Can also be
represented as a
directed acyclic
graph (DAG)
48
Pics/Math courtesy of Dave Mount @ UMD-CP
Issues with
Constructive Solid Geometry
• Non-uniqueness
• Choice of primitives
• How to handle more complex modeling?
– Sculpted surfaces? Deformable objects?
49
Issues with
Constructive Solid Geometry
• Non-Uniqueness
– There is more than
one way to model
the same artifact
– Hard to tell if A and B
are identical
50
Issues with CSG
• Minor changes
in primitive
objects greatly
affect outcomes
• Shift up top solid
face
51
Foley/VanDam, 1990/1994
Uses of CSG
Constructive Solid Geometry
• Found (basically) in
every CAD system
• Elegant,
conceptually and
algorithmically
appealing
• Good for
– Rendering, ray
tracing, simulation
– BRL CAD
52
CAD: Feature-Based Design
• CSG is the basic
machinery behind CAD
features
• Features are
– Local modifications to
object geom/topo with
engineering significance
– Often are additive or
subtractive mods to shape
• Hole, pocket, etc…
53
Parametric Modeling in CAD
• Feature relationships
• Constraints
54
Foley/VanDam, 1990/1994
CAD Formats
55
Common CAD Formats
• Standards
– STEP (ISO 103033)
– IGES
• Industry
– Solid Model (mostly just geom/topo)
• ACIS .sat, Parasolid .xmt, OpenCascade
– CAD Model
• Vendor specific
56
CAD Vendor Formats
• Pro/ENGINEER
– .prt (part) and .asm (assembly)
• UG/SDRC
– .mf1 (model file), .arc (archive), .xmt (transmit file)
• AutoCAD
– DXF, DWG
• Bentley
– DGN
• Etc etc
57
CAD Vendor Format Comments
• Some systems do not produce ‘solids’ by
default
– i.e. AutoCAD AEC models, while 3D, are not solids
• Formats are complex
• Translation is difficult
• Going from
– System #1 Native file  STEP (neutral file) 
System #2 Native file … creates data loss and can
introduce error
58
A brief history
• IGES V1.0 was released in 1981, the current version
V5.3 was released in 1996
– Geometry-based standard
– Non-unique definition for many entities
– Many IGES flavoring tools for repair
•
STEP v1.0 was released in 1994
– Product-based
– Have not heard about “step flavoring” tools
– An issue in both IGES and STEP: different CAD systems have
different tolerance, therefore a trim surface may become untrimmed
after translation.
– A very popular application of IGES/STEP is not data translation, it is
59
long term data retention.
IGES & STEP history
STEP AP203 E2
2010
Full interoperability?
IGES v5.3
STEP AP203
2000
Parametrics
Need construction history,
GD&T
A very successful application of IGES/STEP is long term data retention.
IGES v.1
1990
Many commercial direct translators
CAD system tolerance issues
1980
Multiple definitions for the same entity. Many IGES flavoring tools
60
Getting CAD Model for Legos
61
CAD Systems
• Drexel is site licensed for MicroStation
– https://software.drexel.edu
• Other tools available at GICL and MEM
– I-DEAS
– Pro/E
– SolidWorks
– AutoCAD
62
Spatial Occupancy
Enumerations
63
Spatial Occupancy
Enumeration
• Brute force
– A grid
• Pixels
– Picture elements
• Voxels
– Volume elements
• Quadtrees
– 2D representation
• Octrees
– 3D representation
– Extension of quadtrees
64
Brute Force Spatial
Occupancy Enumeration
• Impose a 2D/3D grid
– Like graph paper or
sugar cubes
• Identify occupied
cells
• Problems
– High fidelity requires
many cells
• “Modified”
– Partial occupancy
65
Foley/VanDam, 1990/1994
Quadtree
• Hierarchically
represent spatial
occupancy
• Tree with four
regions
– NE, NW, SE, SW
– “dark” if occupied
66
Foley/VanDam, 1990/1994
Octree
• 8 octants 3D space
– Left, Right, Up,
Down, Front, Back
67
Foley/VanDam, 1990/1994
Applications for Spatial
Occupancy Enumeration
• Many different
applications
–
–
–
–
–
–
GIS
Medical
Engineering Simulation
Volume Rendering
Video Gaming
Approximating real-world
data
– ….
68
Issues with Spatial Occupancy
Enumeration
• Approximate
– Kind of like faceting a surface, discretizing
3D space
– Operationally, the combinatorics (as
opposed to the numerics) can be
challenging
– Not as good for applications wanting exact
computation (e.g. tool path programming)
69
END
70
MBD or Model Based Definition
• 3D model is the sole data authority
• No more 2D drawings
• The 3D model should contain everything needed from
design to manufacturing, in particular, GD&T (Geometry
Dimensions and Tolerance).
• Therefore we need GD&T in data translation
• STEP 203 E2 implementation will help
71
MBD – Model Based Definition
• Boeing is transitioning rapidly to a model based environment.
• Data Delivery to supplier must be formatted robustly and efficiently and in a
standard open format.
• Data must be “purposed” to the downstream activity to protect IP and KBE.
• Relational design chains must be preserved for interoperability.
• Attribute and Meta data must be passed in a Xlation and purposed.
• New materials will bring new requirements for data exchange.
72
The Design Cycle
PROCESS
Tools accomplish the
process
T
O
O
L
S
Data format enables the
tool
INNOVATION!
DATA
FORMAT
Process drives out
requirements
R
E
Q
’s
Requirements are
accommodated by data
structure
73
Feature-based translation
• Users expect translated model to be
modifiable at the receiving site
• Feature-based translation or
construction history or STEP AP203 E2
• Feature-reconstruction bypasses CAD
system tolerance issues, however, it
brings in another set of problems –
– There are many incompatible features
between CAD systems
74
CAD Data Translation Validation
• Users have been asking for it since
Day 1.
• What to validate? Do you care about
these changes?
– geometry or shape
– topology – one sphere becomes two
semi-spheres
– entity count
– math – exact representation of a circle by
a NURBS spline
75
– mass property
Factors influence the quality of
data translation
Design standards
• Design methodology
• Design quality control
• Release process with a
model quality check
•
76
Design processes influence data
translation
needs
• paper drawing – no need for data translation
• 2D CAD drawing – dxf or IGES
• 3D CAD design – IGES or STEP
• 3D CAD solid design - STEP
• PLM – Product Lifecycle Management
• Data management is the center of the universe
Designers must go to PDM to get appropriate CAD models
• CAD is one of many tools within PLM
• CAD data translation must go with PDM
(CAD model + data maturity level + BOM + relational
design…+etc)
77
CAD Data Translation
Challenges
• CAD systems were design for CAD, not data translation
• Data translation is a step-child of a CAD system
• Do CAD vendors care about data translation?
• No, this is a step-child.
• Yes, make sure it does not work well to export my
data.
• STEP AP203 E2 implementation – How to get all major
CAD vendors involved?
78
What we do not want to translate
• Company intellectual property embedded in
CAD models
– KBE (Knowledge Based Engineering) data
– Specific math formulas to create curves and
surfaces
– Third party application software data engineering notes
– in-house developed macros
• This is not a problem with current IGES,
STEP or other direct translators. However, 79we
are concerned with data exchange with
How does Boeing perform data
translation?
• Point solution Xlators tailored for specific
native formats are utilized at Boeing
• Healthy use of iges and STEP for
exchange of data.
• Validation shares equal priority with
Xlation
• Boeing has adopted a common native
toolset from Dassault Systems’ as a go
forward strategy.
80
•
Introduction
• Past – STEP expectations
not met, what has
accomplished, weak areas,
work arounds, etc.
• Present – New standards
evolving, current capabilities,
limitations, work arounds, etc.
• Future – Full relational design
81
Surface Models
• Basic idea:
– Represent a model as a set of
faces/patches
• Limitations:
– Topological integrity; how do faces “line
up”?; which way is ‘inside’/ ‘outside’?
• Used in many CAD applications
– Why? They are fine for drafting and
rendering, not as good for creating true
physical models
82
Implicit Solid Modeling
• Computer Algebra meets CAD
• Idea:
– Represents solid as the set of points where an
implicit global function takes on certain value
• F(x,y,z) < val
– Primitive solids are combined using CSG
– Composition operations are implemented by
functionals which provide an implicit function for
the resulting solid
83 UW
From M.Ganter, D. Storti, G. Turkiyyah @
Quadratic Surfaces
• Sphere
x 2  y 2  z2  r2
• Ellipsoid
 • Torus

2
2
2
x  y  z 
   
r 
  r   1
r
 x   y   z 
2

2
y 


x
r 
   
r 


r
 x   y 

2
2


z
 
  1
 
r
 z 

• General form

a  x 2  b  y 2  c  z 2  2 f  yz  2g  xz 
2h  xy  2 p  x  2q  y  2r  z  d  0
84
Superellipsoid Surfaces
• Generalization of
ellipsoid
• Control parameters s1
and s2
 2 / s2  2 / s2 s2 / s1  2 / s1
x   y    z   1
r  
rx 
rz 
 y  

• If s1 = s2 =1 then regular
ellipsoid
• Has an implicit and
parametric form!
s2
s1
85
CSG with Superquadrics
86
CSG with Superellipsoids
87
End
88
Download