on the parameterization of catmull rom curves
play

On the Parameterization of Catmull-Rom Curves Cem Yuksel Scott - PowerPoint PPT Presentation

On the Parameterization of Catmull-Rom Curves Cem Yuksel Scott Schaefer John Keyser Texas A&M University Catmull-Rom Curves P 3 P 1 P 0 P 2 Catmull-Rom Curves P 3 P 1 P 0 P 2 Catmull-Rom Curves Important Properties


  1. On the Parameterization of Catmull-Rom Curves Cem Yuksel Scott Schaefer John Keyser Texas A&M University

  2. Catmull-Rom Curves P 3 P 1 P 0 P 2

  3. Catmull-Rom Curves P 3 P 1 P 0 P 2

  4. Catmull-Rom Curves • Important Properties – Interpolate control points – Local support – Piecewise polynomial representation

  5. Catmull-Rom Curves • Important Properties – Interpolate control points – Local support – Piecewise polynomial representation

  6. Catmull-Rom Curves P 3 P 1 P 0 P 2

  7. Catmull-Rom Curves P 3 t 3 P 1 t 1 P 0 P 2 t 2 t 0 C 12 ( P 0,1,2,3 , t 0,1,2,3 )

  8. Catmull-Rom Curves P 3 t 3 P 1 t 1 P 0 P 2 t 2 t 0 Uniform t 0 t 1 t 2 t 3 t i+1 = t i + 1

  9. Catmull-Rom Curves P 3 t 3 P 1 t 1 P 0 P 2 t 2 t 0 Chordal t 0 t 1 t 2 t 3 t i+1 = t i + | P i+1 – P i |

  10. Catmull-Rom Curves • Parameterization – Uniform: t i+1 = t i + 1 – Chordal: t i+1 = t i + | P i+1 – P i |

  11. Catmull-Rom Curves • Parameterization – Uniform: t i+1 = t i + | P i+1 – P i | 0 – Chordal: t i+1 = t i + | P i+1 – P i | 1

  12. Catmull-Rom Curves • Parameterization a t i+1 = t i + | P i+1 – P i |

  13. Catmull-Rom Curves • Parameterization a t i+1 = t i + | P i+1 – P i | a = 0 a = 1 Uniform Chordal

  14. Catmull-Rom Curves • Parameterization a t i+1 = t i + | P i+1 – P i | 1 a = 0 a = a = 1 2 Uniform Centripetal Chordal

  15. On the Parameterization of Catmull-Rom Curves DEMO

  16. On the Parameterization of Catmull-Rom Curves CUSPS & SELF-INTERSECTIONS

  17. Cusps & Self-Intersections P 2 P 1 P 0 P 3

  18. Cusps & Self-Intersections P 2 P 1 P 0 P 3

  19. Cusps & Self-Intersections P 2 P 1 P 0 P 3

  20. Cusps & Self-Intersections P 1 P 2 P 0 P 3

  21. Cusps & Self-Intersections P 1 P 2 P 0 P 3

  22. Cusps & Self-Intersections P 1 P 2 P 0 P 3 a < 1 2

  23. Cusps & Self-Intersections P 1 P 0 P 2 P 3

  24. Cusps & Self-Intersections P 1 P 2 P 0 P 3

  25. Cusps & Self-Intersections P 1 P 2 P 0 P 3 a = 1 2

  26. Cusps & Self-Intersections P 1 P 2 P 0 P 3 a = 1 2

  27. Cusps & Self-Intersections P 1 P 2 P 0 P 3 a = 1 2

  28. On the Parameterization of Catmull-Rom Curves DISTANCE BOUND

  29. Distance Bound

  30. Distance Bound • Distance to the infinite line h • Distance to end points l

  31. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3

  32. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 h ≤ d 2 A x

  33. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 r 1- a r = d 1 h ≤ d 2 4 (1 + r a ) d 2

  34. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 a < 1/2 h ≤ 8 r 1- a r = d 1 a = 1/2 h ≤ d 2 /4 h ≤ d 2 4 (1 + r a ) a = 2/3 h ≤ d 2 /8 d 2 a = 1 h ≤ d 2 /4

  35. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 a < 1/2 h ≤ 8 r 1- a r = d 1 a = 1/2 h ≤ d 2 /4 h ≤ d 2 4 (1 + r a ) a = 2/3 h ≤ d 2 /8 d 2 a = 1 h ≤ d 2 /4

  36. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 a < 1/2 h ≤ 8 r 1- a r = d 1 a = 1/2 h ≤ d 2 /4 h ≤ d 2 4 (1 + r a ) a = 2/3 h ≤ d 2 /8 d 2 a = 1 h ≤ d 2 /4

  37. Distance Bound • Distance to the infinite line h P 1 P 2 P 0 d 2 d 1 P 3 a < 1/2 h ≤ 8 r 1- a r = d 1 a = 1/2 h ≤ d 2 /4 h ≤ d 2 4 (1 + r a ) a = 2/3 h ≤ d 2 /8 d 2 a = 1 h ≤ d 2 /4

  38. Distance Bound • Distance to the end points l r 2 – r 4 a d 2 l ≤ 3 r a (1 + r a )

  39. Distance Bound a only a = 1/2 a = 2/3 a = 1

  40. Distance Bound a and r a = 1/2 a = 2/3 a = 1

  41. On the Parameterization of Catmull-Rom Curves INTERSECTION-FREE CURVES

  42. Intersection-Free Curves

  43. Intersection-Free Curves

  44. Intersection-Free Curves γ γ > π / 3

  45. Intersection-Free Curves γ γ > π / 3

  46. Intersection-Free Curves • Avoid self-intersections – Centripetal parameterization • Avoid adjacent segment intersections – Control polygon angle > π / 3 • Avoid non-adjacent segment intersections – Bounding box

  47. On the Parameterization of Catmull-Rom Curves DISCUSSION

  48. Discussion • Distance to Control Polygon – Uniform is closer for longer segments – Chordal is closer for shorter segments

  49. Discussion • Edge Direction – Chordal has extreme sensitivity to short edge directions

  50. Discussion • Edge Direction – Chordal has extreme sensitivity to short edge directions

  51. Discussion • Edge Direction – Chordal has extreme sensitivity to short edge directions

  52. Discussion • Edge Direction – Chordal has extreme sensitivity to short edge directions

  53. Discussion • Curvature – Centripetal tends to have higher curvature at control points.

  54. Discussion • Curvature – Centripetal tends to have higher curvature at control points.

  55. Discussion • Curvature – Centripetal tends to have higher curvature at control points.

  56. Discussion • Curvature – Centripetal tends to have higher curvature at control points.

  57. Catmull-Rom Curves Lee Perry-Smith Lee Perry-Smith Alexander Tomchuk Cem Yuksel, Scott Schaefer, John Keyser, “Hair Meshes,” Siggraph Asia 2009

  58. Catmull-Rom Curves Cem Yuksel, Scott Schaefer, John Keyser, “Hair Meshes,” Siggraph Asia 2009

  59. Catmull-Rom Curves Uniform Chordal Centripetal Cem Yuksel, Scott Schaefer, John Keyser, “Hair Meshes,” Siggraph Asia 2009

  60. Summary • Parameterization of Catmull-Rom curves 0 ≤ a ≤ 1 • Cusps and self-intersections • Distance bound • Intersection-free curves • C 1 Catmull-Rom curves only!

  61. On the Parameterization of Catmull-Rom Curves QUESTIONS?

Recommend


More recommend