Outils pour utilisateurs

Outils du site


nsi:tds:maths:splines:bezier

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
nsi:tds:maths:splines:bezier [2023/01/22 19:20] goupillwikinsi:tds:maths:splines:bezier [2023/01/22 19:25] (Version actuelle) goupillwiki
Ligne 166: Ligne 166:
         # vérifier que le nombre de points est valide         # vérifier que le nombre de points est valide
         self.points = [Point(x,y) for x,y in coords]         self.points = [Point(x,y) for x,y in coords]
-     
-    def curve_points(self): 
-        ''' 
-        renvoie la liste des points de self.points qui sont des points de la courbe 
-        ''' 
- 
-    def control_points(self): 
-        ''' 
-        renvoie la liste des points de self.points qui sont des points de contrôle 
-        ''' 
          
     def calc_coeffs(self, i:int):     def calc_coeffs(self, i:int):
         '''         '''
         i:indice de l'arc considéré         i:indice de l'arc considéré
-        la courbe de Bézier est calculée avec les points P0, P1, P2, P3 de l'arc l'arc+        la courbe de Bézier est calculée avec les points P0, P1, P2, P3 de l'arc
         on calcule 4 coefficients :         on calcule 4 coefficients :
         c0 = P0         c0 = P0
Ligne 233: Ligne 223:
  
 <code python> <code python>
-demoplot.py+demobezier.py
 # démonstration en utilisant matplotlib # démonstration en utilisant matplotlib
  
Ligne 242: Ligne 232:
                     (210, 100), (200,110), (100,200),                     (210, 100), (200,110), (100,200),
                     (0,290), (10,350), (120,400)]                     (0,290), (10,350), (120,400)]
-= Bezier(coords)+spline = Bezier(coords)
  
 # tracé de la courbe # tracé de la courbe
-pts = b.plot_points()+pts = spline.plot_points()
 # dans matplotlib, il faut placer les x et les y dans deux listes séparées # dans matplotlib, il faut placer les x et les y dans deux listes séparées
 x = [pt.x for pt in pts] x = [pt.x for pt in pts]
Ligne 252: Ligne 242:
  
 # tracé des points : # tracé des points :
-pts_curve b.curve_points() +len(coords
-x = [pt.x for pt in pts+x = [coords[i][0] for in range(0,n,3)
-y = [pt.y for pt in pts]+y = [coords[i][1] for in range(0,n,3)]
 plt.scatter(x, y, c='b') plt.scatter(x, y, c='b')
-pts_control = b.control_points() + 
-x = [pt.x for pt in pts+# tracé des contrôles 
-y = [pt.y for pt in pts]+x = [coords[i][0] for in range(n) if i%3 != 0
 +y = [coords[i][1] for in range(n) if i%3 != 0] 
 plt.scatter(x, y, c='y') plt.scatter(x, y, c='y')
 plt.show() plt.show()
nsi/tds/maths/splines/bezier.1674411646.txt.gz · Dernière modification : de goupillwiki