1 / 20

Spherical manifolds for hierarchical surface modeling

Spherical manifolds for hierarchical surface modeling. Cindy Grimm. Goal. Organic, free-form Adaptive Can add arms anywhere Hierarchical Move arm, hand moves C k analytic surface Build in pieces. Overview. Building an atlas for a spherical manifold Embedding the atlas

mary
Download Presentation

Spherical manifolds for hierarchical surface modeling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Spherical manifolds for hierarchical surface modeling Cindy Grimm

  2. Goal • Organic, free-form • Adaptive • Can add arms anywhere • Hierarchical • Move arm, hand moves • Ck analytic surface • Build in pieces Graphite 2005, 12/1/2005

  3. Overview • Building an atlas for a spherical manifold • Embedding the atlas • Surface modeling • Sketch mesh • Adaptive editing Graphite 2005, 12/1/2005

  4. M Traditional atlas definition • Given: Sphere (manifold) M • Construct: Atlas A • Chart • Region Uc in M (open disk) • Region c in R2 (open disk) • Function ac taking Uc to c • Inverse • Atlas is collection of charts • Every point in M in at least one chart • Overlap regions Graphite 2005, 12/1/2005

  5. Operations on the sphere • How to represent points, lines and triangles on a sphere? • Point is (x,y,z) • Given two points p, q, what is (1-t) p + t q? • Solution: Gnomonic projection • Project back onto sphere • Valid in ½ hemisphere • Line segments (arcs) • Barycentric coordinates in spherical triangles • Interpolate in triangle, project All points such that… (1-t)p + tq q p Graphite 2005, 12/1/2005

  6. -1 c Chart on a sphere • Chart specification: • Center and radius on sphere Uc • Range c = unit disk • Simplest form for ac • Project from sphere to plane • (stereographic) • Adjust with projective map • Affine Uc 1 Graphite 2005, 12/1/2005

  7. Defining an atlas • Define overlaps computationally • Point in chart: evaluate ac • Coverage on sphere (Uc domain of chart) • Define in reverse as ac-1=MD-1(MW-1(D)) • D becomes ellipse after warp, ellipsoidal on sphere • Can bound with cone normal Graphite 2005, 12/1/2005

  8. Embedding the manifold • Write embed function per chart (polynomial) • Write blend function per chart (B-spline basis function) • k derivatives must go to zero by boundary of chart • Guaranteeing continuity • Normalize to get partition of unity Normalized blend function Proto blend function Graphite 2005, 12/1/2005

  9. Final embedding function • Embedding is weighted sum of chart embeddings • Generalization of splines • Given point p on sphere • Map p into each chart • Blend function is zero if chart does not cover p • Continuity is minimum continuity of constituent parts Map each chart Embed Blend Graphite 2005, 12/1/2005

  10. Surface editing • User sketches shape (sketch mesh) • Create charts • Embed mesh on sphere • One chart for each vertex, edge, and face • Determine geometry for each chart (locally) Graphite 2005, 12/1/2005

  11. Charts • Optimization • Cover corresponding element on sphere • Don’t extend over non-neighboring elements • Projection center: center of element • Map neighboring elements via projection • Solve for affine map • Face: big as possible, inside polygon • Use square domain, projective transform for 4-sided Face Face charts Graphite 2005, 12/1/2005

  12. Edge and vertex • Edge: cover edge, extend to mid-point of adjacent faces • Vertex: Cover adjacent edge mid points, face centers Vertex charts Edge Edge charts Vertex Graphite 2005, 12/1/2005

  13. Defining geometry • Fit to original mesh (?) • 1-1 correspondence between surface and sphere • Run subdivision on sketch mesh embedded on sphere (no geometry smoothing) • Fit each chart embedding to subdivision surface • Least-squares Ax = b Graphite 2005, 12/1/2005

  14. Summary • CK analytic surface approximating subdivision surface • Real time editing • Works for other closed topologies • Parameterization using manifolds, Cindy Grimm, International Journal of Shape modeling 2004 Graphite 2005, 12/1/2005

  15. Hierarchical editing • Override surface in an area • Add arms, legs • User draws on surface • Smooth blend • No geometry constraints Graphite 2005, 12/1/2005

  16. Adding more charts • User draws new subdivision mesh on surface • Only in edit area • Simultaneously specifies region on sphere • Add charts as before • Problem: need to mask out old surface Graphite 2005, 12/1/2005

  17. Masking function • Alter blend functions of current surface • Zero inside of patch region • Alter blend functions of new chart functions • Zero outside of blend area • Define mask function h on sphere, • Set to one in blend region, zero outside 1 1 0 0 Graphite 2005, 12/1/2005

  18. Defining mask function • Map region of interest to plane • Same as chart mapping • Define polygon P from user sketch in chart • Define falloff function f(d) -> [0,1] • d is min distance to polygon • Implicit surface • Note: Can do disjoint regions • Mask blend functions 0 1 d Graphite 2005, 12/1/2005

  19. Patches all the way down • Can define mask functions at multiple levels • Charts at level i are masked by all j>i mask functions • Charts at level i zeroed outside of mask region Graphite 2005, 12/1/2005

  20. Summary • Flexible modeling paradigm • No knot lines, geometry constraints • Not limited to subdivision surfaces • Alternative editing techniques? Graphite 2005, 12/1/2005

More Related