Courbe de gain d'un simulateur de vent

Bonjour à tous
Je suis en train de fignoler mon nouveau produit, un simulateur de vent pour les simulateurs de courses automobile.
Il comprends une courbe qui représente la réponse de la force du vent en fonction de la vitesse en Km/H dans le jeu.
Une version béta est visible en video ici :

Alors je ne suis pas du tout bon en math ^^ Donc je viens demander des conseils !!

Il se trouve que toutes mes courbes trouvent leur champ d'utilité réduit... en effet le vent ne commence réellement qu'à 75% de la sortie en Y.
Donc je voudrais décaler l'origine des Y mais pas juste translater (deja fait). Je voudrais "écraser" toutes mes courbes dans les 100-75% restant. Et mettre ce 75% dans une variable pour assurer le fonctionnement avec les différents moteurs de ventilations.

Voici un extrait de code en C# où je génère le tableau de points destiné à afficher la courbe et à calculer le ratio vent/vitesse :
            list1.Clear();
            int decX = Convert.ToInt16(textBox9.Text);
            int decY = Convert.ToInt16(textBox10.Text);
            int x = 0, y = 0, xx=0;
            double a = 0, b = 0, c = 0;
            // Calcul des coefficients a, b et c de la fonction  polynomiale de degré 2 de la forme ax^2 + bx + c 
            //pour avoir une accélération forte au debut puis faible par la suite
            list1.Add(0, 0);
            for (x = 1; x <= tMax; x++)
            {
                a = tMax * tMax;
                a = (1 - tMax) / a;
                b = -2 * a * tMax;
                c = b + a;
                y = Convert.ToInt16((a * x * x ) + (b * x) + c);
                if (y < 0) y = 0;
                if (y > tMax) y = tMax;
                list1.Add(x, y);
            }

            // decallage de l'origine
            if (checkBox1.Checked)
            {
                for (x = 1; x <= tMax; x++)
                {
                    if (x <= decX)
                    { list1.ElementAt(x).Y = 0; }
                    else
                    {
                        a = tMax * tMax;
                        a = (1 - tMax) / a;
                        b = -2 * a * tMax;
                        c = b + a;
                        y = Convert.ToInt16((a * (x- decX) * (x- decX)) + (b * (x- decX)) + c);
                        if (y < 0) y = 0;
                        if (y > tMax) y = tMax;

                        a = y + decY;
                        if (a > tMax) a = tMax;
                        list1.ElementAt(x).Y = a;
                    }
                }
            }
Heureusement que le compilateur optimise tout ça :)

Je ne sais pas si c'est assez clair, car maintenant il faut ajouter une variable afin de comprimer la courbe dans la zone utile.
Je ramène tout en %, aussi bien en entrée qu'en sortie, je sens que c'est à cette étape qu'il faut faire quelque chose...

Qui accepte le challenge? :D
Connectez-vous ou Inscrivez-vous pour répondre.