2011年 ミニ・カレンダー〜ホームページの舞台裏〜
昨年末、このホームページのトップに「★mini calendar」を追加しました。JavaScript(ジャバ・スクリプト)に対応しているウェブ・ブラウザで、その時点の月齢と、その日の薄明開始・終了、日の出・日の入り、月の出・月の入りの各時刻を表示します。各時刻は当地「松江」での時刻です。また、今日から数日先の、主な天文現象も表示します。
これらの情報は、国立天文台のホームページや天文年鑑などで正確な情報を得ることができますが、私の「お勉強」のためにプログラムを作ってみました。
以下、備忘録を兼ねた記録です。興味ある方はどうぞご覧下さい。
ここです→ |
|
1.月齢
moonage2.js
(PDF) |
今(ホームページを表示した時刻)の月齢を、数字と月の形で表示します。
月齢の計算は、「星の情報」でおなじみの福原直人さんが公開されている計算式を使わさせていただきました。
月の形は、当初グラフィック計算でやってみましたが結構大変で、ホームページ上でのリアルタイム計算は時間がかかるし・・・ということで、整数刻みの月齢のイメージデータを予め作っておいて、その画像を表示しています。このホームページでの表示サイズとしては実用上十分と思います。 |
2.薄明時刻と太陽・月の出没時刻
riseandset2.js
(PDF) |
長沢工さん(元、国立天文台)著の「日の出・日の入りの計算」(地人書館)・・・松江市立中央図書館にもあります・・・を参考にしました。日の出・日の入り、月の出・月の入り、天文薄明の開始・終了の時刻を計算するために、作ってみれば600行位のプログラムになりました。
この本は、実に懇切丁寧に天体の出没等の計算原理や手法が解説してあります。欲しい情報がすぐ手に入るインターネット時代の今、わざわざこのような計算をする必要は無いかもしれませんが、太陽や月の位置を自分で計算できるという、ちょっとマニアックな満足感を味わうことができます。
本プログラムは、この本に書かれている計算方法で、随所に記載された親切かつ重要な注意書きを参考に作りました。
緯度・経度を指定すれば、その場所の太陽・月の出没時刻等が計算できます。現在の設定は松江(島根県庁付近)の標高0mです。
尚、略算式で計算しているので、時刻に1分程度の誤差が出ることがあります。 |
|
|
3.天文現象
calendar_out.js
プログラム
(PDF) |
今日から数日先の天文現象(現在の設定では5件)を、ホームページ上に表示するプログラムです。表示するデータは、下(↓)のようなデータフォーマットで作ります。 |
calendar_data.js
データ
(PDF) |
天文現象に限らず何でも良いのですが、年月日または年月日の範囲と事象を書いておくと、上のプログラムによってホームページに表示されます。
天文年鑑(誠文堂新光社)や天文手帳(地人書館)等を参考に、主な天文現象をピックアップして設定しています。
|
4.ホームページへの組込み
ホームページの内容を記述するHTMLで、今回作った各プログラムを上のように書いて呼び出します。
金津(石橋)
|