44
Representation Issues in Data Exchange for RP-LM Sara McMains U.C. Berkeley

Representation Issues in Data Exchange for RP-LM

  • Upload
    rozene

  • View
    39

  • Download
    2

Embed Size (px)

DESCRIPTION

Representation Issues in Data Exchange for RP-LM. Sara McMains U.C. Berkeley. RP-LM Data Exchange. Read Validate Scale Position/orient Slice Rasterize. Network. Designer. Transmit. Manufacturer. Translate Write. RP-LM Data Exchange. Read Validate Scale Position/orient Slice - PowerPoint PPT Presentation

Citation preview

Page 1: Representation Issues in Data Exchange for RP-LM

Representation Issues in Data Exchange for RP-LM

Sara McMains

U.C. Berkeley

Page 2: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 3: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 4: Representation Issues in Data Exchange for RP-LM

Data Translation

• Easiest for the designer:– Format that includes all design constructs

• B-reps– Tesselated

– Trimmed NURBS

• CSG• Sweeps• Voxels• Parametric• Surface equations

Page 5: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 6: Representation Issues in Data Exchange for RP-LM

Data Translation

• Easiest for the manufacturer:– Simplest possible format

• Lowest common denominator• This is why STL is still being used!

Page 7: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 8: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 9: Representation Issues in Data Exchange for RP-LM

ASCII or Binary?

• ASCII– Data exchange always imperfect

• Humans will end up examining files

• Binary– Compact– Computers store binary numbers

• Simple fractional decimals cannot be exactly represented as floating point values

Page 10: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 11: Representation Issues in Data Exchange for RP-LM

Sources of Cracks in STL

• Round-off– Instancing with geometric transformations

Page 12: Representation Issues in Data Exchange for RP-LM

Require Shared Vertices

• Specify vertex coordinates only once

• All geometry that shares vertex references same vertex

• Compact for transmission

• Forces designer to think about connectivity

Page 13: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 14: Representation Issues in Data Exchange for RP-LM

Sources of Cracks in STL

– Boolean trim curves

Page 15: Representation Issues in Data Exchange for RP-LM

Boolean Trim Curves

• Intersection curve higher order than input

• Mapped back onto input patches– Approximated in parametric space – Won’t match exactly on two patches

• Connectivity of trimmed patches should be specified explicitly

Page 16: Representation Issues in Data Exchange for RP-LM

File Repair Techniques: Local• Triangulate between unmatched facet edges

– Bohn and Wozny ’92– Barequet and Sharir ’95

• Merges edges for small cracks,• Triangulate remaining holes

– Barequet and Kumar ’97

• Adding triangles may introduce intersections;• Best match problem NP complete

Page 17: Representation Issues in Data Exchange for RP-LM

File Repair Techniques: Global

• Build a Binary Space Partitioning tree, identify solid regions,

output boundary– Murali & Funkhouser ’97

• Scalability issues

Page 18: Representation Issues in Data Exchange for RP-LM

Better STL Generation

• Curved patch to STL conversion without gaps:Match discretized trim curves, User-supplied tolerances

– Dolenc ’93 – Sheng & Meier ’95

• Prevent intersections when triangulating

Page 19: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 20: Representation Issues in Data Exchange for RP-LM

Nesting Information

• Should nesting of shells be transmitted?– Designer intent– But how is nesting generated?

• Computed from b-rep?

– What if it disagrees with geometry?• Who do you believe - geometry or topology?

Page 21: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 22: Representation Issues in Data Exchange for RP-LM

Units

• Require units!

• Lack of units invites educated guesses

• Default unit not good enough– Assumptions may differ– Require explicit specification

• Force assumptions to be visible

Page 23: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 24: Representation Issues in Data Exchange for RP-LM

Input Captured in Layers

• E.g.– CT scans– Digitized input

• Can we manufacture these layers directly?

• Do we want to?

Page 25: Representation Issues in Data Exchange for RP-LM

Matched Layer Thicknesses

Page 26: Representation Issues in Data Exchange for RP-LM

Unmatched Layer Thicknesses

Page 27: Representation Issues in Data Exchange for RP-LM

Surface Reconstruction

• Interpolate between input slices– Interpolation smooths boundary– Additional processing can further smooth

coarse input– Complete freedom to re-orient surface

• Faster build times

Page 28: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit

Page 29: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit unions

Page 30: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit unions

Page 31: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 32: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 33: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 34: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 35: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 36: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 37: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Implicit differences

(2D example)

Page 38: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Self-intersections

(2D example)

Page 39: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Self-intersections

(2D example)

Page 40: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Self-intersections

(2D example)

Page 41: Representation Issues in Data Exchange for RP-LM

Implicit Booleans

• Even if exchange format doesn’t include explicit Booleans, implicit Booleans will arise

• Manufacturers won’t categorically reject

• Need semantics for implicit Booleans

Page 42: Representation Issues in Data Exchange for RP-LM

non-2-manifold

Scope: Solids

• Optimize for 2-manifolds– 2 directed “edge-uses” per undirected edge

• Should also support non-manifold solids

2-manifold

Page 43: Representation Issues in Data Exchange for RP-LM

Pseudo-2-Manifolds

• Geometry not 2-manifold

• Represented topology is 2-manifold

Page 44: Representation Issues in Data Exchange for RP-LM

RP-LM Data Exchange

Designer

• Read• Validate• Scale• Position/orient• Slice• Rasterize

Manufacturer

Network

• Translate• Write

• Transmit