求VB下三次B样条曲线的算法原代码 十万火急求

来源:百度知道 编辑:UC知道 时间:2024/05/25 18:47:00
AutoCAD生成器开发的需要

#define BEZ_N 10
#include<graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include<conio.h>
#include<math.h>
//int control[4][2]={20,20,100,100,300,100,500,20};
double p0[BEZ_N][2];
double p1[4][2]={10.0,10.0,200.0,100.0,250.0,400.0,600.0,100.0};
int midx,midy,B_N,B_N1;
char RET='a';
curve_split(double p[BEZ_N][2], double q[BEZ_N][2],double r[BEZ_N][2])
{
int i,j;
for(i=0;i<=B_N;++i)
{
q[i][0]=p[i][0]; q[i][1]=p[i][1];
}
for(i=1;i<=B_N;++i)
{
r[B_N+1-i][0]=q[B_N][0]; r[B_N+1-i][1]=q[B_N][1];
for(j=B_N;j>=i;--j)
{
/* line(q[j][0]+midx,midy-q[j][1],q[j-1][0]+midx,midy-q[j-1][1]);
RET=getch();
if(