Gambarlah kurva bezier dengan sekumpulan titik dari suatu vektor

Saya bertanya-tanya apa cara terbaik dan tidak terlalu rumit untuk menggambar kurva bezier di c++ dengan sekumpulan titik (kira-kira 100+ titik) yang disimpan di dalam vektor Dari pemahaman saya: -Kurva Bezier terdiri dari 4 titik kontrol, titik kontrol titik di tengah menentukan arah/garis singgung kurva

Apakah salah satu metode yang mungkin dilakukan adalah dengan memecah titik-titik menjadi segmen-segmen yang berbeda dan dari masing-masing segmen menentukan titik kendali dan garis singgungnya?


person ixdlxi    schedule 01.02.2011    source sumber


Jawaban (2)


Ini disebut spline kubik dan jika Anda mencari, Anda mungkin menemukan beberapa kode C++ untuk itu. Saya menggunakan kode Fortran gratis dari Numerical Recipes Online dan mem-portingnya ke C# tanpa masalah.

person John Alexiou    schedule 01.02.2011

Apakah salah satu metode yang mungkin dilakukan adalah dengan memecah titik-titik menjadi segmen-segmen yang berbeda dan dari masing-masing segmen menentukan titik kendali dan garis singgungnya?

Ya, pada dasarnya seseorang menghubungkan ruas garis dari ujung ke ujung sedemikian rupa sehingga kemiringan mendekati ujung ruas garis tersebut adalah sama di kedua sisi titik sambungan. Ini disebut spline kubik. Anda dapat menemukan algoritme untuk ini di sini.

person ThomasMcLeod    schedule 01.02.2011