Hello , manque plus que les saisons et c’est top.
Merci les gars
Merci mais l’essentiel du mérite revient à @olive.
Je ne me suis finalement chargé que de la mise en application et de la mise en forme.
Pour les saisons, faut voir… dans la prochaine version.
Bonne journée
Ben après tu peut suivre le soleil la lune mars , Jupiter et plein d’autres objets céleste …
[TUTORIEL] Soleil Lune Astre ... Azimut et Elévation ... Python - #7 par olive
Je vais ajouter 1 truc, la saison actuelle en fonction de l’hémisphère, ça peut être utile pour certain réglage.
C’est facile, il faut juste que je m’installe à mon pc.
Oui mais dépendant d’un site internet. L’idée c’est d’être Offline et avoir des script qui peuvent touner
Pratiquement tout ce qui est la dedans peut être stoké local ou calculé
Salut,
Je ne fais ça que pour m’amuser;
Même si ça existe, c’est plus fun de le faire soi-même, non.
J’ai pris comme hypothèses que les dates des saisons étaient fixes (21 des mois concernés), ce qui, bien évidemment est faux, cela varie tous les ans d’un jour ou deux.
Comme je n’ai trouvé aucun algo qui donnait la date exacte des saisons quelque soit l’année, je les ai figées.
Ceci étant, le code ait facilement modifiable d’une année sur l’autre avec les bonnes dates.
La détermination de la saison tient compte également de l’hémisphère. Au cas où des australiens veuillent s’en servir .
Le code (sûrement améliorable) :
$lat = votre_latitude;
$long = votre_longitude;
$sun_info = date_sun_info(time(),$lat,$long);
$scenario->setData('leversoleil',date("Hi",$sun_info["sunrise"]));
$scenario->setData('couchersoleil',date("Hi",$sun_info["sunset"]));
$scenario->setData('zenith',date("Hi",$sun_info["transit"]));
$scenario->setData('levercivil',date("Hi",$sun_info["civil_twilight_begin"]));
$scenario->setData('couchercivil',date("Hi",$sun_info["civil_twilight_end"]));
$scenario->setData('levernautique',date("Hi",$sun_info["nautical_twilight_begin"]));
$scenario->setData('couchernautique',date("Hi",$sun_info["nautical_twilight_end"]));
$scenario->setData('leverastro',date("Hi",$sun_info["astronomical_twilight_begin"]));
$scenario->setData('coucherastro',date("Hi",$sun_info["astronomical_twilight_end"]));
$scenario->setData('dureejour',gmdate( "Hi",$sun_info["sunset"]-$sun_info["sunrise"]));
$scenario->setData('dureenuit',gmdate("Hi",24*60*60-($sun_info["sunset"]-$sun_info["sunrise"])));
$hemisphere = ($lat >= 0) ? 'nord' : 'sud';
$date = date('md');
if (($date >= '1221' && $date <= '1231') || ($date >= '0101' && $date < '0321')) {
$saison = ($hemisphere == 'nord') ? 'Hiver' : 'Eté';
} elseif ($date >= '0321' && $date < '0621') {
$saison = ($hemisphere == 'nord') ? 'Printemps' : 'Automne';
} elseif ($date >= '0621' && $date < '0921') {
$saison = ($hemisphere == 'nord') ? 'Eté' : 'Hiver';
} else {
$saison = ($hemisphere == 'nord') ? 'Automne' : 'Printemps';
}
$scenario->setData('Saison',$saison);
Le résultat :
Pas facile a lire le haut de ton tableau et la ligne durée va pas avec lever / couché
va faloir y passer encore un moment mais tu aime ca
Je sais mais je n’avais pas envie d’ajouter un titre jour nuit.
Où alors je remplace lever et coucher par jour nuit.
Par contre je ne vois pas de difficulté à lire le haut du tableau.
Et surtout, l’absence de centrage des valeurs malgré mes efforts m’horripile.
Top sympa merci
Bonjour conversation intéressante, comment mettre juste le Zénith dans un virtuel ?
regarde bien les scénario ci-dessus
$scenario->setData('zenith',date("Hi",$sun_info["transit"]));
il te suffit depuis le scénario de faire une commande event pour mettre a jour la valeur de ton virtuel
Je ne te donne pas la solution mis une piste, pour que tu ai le plasir de cherché et la joie de trouver.
Oui mais sans passer par le plugin « script »;
En php c’est plutot facile :
$JourActuel = date(« Y-m-d »);
$sun_info = date_sun_info(strtotime($JourActuel), 00.0000, 00.0000);
$SoleilZénith= date(« H:i », $sun_info[« transit »]);
echo $SoleilZénith;
Mais directement sur une commande d’un virtuel c’est une autre affaire…
Salut,
envoi l’info dans une variable nommée « zenith ». Il suffit de mettre variable(zenith)
dans le champ « calcul » du virtuel.
Tout est indiqué dans le bloc code, tu peux n’y prendre que ce que tu veux et l’adapter à tes besoins.
Yes, merci