• 大小: 2KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-09
  • 语言: C/C++
  • 标签:

资源简介

利用de Casteljau算法绘制Bezier曲线,是利用了递归的思想

资源截图

代码片段和文件信息

#include  
#include       
#include       
#include       


GLfloat ctrlPoints[4][2] =
{
{ -0.8f 0.1f } {-0.4f 0.6f } { 0.2f 0.8f } { 0.7f 0.2f }
};


void myDisplay(void){
glClear(GL_COLOR_BUFFER_BIT);

glPointSize(3);
glColor3f(1.0 0.0 0.0);

for (int i = 0; i < 4; i++){
glBegin(GL_POINTS);
glVertex2fv(&ctrlPoints[i][0]);
glEnd();
}


glColor3f(0.0 0.0 1.0);
glBegin(GL_LINE_STRIP);
for (int i = 0; i < 4; i++){
glVertex2fv(&ctrlPoints[i][0]);
}
glEnd();

    int n = 4;//number
float xarray[4];
float yarray[4];
GLfloat ps[11][2];

int u = 0;
for(double t = 0.0;t<=1;t+=0.1)

for (int i = 1; i < n; ++i)
{
for (int j = 0; j < n - i; ++j)
{
if (i == 1) // i==1时第一次迭代由已知控制点计算  

评论

共有 条评论

相关资源