3D 프로그래머를 위한 커브 입문서 : 직선에서 곡면까지 1St Edition

3D 프로그래머를 위한 커브 입문서 : 직선에서 곡면까지 1St Edition

CURVE 3D 프로그래머를 위한 커브 입문서 : 직선에서 곡면까지 1st Edition lifeisforu [email protected] http://lifeisforu.tistory.com 1 목차 목차 .................................................................................................................................................................................................... 2 들어 가며 ........................................................................................................................................................................................ 4 1. Combination ...................................................................................................................................................................... 6 1.1. Linear combination ...................................................................................................................................... 6 1.2. Linear independence .................................................................................................................................. 7 1.3. Cartesian coordinate system .............................................................................................................. 8 1.4. Convex combination .................................................................................................................................... 9 2. Polynomial & interpolation .............................................................................................................................. 13 2.1. Linear interpolation .................................................................................................................................. 16 2.2. Polynomial interpolation ..................................................................................................................... 17 2.3. Method of undetermined coefficients ...................................................................................... 18 2.4. Lagrange interpolation .......................................................................................................................... 19 2.5. Divided difference ...................................................................................................................................... 21 2.5.1. Linear interpolation .................................................................................................................... 21 2.5.2. Quadratic interpolation ........................................................................................................... 22 2.5.3. Divided difference & General intepolation............................................................ 23 2.6. Newton interpolation .............................................................................................................................. 25 2.7. Problem of polynomial interpolation ........................................................................................ 26 2.8. Spline interpolation .................................................................................................................................. 28 2.8.1. Cubic spline interpolation ..................................................................................................... 29 2.8.2. Solving natural cubic spline ............................................................................................... 31 3. Parametric equation & continuity ............................................................................................................. 33 3.1. Parametric equation ................................................................................................................................ 34 3.2. Parametric continuity ............................................................................................................................. 37 3.3.Geometric Continuity ................................................................................................................................ 40 4. Bé zier curve ................................................................................................................................................................... 42 4.1. Linear Bé zier curve ................................................................................................................................... 43 4.2. Quadratic Bé zier curve .......................................................................................................................... 43 4.3. Cubic Bé zier curve ..................................................................................................................................... 45 4.4. Composite Bezier curve ........................................................................................................................ 48 5. Spline Curve ................................................................................................................................................................... 50 5.1. Linear spline curve .................................................................................................................................... 50 5.2. Quadratic spline curves ........................................................................................................................ 51 5.3. Spline curves of higher degrees ................................................................................................... 53 2 6. Hermite spline .............................................................................................................................................................. 56 6.1. Finite difference ........................................................................................................................................... 58 6.2. Cardinal spline ............................................................................................................................................... 58 6.3. Catmul-Rom spline .................................................................................................................................... 58 6.4. Kochanek-Bartels spline ...................................................................................................................... 59 6.5. Monotone cubic interpolation ......................................................................................................... 60 7. B-Spline( Basis spline ) ....................................................................................................................................... 61 8. Nonuniform rational B-Spline( NURBS ) ............................................................................................. 65 8.1. Nonuniform B-spline ................................................................................................................................ 65 8.1.1. Uniform knot vector ................................................................................................................... 65 8.1.2. Open uniform knot vector .................................................................................................... 66 8.1.3. Non-uniform knot vector ....................................................................................................... 67 8.2. Rational curve ................................................................................................................................................ 68 8.3. Non-Uniform Rational B-Spline ..................................................................................................... 71 8.4. Construction of the basis functions ........................................................................................... 72 8.5. General form of a NURBS curve .................................................................................................... 76 8.6. General form of a NURBS surface ............................................................................................... 76 9. Subdivision Surface ................................................................................................................................................ 76 3 들어 가며 대부분의 3D 프로그래머들은 커브를 다뤄 본 적이 있을 것입니다. 그런데 안타깝게도 커브의 개 념을 제대로 이해하고 사용하는 사람들은 많지 않습니다. 저도 그런 부류 중의 하나입니다. 대부 분 그냥 라이브러리에 있는 기능을 사용하든지 구글링을 해서 찾은 코드를 사용합니다. 그러다 보니 다음과 같은 요청에 대응할 수가 없습니다. "점을 찍으면 자동으로 path 가 생성되게 해 주세요." "Path 를 원하는 대로 제어할 수 있게 해 주세요." "Path 를 따라 움직이는 오브젝트가 등속도 운동을 하게 해 주세요." "Path 가 부드럽게 연결되게 해 주세요." "이럴 땐 어떤 커브를 사용해야 하나요?" 위와 같은 요청에 응답하기 위해서 코드를 보면 뭔가 곱하고 더하고 난리도 아닙니다. 그리고 모 르는 용어가 자꾸 나오니 이해하기도 어렵습니다. 또한 값을 좀만 바꿔도 원하지 않는 매듭 모양 이 나오거나 깨집니다. 코드를 이거 건드려 보고 저거 건드려 보고, 값을 이리 바꾸고 저리 바꾸고, 삽질을 하다가 보면 시간은 흘러가고 작업 마감일은 다가 옵니다. 그렇다고 제대로 공부하기에는 시간도 부족한 것 같고 참고 자료도 마땅치 않습니다. 특히나 저 같은 문과 출신들에게는 그것이 엄청난 벽으로 다 가 옵니다. 왜냐하면 어디서부터 시작해서 어디에서 끝내야 할지 모르기 때문입니다. 사실 커브 및 서피스에 대한 내용은 수학적인 카테고리로 볼 때 수치해석( numerical analysis ) 과 관계가 깊습니다. 인문계 출신들은 그런 분야의 존재 자체를 모르는 사람도 많을 것입니다. 저만 해도 그런 과목이 있다는 것은 들어는 봤지만, 실제 무슨 내용인지는 이 문서를 정리하면서 수치해석의 내용이 무엇인지 알게 되었습니다. 그러므로 이쪽에 대해 전문가 수준으로 알고자 한 다면 수치해석 책 하나 보시는 것이 깔끔할 것이라 생각합니다. 물론 비전공자가 보기에는 친절 하지 않을 수도 있습니다. 그런데 그저 개념만 파악하고자 하거나 간단한 참고서가 필요하다는 생각을 하실 수 있습니다. 이 글은 ( 저를 포함한 ) 그런 사람들에게 샛길이라도 제공하기 위해서 작성되었습니다. 그러므 로 독자들이 이런 분야에 대한 지식을 많이 가지고 있지 않다는 전제를 깔고 글을 작성하도록 하 겠습니다. 이 글의 내용은 직접 작성한 부분도 있지만 거의 대부분은 참고자료를 번역하거나 정리한 것입니 다. 그리고 정확한 내용을 담고 있지 않을 수 있음을 죄송하게 생각합니다. 제가 수학과 영어에 전문가가 아니기 때문에 잘못된 지식들도 포함되어 있을 수 있습니다. 그러므로 이해가 안 간다 4 싶으면 적당히 다른 참고 문헌들을 참조하시기 바랍니다. 궁금한 사항이 있으시거나 잘못된 내용을 제보해 주시려고 한다면, 저에게 메일 ( [email protected] )을 보내 주시면 됩니다. 다시 한 번 말씀드리지만 전문적인 영역에 접근하는 책은 아니므로

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    78 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us