Скачать презентацию Special Topics in Computer Science Computational Modeling for Скачать презентацию Special Topics in Computer Science Computational Modeling for

6fef938b353aaf45640fd54ae319fccf.ppt

  • Количество слайдов: 87

Special Topics in Computer Science Computational Modeling for Snake-Based Robots Computer-Aided Design Crash Course 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 Building Multidisciplinary Model • Class Goal: create multidisciplinary engineering models • Challenge: Learn enough about each discipline to create integrated models! • Today: The role of 3 D models and CAD 2

Computer Aided Design: A Brief History • In The Beginning… 1963 Ivan Sutherland’s Sketchpad 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 3 D graphics industry • 1960 s: • 1970’s: • 1980 History of the 3 D graphics industry • 1960 s: • 1970’s: • 1980 s: • 1990 s: • 2000 s: – 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 ($50 K-$1 M): Frame buffers, rasterizers , GL, Phigs VR: CAVEs and head-mounted displays CAD/CAM & GIS: CATIA, SDRC, PTC Sun, HP, IBM, SGI, E&S, DEC – PCs ($2 K): Graphics boards, Open. GL, Java 3 D – CAD+Videogames+Animations: Auto. CAD, Solid. Works…, Alias-Wavefront – Intel, many board vendors – Laptops, PDAs, Cell Phones: Parallel graphic chips – Everything will be graphics, 3 D, animated, interactive – Nvidia, Sony, Nokia 4

Buzzword Deconfliction • • • • Computer Aided Geometric Design (CAGD): Curves/surfaces Solid Modeling: 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) n. D datasets Rendering: Making (realistic) pictures of 3 D geometric shapes Image-Based Rendering (IBR): Mix images and geometry Computer Vision: Reconstruction of 3 D models from images Reverse Engineering: Fitting surfaces to scanned 3 D 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 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 Different Aspects of CAD 7

2 D Graphics • Raster: Pixels – – – X 11 bitmap, XBM X 2 D Graphics • Raster: Pixels – – – X 11 bitmap, XBM X 11 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 3 D Objects • Approximate – Facet / Mesh • Just surfaces – Representing 3 D Objects • Approximate – Facet / Mesh • Just surfaces – Voxel • Volume info • Exact – Wireframe – Parametric Surface – Solid Model • CSG • BRep • Implicit Solid Modeling 9

Representing 3 D Objects • Exact – Precise model of object topology – Mathematically Representing 3 D Objects • Exact – Precise model of object topology – Mathematically represent all geometry • Approximate – A discretization of the 3 D object – Use simple primitives to model topology and geometry 10

Negatives when Representing 3 D Objects • Exact – Complex data structures – Expensive Negatives when Representing 3 D 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 3 D Objects • Exact – Precision • Simulation, modeling, etc Positives when Representing 3 D 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 • 3 D 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 Two Major Types to Care About (for this class) • Mesh-based representations • Solid Models – As generated from CAD or modeling systems 13

3 D Mesh File Formats Some common formats • STL • SMF • Open. 3 D Mesh File Formats Some common formats • STL • SMF • Open. Inventor • VRML 14

Minimal • Vertex + Face • No colors, normals, or texture • Primarily used 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) • • 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 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. uiuc. edu/~garland/ • Triangle data Simple Mesh Format (SMF) • Michael Garland http: //graphics. uiuc. edu/~garland/ • Triangle data • Vertex indices begin at 1 18

Stereolithography (STL) • Triangle data + Face Normal • The de-facto standard for rapid Stereolithography (STL) • Triangle data + Face Normal • The de-facto standard for rapid prototyping 19

How STL Works 20 How STL Works 20

Open Inventor • Developed by SGI • Predecessor to VRML – Scene Graph 21 Open Inventor • Developed by SGI • Predecessor to VRML – Scene Graph 21

