Bonjour à tous,
Pouvez-vous m'indiquer s'il vous plaît une formule qui permet de localiser les points d'inflexion d'une courbe B-Spline ou Nurbs ?
Bonjour à tous,
Pouvez-vous m'indiquer s'il vous plaît une formule qui permet de localiser les points d'inflexion d'une courbe B-Spline ou Nurbs ?
Salut!
Les points d'inflexion sont ceux où la dérivée seconde est nulle.
Jean-Marc Blanc
Calcul numérique de processus industriels
Formation, conseil, développement
Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)
La dérivée seconde d'une B-Spline est une B-Spline d'ordre inférieur. Dans ce cas là comment faites-vous pour déterminer les points d'inflexions ?
Bonjour,
Ton spline est un polynôme de degré n (généralement n=3, en pratique), donc sa dérivée est un polynôme de degré n-2. Il te suffit de prendre l'expression choisie pour le spline et de la dérivée deux fois, puis chercher les zéros de cette dernière, comme l'indiquait Jean-Marc.
C'est un peut lourd si on travaille sur le cas général de degré n, mais bien moins si on l'applique à un cas particulier.
Bon calculs.
C'est un peu plus compliqué que cela.
Une courbe à forme libre plane répond à une equation paramétrique X(t), Y(t) ou t est la variable indépendante. Les points d'inflexion sont ceux où la courbure de la courbe s'annule (la tangente passe d'un côté à l'autre de la courbe). Comme indiqué dans http://fr.wikipedia.org/wiki/Courbure, cela se produit lorsque X'Y"=X"Y' (derivées première et seconde par rapport à t).
Dans le cas d'une B-spline, supposons de degré N, l'équation obtenue sera polynomiale de degré (N-1+N-2) - 1. Le premier terme parce qu'on multiplie des dérivées premières par des secondes, et le - 1 parce que les coefficients des termes de degré maximum sont égaux et se simplifient. Et il ne faut conserver que les solutions réelles dans l'intervale de définition de l'arc de courbe.
Dans le cas d'une NURBS, on arrivera aussi à une equation polynomiale, au prix de calculs douloureux. (Utiliser un calculateur formel.)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager