Bonjour,
il y a un problème de décodage des messages lorsque ceux-ci indique la pression atmosphérique en pouces de mercures :
Exemple de metar :
CYHU le 2020-03-17 - 13H00 UTC - 4.
171702Z AUTO 20012G17KT 8SM -RA BKN010 OVC014 01/01 A2992 RMK SLP135
A2992 : 29.92 pouces de mercure
La pression Atmosphérique en hPa est donnée pas la remarque (RMK) SPL135 soit 1350hPa
Rappel : 1 pouces de mercures = 33,8639 Hpa
Voici le résumé du plugin
« Voici le dernier rapport météo, reçu il y a 8 minutes. Il y a de faibles pluie. La température est de 1 degrés. L’humidité est de 100 pour cent, avec un point de rosée à 1 degrés. La pression atmosphérique est à 29,92 hecto pascal. Actuellement, il y a une visibilité de 12875 mètres. La vitesse du vent est de 22 kilomètres heure avec des rafales pouvant aller jusqu’à 9 mètres par secondes ) provenant du Sud/Sud-Ouest. Il y a des nuages fragmentés à 310 mètres. Il y a un ciel couvert à 430 mètres »
Par ailleurs, serait-il possible d’avoir le choix de choisir l’unité d’altitude ? (en pieds par exemple) ?
Merci.
P.S :
Proposition de correction
private function get_pressure($part)
{
if (!preg_match('@^(Q|A)(////|[0-9]{4})@', $part, $found))
{
return FALSE;
}
$pressure = intval($found[2]);
if ($found[1] == 'A')
{
$pressure /= 100;
$pressure_inHg = $pressure ;
$pressure = round($pressure * 33,8639, 2);
} else {
$pressure_inHg = round($pressure * 0.02953, 2) ;
}
$this->set_result_value('barometer', round($pressure, 2)); // units are hPa
$this->set_result_value('barometer_in', round($pressure_inHg, 2)); // convert to in Hg
$this->method++;
return TRUE;
}