Download presentation
Presentation is loading. Please wait.
1
Joel Daniels II University of Utah GDC Group Visually Smooth Blending Surfaces for Fabrication of Physical Visualizations Joel Daniels II Master’s Thesis Defense November 2005 Elaine Cohen
2
Joel Daniels II University of Utah GDC Group Molecular Visualization Written methodology –Portray molecular connections Stick and ball models –Physical visualization –Visualize 3D structure –Tactile feedback –Manipulate forms
3
Joel Daniels II University of Utah GDC Group Virtual environments –Multiple levels of data –Interaction between molecules –Intricate molecular models –Tactile feedback? Molecular Visualization
4
Joel Daniels II University of Utah GDC Group Molecular Visualization Aim to re-create physical visualizations
5
Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Evolved to the use of virtual computer environments.
6
Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Return to the physical visualizations?
7
Joel Daniels II University of Utah GDC Group Evolution of Molecular Visualization Improvement of an old technique! –These are new physical visualizations –Multiple levels of data represented within a single form
8
Joel Daniels II University of Utah GDC Group Fabrication Pipeline
9
Joel Daniels II University of Utah GDC Group Research Challenges 1.Homogeneous Inputs –Mesh to spline model conversion –Visually smooth boundaries 2.Split away mold creation –Non-planar parting surface
10
Joel Daniels II University of Utah GDC Group Mesh Conversion
11
Joel Daniels II University of Utah GDC Group 1.Homogeneous Inputs –Mesh to spline model conversion –Visually smooth boundaries 2.Mold creation –Non-planar parting surface Research Challenges
12
Joel Daniels II University of Utah GDC Group Parting Surface Generation
13
Joel Daniels II University of Utah GDC Group Outline I.Mesh Conversion i.Related efforts ii.Implementation iii.Results II.Parting Surface Generation i.Related efforts ii.Implementation iii.Results III.Conclusion IV.Questions
14
Joel Daniels II University of Utah GDC Group I. Mesh Conversion
15
Joel Daniels II University of Utah GDC Group Mesh Conversion – Related Work Smoothing surfaces: –Subdivision surfaces: Catmull-Clark, Doo-Sabin, Loop –Fit a manifold surface model to noisy CT data scans [Grimm et al. 2002] –User segmentation and approximated spline surfaces [Levoy et al. 1996] –Inter-surface continuity moving data points [Livingston 1990]
16
Joel Daniels II University of Utah GDC Group Mesh Conversion – Related Work Complete Spline Interpolation –A technique to compute splines through a grid of data points –Points are assigned parameter values Approximations of time values at which the surface will pass through the point –Constrain the extra degree of freedom defines cross boundary tangent information
17
Joel Daniels II University of Utah GDC Group Mesh Conversion – System Pipeline Data segmentation Cross boundary tangents Corner tangents and twists Complete spline interpolation
18
Joel Daniels II University of Utah GDC Group Mesh Conversion – Data Segmentation Focus on inter-surface continuity Inherent nature of input mesh Map triangles to an icosahedron Walk vertices extracting rows and columns Fill in the complete spline interpolation matrix
19
Joel Daniels II University of Utah GDC Group Mesh Conversion – Boundary Tangents Align rows and columns of adjacent surfaces Fit quadratic function to indicated points Evaluate tangent at the boundary point Both surfaces influence tangent direction equally Fill in the complete spline interpolation matrix
20
Joel Daniels II University of Utah GDC Group Mesh Conversion – Stitching Corners Two corner scenarios –3-way corners around equator –5-way corners at poles Bi-cubic surfaces –Unable to ensure parametric continuity –Instead strive for geometric continuity Discussion done in terms of the 3-way corner, but it is extendable to N-way corners
21
Joel Daniels II University of Utah GDC Group Extract the corner neighborhood
22
Joel Daniels II University of Utah GDC Group Fit a cubic surface to the neighborhood
23
Joel Daniels II University of Utah GDC Group Compute tangent control points along each boundary
24
Joel Daniels II University of Utah GDC Group Compute twist control points satisfying constraints
25
Joel Daniels II University of Utah GDC Group Compute tangent and twist values that realize the given control points
26
Joel Daniels II University of Utah GDC Group Mesh Conversion – Discontinuity Analysis (M – c 0 ) x (c 1 – c 0 ) β 0 (u) + (M – c 0 ) x (c 2 – c 1 ) β 1 (u) + (M – c 0 ) x (c 3 – c 2 ) β 2 (u) = 0 Tangent planes must be the same Algorithm ensures cross boundary control points are co-linear Equation to ensure G 1 smoothness When vectors (c 2 – c 1 ) and (c 3 – c 2 ) do not align with (c 1 – c 0 ) then the neighborhood is curved and no value of ‘M’ will satisfy the equation The algorithm aligns (M – c 0 ) with (c 1 – c 0 ) eliminating the largest contributor of the error
27
Joel Daniels II University of Utah GDC Group Mesh Conversion – Case Studies Lower Curvature Model –Worst angle = 1.74º original angle = 7.6º – 99% of the boundaries within 1º of G 1 continuity Higher Curvature Model –Worst angle = 4.48º original angle = 12.4º – 98% of boundaries within 1º of G 1 continuity
28
Joel Daniels II University of Utah GDC Group Mesh Conversion – System Results Internally bi-cubic spline surfaces are C 2 continuous Visual discontinuities confined to first and last knot intervals Algorithm guarantees G 1 continuous corner when possible, otherwise it attempts to minimize created features Successfully convert mesh into a smooth spline model
29
Joel Daniels II University of Utah GDC Group Fabrication Pipeline Recap Mesh Conversion Surface Parameterization
30
Joel Daniels II University of Utah GDC Group II. Parting Surface Generation
31
Joel Daniels II University of Utah GDC Group Surface Generation – System Goal Define a surface between two spatial curves that is a height field from the separation direction. The curves define the object’s parting curve and the mold insert boundary.
32
Joel Daniels II University of Utah GDC Group Surface Generation – System Goal Define a surface between two spatial curves that is a height field from the separation direction. The curves define the object’s parting curve and the mold insert boundary.
33
Joel Daniels II University of Utah GDC Group Surface Generation – Parting Curve Silhouette Edge Surface normals are perpendicular to viewpoint direction Divide the object –All normals one side positively dot with the view direction –All normals other side negatively dot with the view direction Separation/View Direction
34
Joel Daniels II University of Utah GDC Group Surface Generation – System Strategy Strategy –Define an intermediate curve along the medial axis approximation –Compute two 3D curve morph solutions from the input curves to this intermediate shape –Morph solution will sweep the surface as a function of time
35
Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Metamorphosis –Feature Matching Physically Based [Sederberg ‘92] Tangent Comparison [Lui ‘04][Cohen ‘96] Hierarchical Solutions [Wolfson ‘90][Al-Khaiyat ‘98] –Vertex Trajectories [Gotsman ‘01] [Sederberg ‘93]
36
Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Potential Fields –Robot Path Planning [Bell ’04][Chuang ’98][Ge ’00] [Lewis ’99,’00] –Skeleton Extraction [Ahuja ‘97][Chuang ‘00]
37
Joel Daniels II University of Utah GDC Group Surface Generation – Related Work Potential Fields –Group Path Planning [Balch ’99,’00]
38
Joel Daniels II University of Utah GDC Group Surface Generation – System Pipeline D
39
Joel Daniels II University of Utah GDC Group Surface Generation – System Inputs System inputs –Two spatial curves (object parting edge, mold boundary) –Medial axis approximation: MA, skeleton, user defined Input Robustness Goals –Differing curve degrees, parameterizations, knot vectors, and control meshes Intermediate shape –Must be a polyline Guarantees continuity along the intermediate curve
40
Joel Daniels II University of Utah GDC Group A. Vertex Trajectories
41
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Create a continuous vector field –Potential field Positive charge assigned to input curve control meshes Walk the potential field gradient –Local Minima!
42
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Vertex trajectories –Continuous vector field without local minima –Navigate concavities Skeleton Edges Classification –Core Edges Attraction field –Branch Edges Flow Field –Extraneous Edges Ignore
43
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths What is a Flow Field?
44
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths
45
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths Numerical integration can still result in errors! Assign repulsion forces to neighboring seed paths
46
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Paths
47
Joel Daniels II University of Utah GDC Group B. Mesh Generation
48
Joel Daniels II University of Utah GDC Group Surface Generation – Mesh Generation Mesh Generation –Can not have intersections –Greedy data reduction algorithm Extend neighbor aware Three triggers –Neighborhood view-ability –Future path intersection –Curvature approximation error –Sliding down the columns registering global commits
49
Joel Daniels II University of Utah GDC Group Surface Generation – Mesh Generation Mesh Generation –Triggers cause each row to commit their location –Advance trailing points before leaders
50
Joel Daniels II University of Utah GDC Group C. Vertex Correspondence
51
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence Vertex Correspondence Algorithm 1.Compute an intermediate polyline to which each curve will morph 2.Perform knot insertion which adds extra columns into the meshes 3.Relax and slide columns of the mesh to match polyline vertices 4.Relax mesh to stress inter-surface continuity across the two surfaces
52
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence
53
Joel Daniels II University of Utah GDC Group D. 3D Mesh Creation
54
Joel Daniels II University of Utah GDC Group Surface Generation – 3D Surfaces Raise into 3D algorithm: 1.Height component from the input curves 2.Lift the skeleton polyline into 3D 3.Lift and relax the internal points 4.Smooth across the multi-knot columns for intra-surface continuity 5.Smooth across the common polyline for inter-surface continuity
55
Joel Daniels II University of Utah GDC Group Surface Generation – System Conclusion Two surfaces that combine to create the final result Develop a 3D curve morph solution Continuity Analysis –First dimension (with the curve) Continuity maintained from the input curve Not continuous near the skeletal polyline –Second dimension (time direction from curve to skeleton) C2 continuous from one curve to skeleton C1 continuous across the skeleton
56
Joel Daniels II University of Utah GDC Group III. Conclusions
57
Joel Daniels II University of Utah GDC Group Conclusion Developed two systems –Addressed the challenges in the fabrication pipeline of physical visualizations –Solutions maintain visually smooth results as much as possible
58
Joel Daniels II University of Utah GDC Group Conclusion Broader Applications –Mesh Conversion Smooth Surfaces Automotive design Animation and entertainment models CAD systems with spline surfaces –Surface Generation Morphing Hole filling
59
Joel Daniels II University of Utah GDC Group Future Work Mesh Conversion –Data segmentation Larger range of inputs –Optimized smoothing at the corners Surface Generation –Improved relaxation techniques Intra-surface continuity Parameterization and minimization of 3D undulations –Feature matching or established correspondence –Robot path planning without local minima –Larger range of input curves –Define volumes for surface to surface morphs
60
Joel Daniels II University of Utah GDC Group Special Thanks Elaine Cohen Remainder of my committee –Rich Riesenfeld and Claudio Silva Alpha1 research staff –Jim St. Germain and David Johnson Editor –Justin Polchlopek Lab mates Professor Art Olson’s Group at Scripps Family and friends
61
Joel Daniels II University of Utah GDC Group IV. Questions?
62
Joel Daniels II University of Utah GDC Group
64
Further Thesis Discussion Chapter 2 –Discuss related topics in higher details Show understanding of their work Chapter 4 –Prove the vector field is continuous Uniqueness Theorem is applicable –Prove the greedy neighbor aware data reduction extracts legal meshes –Additional information and clarification on inter and intra surface continuity results on the final surface
65
Joel Daniels II University of Utah GDC Group Assign a parameterization and weights
66
Joel Daniels II University of Utah GDC Group Compute twist control points satisfying constraints
67
Joel Daniels II University of Utah GDC Group Mesh Conversion – Discontinuity Analysis γ´(u) = (c 1 – c 0 ) β 0 (u) + (c 2 – c 1 ) β 1 (u) + (c 3 – c 2 ) β 2 (u) γ´(u) x L(u) = γ´(u) x R(u) γ´(u) x (L(u) – R(u)) = 0 L(u) – R(u) = [(l 0 – c 0 ) – (c 0 – r 0 )] θ 0 (u) + [(l 1 – c 1 ) – (c 1 – r 1 )] θ 1 (u) + [(l 2 – c 2 ) – (c 2 – r 2 )] θ 2 (u) + [(l 3 – c 3 ) – (c 3 – r 3 )] θ 3 (u) = 2 [(l 0 + r 0 )/2 – c 0 ] θ 0 (u) = 2 (M – c 0 ) θ 0 (u) θ 0 (u) [(M – c 0 ) x (c 1 – c 0 ) β 0 (u) + (M – c 0 ) x (c 2 – c 1 ) β 1 (u) + (M – c 0 ) x (c 3 – c 2 ) β 2 (u)] = 0 When (c 2 – c 1 ) and (c 3 – c 2 ) do not align with (c 1 – c 0 ) then the neighborhood is curved and no value of ‘M’ will satisfy the equation The algorithm aligns (M – c 0 ) with (c 1 – c 0 ) eliminating the largest contributor of the error
68
Joel Daniels II University of Utah GDC Group Surface Generation – Vertex Correspondence Vertex Correspondence Algorithm 1.Compute an intermediate shape to morph each curve towards Degree raised polyline Match independently arbitrary curve degrees 2.Insert multiple knots for matching at the vertices of the polyline 3.Relax and slide columns of the mesh to match polyline vertices 4.Relax mesh to stress inter-surface continuity across the two surfaces
69
Joel Daniels II University of Utah GDC Group Vector Field Continuity Potential Field –f = 1/d x x = 2 or 3 –Robot path planning has looked at this problem Shown that all 2 nd partial derivatives (Hessian) are continuous Flow Field and Attraction Field –Shifted cosine g = { (s) cos( (r – d)/r ) + s, d <= r 0, otherwise –First Derivative g` = { (s/r) sin((r – d)/r)(d`), d <= r 0, otherwise –x = r (s/r) sin( (r – r)/r ) (d`) = 0 Therefore the final field (F = ▼f + (g 1 )(v 1 ) + (g 2 )(v 2 ) + …) –First derivative continuous field as required by the uniqueness theorem
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.