1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| double* ConstruitParametres (int Dimension, int NbPoints, VecteurPtr Q[]) //Q contient NbPoints vecteurs de dimension Dimension
{
int i;
double t[NbPoints];
double* p=t;
t[0]=0;
for (i=0; i<NbPoints-1; i++)
{
t[i+1]=t[i]+DistancePoints(Q[i+1],Q[i]);
}
return p;
}
CourbeBezierPtr ConstruitCourbe (int Dimension, int NbPoints, int Degre, VecteurPtr Points[])
{
if (NbPoints==Degre+1)
{
CourbeBezierPtr C = CourbeBezierConstructeur(Dimension, Degre);
MatricePtr M = MatriceConstructeur(Dimension,NbPoints);
int i,j,k;
for (i=0; i<Dimension; i++)
{
for (j=0; j<NbPoints; j++)
{
double* A = ConstruitParametres(Dimension, NbPoints, Points);
M[i][j] = EvalueBernstein(C->Ordre, NbPoints, A[i]);
}
}
//Ainsi de suite... |
Partager