Formule changement d'échelle min et max

Formule changement d'échelle min et max

28 février 2020
Le fou est l'échelle du sage.


Introduction

Le problème est le suivant. J'ai un nombre en provenance d'un intervalle d'entrée et je veux lui appliquer une mise à l'échelle vers l'intervalle de sortie. Un cas que je rencontre souvent c'est convertir une valeur brute en provenance d'un capteur pour la convertir en un pourcentage.

J'utilise donc très souvent une formule mathématique de mise à l'échelle à partir des valeurs min et max des deux intervalles.

Formule mathématique

Voici la formule :

nombreSortie = ((maxSortie - minSortie) / (maxEntrée - minEntrée)) x (nombreEntrée - minEntrée) + minSortie

Sachant que :

  • nombreEntrée appartient à l'intervalle [minEntrée; maxEntrée]
  • nombreSortie appartient à l'intervalle [minSortie; maxSortie]

Exemple

Je reçoit le nombre 180. Je sais que l'intervalle min et max de ce nombre est [32; 255]. Je souhaite le convertir en pourcentage est donc faire un changement d'échelle vers l'intervalle [0; 100].

Voici quelques variables :

  • nombreEntrée : 180
  • minEntrée : 32
  • maxEntrée : 255
  • minSortie : 0
  • maxSortie : 100
  • nombreSortie : ?

Appliquer à notre exemple :

nombreSortie = ((100 - 0) / (255 - 32)) x (180 - 32) + 0
nombreSortie = 66,37