Presentation is loading. Please wait.

Presentation is loading. Please wait.

Schloss Dagstuhl, September 2014 Shape Representation Carlo H. Séquin University of California, Berkeley Slicing Less than Perfect B-Reps and the Winding-Number.

Similar presentations


Presentation on theme: "Schloss Dagstuhl, September 2014 Shape Representation Carlo H. Séquin University of California, Berkeley Slicing Less than Perfect B-Reps and the Winding-Number."— Presentation transcript:

1 Schloss Dagstuhl, September 2014 Shape Representation Carlo H. Séquin University of California, Berkeley Slicing Less than Perfect B-Reps and the Winding-Number Paradigm

2 Discussion Points: Shape representation issues at the start and conclusion of designing RP models u Focus on HCI difficulties and CAD problems, at the start and end of a design / modeling project: u How to get started?  How to get your ideas into the CAD system. u How to finish?  How to get your model properly 3D printed.

3 Recent Designs and Models “Evolving Trefoil” Double-Boy Klein Bottle 4-dimensional 120-Cell “Inverted double-sock” Klein bottle

4 Discussion Topic #2: Start: Concept Input u Interactive Inverse 3D Modeling Finish: Obtaining Tangible Output u Slicing Imperfect.STL files

5 Making Plastic RP Models 3D model of the regular 4-dimensional 120-Cell

6 Acceptable Model Files u The STL file should be a proper watertight 2-manifold, with no cracks or intersecting faces. u All faces should have their normals point outwards, i.e., away from material. u In this boundary mesh every edge should be used exactly twice, once each in opposite directions.

7 An Actual Model of the 120-Cell u Based on the way it is constructed, such a model may look quite differently. u My model was formed by projecting all edges from 4D to 3D, and then replacing each edge with a prism of reasonable diameter, so that a robust model results. u But then we do not get a manifold B-Rep ! At every vertex there are 4 intersecting prisms, plus, perhaps, an additional sphere! u (And for the 600-Cell there would be 12 cylinders!) u How does an RP machine handle such a file ?

8 “Tetra-Boy Surface” A single-sided, non-orientable surface of genus 4

9 Klein Bottle from Mirrored Boy-Caps Polyhedron Subdvision Gridded

10 STL-File in QuickSlice (Stratasys 1650) Front view Top View

11 And Things Can Get Much Worse! u Slicing the gridded “TetraBoy” surface: The.STL file displayed by QuickSlice “Looks OK” The.SSL slices generated by QuickSlice: Lots of stuff missing!

12 One of Many Bad Layers many missing struts incomplete features

13 Model Clean-up Ideally all models should be cleaned up … u But general 3D Model Clean-up is very hard !!! u I don’t know of any program that can do this, even for only “moderately flawed” models.

14 QuickSlice Idiosyncrasies What happens at overlapping / intersecting contours? u Slices every facet individually, ignoring orientation. u Re-constructs contours by joining line segments. u In general, uses an XOR “in/out” definition. u Flips contour orientation “if it seems to help”... l On concentric circles the inner contour is flipped. l On overlapping circles no flip is introduced; but a void then occurs in overlap area. But: Slicing programs could do a better job, with a quite simple approach...

15 “Bad”.STL Files If they come from a CAD tool, errors are not random: u NOT: randomly missing triangles u NOT: randomly mis-oriented faces u More likely: overlapping “legal” parts: u Unexecuted Booleans: mostly unions, since this works fine for graphics displays. u Possibly self-intersecting sweeps, e.g. in tight knots or in Klein bottles. u Very likely, the facet orientation is trustworthy...  Let’s use this information properly!

16 2D Model Interpretation Intelligent 2D model clean-up is easy: Use The Winding Number Paradigm ! u Slice all triangles; u Use facet normals to produce oriented line segments (CCW contours around inside material.) u Define “inside” with positive winding numbers. u Overlapping parts produce winding numbers > 1.

17 Review of Winding Number u Defined only for closed curves (in the plane). u Defined with respect to a (sample) point. u Evaluation along scan-line with up-down counter.

18 Why Is This a Good Thing? u Implicit assumption is that designer wants Boolean union or (simple = 1 level) difference. Positive winding numbers means: inside. Negative winding numbers get ignored. u Simple overlapping parts will be union-ed together!

19 Works Even with Negative Inside Contours u OK to have hollow parts with clockwise contours inside; This guarantees proper subtraction by winding number.

20 Urgent Plea... Please use your influence to promote the Winding Number Paradigm! A lot of headaches with slicing software will then disappear!

21 Discussion !

22 ½ of “Evolving Trefoil”

23


Download ppt "Schloss Dagstuhl, September 2014 Shape Representation Carlo H. Séquin University of California, Berkeley Slicing Less than Perfect B-Reps and the Winding-Number."

Similar presentations


Ads by Google