Virtual Reality Modeling Language (VRML) • SGML Based • Scene-Graph • Full Featured 22 Virtual Reality Modeling Language (VRML) • SGML Based • Scene-Graph • Full Featured 22

Issues with 3 D “mesh” formats • • Easy to acquire Easy to render Issues with 3 D “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 Scanned Data 360° Scan Single Scan From Exact Representation 24

How to scan (1) 25 How to scan (1) 25

How to scan (2) 26 How to scan (2) 26

Issues with Scanning • Error and noise • Time consuming – Lots of human 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 Solid Models 28

3 D solid model representations • • • Implicit models Super/quadrics Blobbies Swept objects 3 D solid model representations • • • Implicit models Super/quadrics Blobbies Swept objects Boundary representations Spatial enumerations Distance fields Quadtrees/octrees Stochastic models 29

3 D solid model representations • • • Implicit models Super/quadrics Blobbies Swept objects 3 D 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 – 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 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 • 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/Van. Dam, 1990/1994

Solid Object Definitions • Boundary points – Points where distance to the object and 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 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 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 • 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 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, 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 3 D Set Operations • Ops on 3 D objects can create Issues with 3 D Set Operations • Ops on 3 D objects can create “non-3 D 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/Van. Dam, 1990/1994

Regularized Boolean Operations • 3 D Example – Two solids A and B – Regularized Boolean Operations • 3 D Example – Two solids A and B – Intersection leaves a “dangling wall” • A 2 D portion hanging off a 3 D object – Closure of interior gives a uniform 3 D result 42 Pics/Math courtesy of Dave Mount @ UMD-CP

Boolean Operations • Other Examples: • (c) ordinary intersection • (d) regularized intersection – Boolean Operations • Other Examples: • (c) ordinary intersection • (d) regularized intersection – AB - objects on the same side – CD objects on different sides 43 Foley/Van. Dam, 1990/1994

Boolean Operations 44 Foley/Van. Dam, 1990/1994 Boolean Operations 44 Foley/Van. Dam, 1990/1994

Constructive Solid Geometry (CSG) • A tree structure combining primitives via regularized boolean operations 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 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 47 Pics/Math courtesy of Dave Mount @ UMD-CP

The Induced CSG Tree • Can also be represented as a directed acyclic graph 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 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 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 Issues with CSG • Minor changes in primitive objects greatly affect outcomes • Shift up top solid face 51 Foley/Van. Dam, 1990/1994

Uses of CSG Constructive Solid Geometry • Found (basically) in every CAD system • 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 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/Van. Dam, 1990/1994 Parametric Modeling in CAD • Feature relationships • Constraints 54 Foley/Van. Dam, 1990/1994

CAD Formats 55 CAD Formats 55

Common CAD Formats • Standards – STEP (ISO 103033) – IGES • Industry – Common CAD Formats • Standards – STEP (ISO 103033) – IGES • Industry – Solid Model (mostly just geom/topo) • ACIS. sat, Parasolid. xmt, Open. Cascade – CAD Model • Vendor specific 56

CAD Vendor Formats • Pro/ENGINEER –. prt (part) and. asm (assembly) • UG/SDRC –. CAD Vendor Formats • Pro/ENGINEER –. prt (part) and. asm (assembly) • UG/SDRC –. mf 1 (model file), . arc (archive), . xmt (transmit file) • Auto. CAD – DXF, DWG • Bentley – DGN • Etc etc 57

CAD Vendor Format Comments • Some systems do not produce ‘solids’ by default – CAD Vendor Format Comments • Some systems do not produce ‘solids’ by default – i. e. Auto. CAD AEC models, while 3 D, 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 V 1. 0 was released in 1981, the current A brief history • IGES V 1. 0 was released in 1981, the current version V 5. 3 was released in 1996 – Geometry-based standard – Non-unique definition for many entities – Many IGES flavoring tools for repair • STEP v 1. 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 AP 203 E 2 2010 Full interoperability? IGES v IGES & STEP history STEP AP 203 E 2 2010 Full interoperability? IGES v 5. 3 STEP AP 203 2000 Parametrics Need construction history, GD&T A very successful application of IGES/STEP is long term data retention. IGES v. 1 1980 1990 Many commercial direct translators CAD system tolerance issues Multiple definitions for the same entity. Many IGES flavoring tools 60

