2009-07-22 4 views

Répondre

3

Cela dépend de ce que vous voulez accomplir. Si vous voulez voir la courbe du «meilleur ajustement», ou du moins une approximation grossière, vous devriez utiliser un b_spline. Un b_spline s'adaptera «à l'intérieur» des points qui lui sont donnés. Pour passer par les points en question, j'utiliserais généralement une spline Catmull-Rom qui, lorsqu'elle est donnée points 1,2,3 passera par le point 2 avec une pente égale à la pente entre les points 1 & 3.

Exemple de code: http://willperone.net/Code/spline.php

Explication de l'algorithme: http://steve.hollasch.net/cgindex/curves/catmull-rom.html

1

Vous souhaitez utiliser des courbes b-spline par morceaux plutôt que des beziers si vous souhaitez que la courbe passe par un ensemble de points existant.

Il y a beaucoup de code sur le Web pour cela.

0

C'est une question ancienne, mais je l'ai trouvé parce que je besoin d'un algorithme pour les coordonnées autotracing comme ils sont en cours d'élaboration, et ont trouvé ce poste SO via Google. Il semble que pour cette question particulière personne n'a mentionné Potrace (petit article wikipedia dessus here), qui est littéralement ce que la question originale demandait, et est open source avec plusieurs ports ainsi que les documents qui décrivent sa fonction librement disponible.

Questions connexes