2013-03-11 3 views

Répondre

3

Théorie mathématique: vous ne pouvez pas faire cela. Une courbe de Bézier d'ordre n ne peut être représentée comme un nombre quelconque de (n-1) courbes de Bézier d'ordre, car les courbures ne peuvent pas être fidèlement représentées. Vous pouvez l'approximer, mais vous n'obtiendrez pas un résultat identique. Pratique: vous pouvez découper votre courbe du 48ème ordre en sections de courbe simple, où tous les points de contrôle sont du même côté de la ligne de base début/fin, et le point médian de la courbe par rapport à votre variable de contrôle est à peu près le centre de la coque convexe pour la courbe. Pour de telles courbes, les courbes de bas niveau sont des approximations raisonnables. Vous pouvez le faire en trouvant les inflexions sur la courbe en utilisant la première, la seconde, etc. dérivation pour votre courbe du 48ème ordre (voir http://pomax.github.com/bezierinfo/#derivatives et http://pomax.github.com/bezierinfo/#splitting) puis en exécutant l'algorithme de Casteljau pour diviser la courbe entre la valeur de la variable de contrôle de chaque point d'inflexion . Vous pouvez ensuite approximer chacune des sous-courbes résultantes avec des courbes cubiques et le résultat semblera assez proche (ou semblera identique au niveau du pixel) à votre courbe d'origine.

Cela dit: pourquoi diable avez-vous même une 48e courbe d'ordre, qui est fou = P

Questions connexes