Getting CAD Model for Legos 61 Getting CAD Model for Legos 61

CAD Systems • Drexel is site licensed for Micro. Station – https: //software. drexel. CAD Systems • Drexel is site licensed for Micro. Station – https: //software. drexel. edu • Other tools available at GICL and MEM – I-DEAS – Pro/E – Solid. Works – Auto. CAD 62

Spatial Occupancy Enumerations 63 Spatial Occupancy Enumerations 63

Spatial Occupancy Enumeration • Brute force – A grid • Pixels – Picture elements Spatial Occupancy Enumeration • Brute force – A grid • Pixels – Picture elements • Voxels – Volume elements • Quadtrees – 2 D representation • Octrees – 3 D representation – Extension of quadtrees 64

Brute Force Spatial Occupancy Enumeration • Impose a 2 D/3 D grid – Like Brute Force Spatial Occupancy Enumeration • Impose a 2 D/3 D grid – Like graph paper or sugar cubes • Identify occupied cells • Problems – High fidelity requires many cells • “Modified” – Partial occupancy 65 Foley/Van. Dam, 1990/1994

Quadtree • Hierarchically represent spatial occupancy • Tree with four regions – NE, NW, Quadtree • Hierarchically represent spatial occupancy • Tree with four regions – NE, NW, SE, SW – “dark” if occupied 66 Foley/Van. Dam, 1990/1994

Octree • 8 octants 3 D space – Left, Right, Up, Down, Front, Back Octree • 8 octants 3 D space – Left, Right, Up, Down, Front, Back 67 Foley/Van. Dam, 1990/1994

Applications for Spatial Occupancy Enumeration • Many different applications – – – GIS Medical 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, Issues with Spatial Occupancy Enumeration • Approximate – Kind of like faceting a surface, discretizing 3 D 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 END 70

MBD or Model Based Definition • 3 D model is the sole data authority MBD or Model Based Definition • 3 D model is the sole data authority • No more 2 D drawings • The 3 D 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 E 2 implementation will help 71

MBD – Model Based Definition • Boeing is transitioning rapidly to a model based 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 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 • Users expect translated model to be modifiable at the receiving site • Feature-based translation or construction history or STEP AP 203 E 2 • 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. 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 • 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 Design processes influence data translation needs • paper drawing – no need for data translation • 2 D CAD drawing – dxf or IGES • 3 D CAD design – IGES or STEP • 3 D 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 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 AP 203 E 2 implementation – How to get all major CAD vendors involved? 78

What we do not want to translate • Company intellectual property embedded in CAD 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, we 79 are concerned with data exchange with

How does Boeing perform data translation? • Point solution Xlators tailored for specific native 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. • Process>Requirements>Data. Structure>80

Introduction • Past – STEP expectations not met, what has accomplished, weak areas, work 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 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 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 From M. Ganter, D. Storti, G. Turkiyyah @ UW

Quadratic Surfaces • Sphere • Ellipsoid • Torus • General form 84 Quadratic Surfaces • Sphere • Ellipsoid • Torus • General form 84

Superellipsoid Surfaces • Generalization of ellipsoid • Control parameters s 1 and s 2 Superellipsoid Surfaces • Generalization of ellipsoid • Control parameters s 1 and s 2 s 1 • If s 1 = s 2 =1 then regular ellipsoid • Has an implicit and parametric form! 85

CSG with Superquadrics 86 CSG with Superquadrics 86

CSG with Superellipsoids 87 CSG with Superellipsoids 87

End 88 End 88