J'ai besoin de trouver le centre d'une courbe de Bézier pour la faire pivoter. J'ai une liste de tous les points (points de contrôle, début et fin, tous les points sur la courbe elle-même). Comment pourrais-je trouver son centre?
algorithm
bezier-curve
user4656
la source
la source
t=0.5
point. et deux est le milieu géométrique concernant la distance cartésienne de voyage le long de la ligne.Réponses:
Les courbes de Bézier sont des entités mathématiques et n'ont pas de centre clairement défini. On peut en effet définir beaucoup de choses différentes comme le centre de la courbe de Bézier. J'ai essayé de représenter certains des centres possibles dans l'image 1. Plus que cela existe.
Image 1 : Certains des centres possibles d'une courbe de Bézier à travée unique
Dans la pratique, presque toutes les applications graphiques conçues pour le dessin utilisent le centre du cadre de délimitation local (BB) comme centre. Les logiciels d'animation ont généralement un concept supplémentaire de pivot, ils utilisent donc l'approche de l'utilisateur, si aucune entrée n'est effectuée, ils reviennent souvent au centre BB ou simplement au centre de coordonnées local. C'est probablement parce que le BB doit être calculé de toute façon et obtenir son centre est assez facile à faire (voir Une introduction aux courbes de Bézier ).
Les mesures du centre de gravité sont également quelque peu naturelles, en particulier dans un contexte d'animation, bien que plus difficiles à calculer. Le plus simple étant de discrétiser les données et de faire le calcul sur l'entrée discrète. Cela dit, certaines solutions de forme fermée sont possibles pour le centre de gravité de la courbe, mais ce n'est pas une très bonne équation à formuler et à simplifier.
Ensuite, nous avons les points sur la courbe: le milieu par la longueur de l'arc et le point où le paramètre est 0,5. Dans mon esprit, le paramètre est souvent problématique mais facile à calculer, et il perd son sens lorsque vous enchaînez plusieurs Béziers les uns après les autres pour un polybézier. Le centre de longueur n'est bien entendu naturel que tant que la courbe n'est pas fermée.t t
Nous définissons également d'autres centres possibles, le centre pouvant être au centre de gravité de la courbe de la coque, à la moyenne des points de contrôle ou au centre BB de la cage de contrôle. Bien qu'en pratique, cela ne semble pas très bien fonctionner.
Remarque : Bien que la courbe de l'image 1 montre le centre BB assez proche de certains centres naturels, ce n'est pas toujours le cas pour les courbes plus complexes et en particulier les polybéziers.
la source
Puisque nous ne savons pas quelle définition de «centre» utiliser, nous pouvons aussi bien utiliser la plus simple. Ce serait où , , , sont les points de contrôle de la courbe.
la source