Bonjour,
Je viens demander des pistes car j'ai le cerveau en ébullition ...
Je cherche à mettre en place une moyenne entre 2 valeurs sur 360° avec passage par le 0°
ex: (270° + 90°) / 2 = 0° ou encore (90° + 270°) / 2 = 0°, etc ...

J'arrive à gérer le "nord" avec cette fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
var btwm = 270;
var btw_prec = 90;
 
function north (btmw,btw_prec) { 
 if (btwm - btw_prec > -180 | btwm - btw_prec < 180) {
   return (((btwm + btw_prec) / 2) + 180 ) % 360;
    } else if (btwm - btw_prec > 180 | btwm - btw_prec < -180){
    return (((btwm + btw_prec) / 2) + 360 ) % 360;
    }
};
console.log('function north='+north(btwm,btw_prec));
donc cool mais le calcul simple, ex: (0° + 180°) / 2= 90° ou (225° + 225°) / 2 = 225°, ne fonctionne pas du tout

J'arrive à faire fonctionner soit le calcul classique de moyenne mais le passage par le 0° est en vrac soit le passage par le nord est bon et le calcul classique est en vrac ... jamais les 2 en même temps ...

Si vous avez une solution je suis preneurcar là je tourne en rond ...

Merci