Menggunakan Kurva dan Permukaan NURBS
Fungsi B-Spline Rasional Non-Seragam (NURBS) memberikan deskripsi kurva dan permukaan yang umum dan kuat dalam dua dan tiga dimensi, mengonversi kurva dan permukaan menjadi evaluator OpenGL. Fungsi NURBS dapat mewakili geometri dalam banyak sistem desain mekanis yang dibantu komputer. Mereka dapat merender kurva dan permukaan dalam berbagai gaya, dan mereka dapat secara otomatis menangani subdivisi adaptif yang tessellates domain menjadi segitiga yang lebih kecil di wilayah kelengkungan tinggi dan tepi siluet dekat. Fungsi NURBS termasuk dalam kategori berikut.
Untuk mengelola objek NURBS, gunakan:
- gluNewNurbsRenderer (buat objek NURBS)
- gluDeleteNurbsRenderer (menghapus objek NURBS)
- gluNurbsCallback (menetapkan fungsi penanganan kesalahan)
Untuk menentukan kurva yang diinginkan, gunakan:
Untuk menentukan permukaan yang diinginkan, gunakan:
Anda juga dapat menentukan wilayah pemangkasan, yang menentukan subset domain permukaan NURBS yang akan dievaluasi sehingga Anda dapat membuat permukaan yang memiliki batas halus atau yang berisi lubang.
Untuk menentukan wilayah pemangkasan, gunakan:
Seperti halnya objek quadric, Anda dapat mengontrol bagaimana kurva dan permukaan NURBS dirender. Anda dapat menentukan:
- Apakah akan membuang kurva atau permukaan yang kontrol polihedronnya terletak di luar viewport saat ini.
- Panjang maksimum (dalam piksel) tepi poligon yang digunakan untuk merender kurva dan permukaan.
- Apakah Anda akan mengambil matriks proyeksi, matriks tampilan model, dan viewport dari server OpenGL atau menyediakannya secara eksplisit dengan gluLoadSamplingMatrices.
Gunakan gluNurbsProperty untuk mengatur properti ini, atau gunakan nilai default. Anda dapat mengkueri objek NURBS tentang gaya penyajiannya dengan gluGetNurbsProperty.