to.tetramorph.almanac
クラス Almanac

java.lang.Object
  上位を拡張 to.tetramorph.almanac.Almanac

public class Almanac
extends Object

ムーンフェイス、ムーンボイドタイム,エニアグラム用のムーンフェイス,天体の逆行 順行などの天象暦。
すべて暦ファイルの参照によって値を取得する仕組みで、暦ファイルはephtoolプロ ジェクトの天文暦作成プログラムで作成する。
引数であたえたcalendarは内部でコピーして使用するため値は書き換えられてしまう ことはない。 Calendarで引き渡すのは、タイムゾーン情報がいっしょに引き渡されるから。 タイムゾーンを日本以外の場所にセットしたカレンダーを渡せば、その時刻系でデータ は返る。

 次の4本の暦ファイルがリソースとして必要。
 /resources/MoonVoidAlmanac.bin
 /resources/MoonFaceAlmanac.bin
 /resources/PlanetAlmanac.bin
 /resources/EnneaMoonAlmanac.bin
 


コンストラクタの概要
Almanac()
           
 
メソッドの概要
static List<MoonFace> getEnneaAlmanac(TimeZone zone)
          エニアグラムカレンダー用の天文暦全てをリストに入れて返す。
static List<MoonFace> getEnneaMoonFace(Calendar calendar)
          指定されたcalendarの日時から過去に向かって検索し一番近い新月の日を求め、 そこから次の新月の日までのエニアグラムのムーンフェイスをリスト返す。
static Map<Integer,MoonFace> getMoonFaceMap(Calendar calendar)
           calendarで指定された年(西暦年)月(0〜11)に該当する月齢マップを返す。
static Map<Integer,List<PlanetEvent>> getPlanetEventMap(Calendar calendar)
          指定されたcalendarの年(西暦年)月(0〜11)に該当する 天体イベント(イングレス、逆行、順行)のハッシュを返す。
static List<VoidTime> getVoidOfCourseMoonList(Calendar calendar)
           指定されたcalendarの年(西暦年)月(0〜11)の1日目から検索して13回分のボイド タイムのリストを返す。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Almanac

public Almanac()
メソッドの詳細

getVoidOfCourseMoonList

public static List<VoidTime> getVoidOfCourseMoonList(Calendar calendar)
 指定されたcalendarの年(西暦年)月(0〜11)の1日目から検索して13回分のボイド
 タイムのリストを返す。13回のボイドはつまり一ヶ月分のボイドタイムということ。
 入力日付は年と月のみを認識し日は必ず1日とみなす。
 MoonVoidAlmanacで作成した天文暦ファイルを参照する。
 天文暦の範囲外が指定されたときはnullを返す。

 天文暦ファイルへのパス。
java.net.URL fileURL = MoonVoid.class.getResource("/resources/MoonVoidAlmanac.bin");


getMoonFaceMap

public static Map<Integer,MoonFace> getMoonFaceMap(Calendar calendar)
 calendarで指定された年(西暦年)月(0〜11)に該当する月齢マップを返す。
 入力日付は年と月のみを認識し日は必ず1日とみなす。
 MoonFaceAlmanacで作成した天文暦ファイルを参照する。
 天文暦の範囲外が指定されたときはnullを返す。

 この戻り値のMapに対して、Map#get(日)とすると、新月、上弦、満月、下弦の日なら、
 そのMoonFaceオブジェクトが返る。違うときはnullが返る。

 MoonVoidAlmanacで作成したムーンフェイス天文暦ファイルを参照して、指定年月のリストを返す。
 天文暦ファイルへのパス。
java.net.URL fileURL = MoonVoid.class.getResource("/resources/MoonFaceAlmanac.bin");


getPlanetEventMap

public static Map<Integer,List<PlanetEvent>> getPlanetEventMap(Calendar calendar)
指定されたcalendarの年(西暦年)月(0〜11)に該当する 天体イベント(イングレス、逆行、順行)のハッシュを返す。 入力日付は年と月のみを認識し日は必ず1日とみなす。 PlanetAlmanacで作成した天文暦ファイル/resources/PlanetAlmanac.binを参照する。 天文暦の範囲外が指定されたときはnullを返す。 同日に複数のイベントが重なる事が想定されてるので、ハッシュの戻り値はList オブジェクト。 ListにはPlanetEventオブジェクトが入っている。 List#size()==0ということはありえない。イベントが無い日はnullが返る。 天文暦ファイルへのパス。
java.net.URL fileURL = MoonVoid.class.getResource("/resources/PlanetAlmanac.bin");


getEnneaMoonFace

public static List<MoonFace> getEnneaMoonFace(Calendar calendar)
指定されたcalendarの日時から過去に向かって検索し一番近い新月の日を求め、 そこから次の新月の日までのエニアグラムのムーンフェイスをリスト返す。 次の新月までなのでリストの要素は10個。 EnneaMoonAlmanacで作成した天文暦ファイル/resource/EnneaMoonAlmanac.binを参照している。 天文暦の範囲外が指定されたときはnullを返す。


getEnneaAlmanac

public static List<MoonFace> getEnneaAlmanac(TimeZone zone)
エニアグラムカレンダー用の天文暦全てをリストに入れて返す。