Liste
Solution |
Visual Basic - Exercice 3:
(Exercice proposé par Ruben VERA)
Courbes de Bézier :
Une courbe de Bézier est définie par deux points extrêmes (P1 et P4)
et deux autres points (P2 et P3) qui contrôlent les tangentes vectorielles des points
extrêmes.
|
Avec
x (t) = ( 1 - t )3.xP1 +
3t ( 1 t )2.xP2 + 3t2 (
1 t ).xP3 + t3.xP4
y (t) = ( 1 - t )3.yP1 + 3t ( 1
t )2.yP2 + 3t2 ( 1 t
).yP3 + t3.yP4
où t varie de 0 à 1
par conséquent t=0 correspond à P1 et t=1 correspond à P4 |
Programme demandé :
- Interface (voir exemple ci-dessous):
- Huit zones de saisie de texte pour entrer les coordonnées (X,Y) de P1 à P4
- Possibilité de modifier TMax , le nombre de valeurs que pourra avoir t, soit le nombre de segments de la courbe (on prendra par défaut
TMax = 10)
- Bouton Afficher
- La courbe calculée pourra être affichée sur la feuille même ou , ce qui serait de
loin préférable, dans une zone image (PictureBox) voir note ci-après
- Le bouton Afficher aura pour but de lancer l'exécution du calcul et d'afficher
la courbe dans l'objet retenu (Form ou PictureBox) . On supposera que les valeurs X et Y
calculées seront comprises entre 1 et +1.
- Créer une fonction bezier recevant les cordonnées X et Y des quatre
points P(1) à P(4) ainsi qu'une valeur T (comprise entre 0 et 1) . Cette fonction doit
retourner les valeurs X et Y du point de la courbe correspondant à la valeur de T reçue.
Note: Pour dessiner dans un objet Picture, il suffit d'utiliser les
instructions classiques précédées du nom de l'objet en question. Par exemple :
Picture1.Scale (Xmin,Ymax)-(Xmax,Ymin)
Picture1.Cls
Picture1.Pset (X,Y) |
Picture1.Line (X1,Y1) - (X2,Y2)
Picture1.Line (X2,Y2) |
( SOLUTION DE L'EXERCICE 3 )
|