Class: When::CalendarNote::HinduNote
- Inherits:
-
When::CalendarNote
- Object
- BasicTypes::Object
- TM::Object
- TM::ReferenceSystem
- When::CalendarNote
- When::CalendarNote::HinduNote
- Defined in:
- lib/when_exe/region/indian.rb
Overview
ヒンドゥー系の暦注
Direct Known Subclasses
Defined Under Namespace
Classes: Dates
Constant Summary collapse
- NoteObjects =
[When::BasicTypes::M17n, [ "namespace:[en=http://en.wikipedia.org/wiki/, ja=http://ja.wikipedia.org/wiki/]", "locale:[=en:, ja=ja:, alias=ja:]", "names:[Hindu]", # 年の暦注 ---------------------------- [When::BasicTypes::M17n, "names:[year]", [When::BasicTypes::M17n, "names:[samvatsara, 木星年=]", "[Prabhava=, プラバヴァ= ]", # 1 "[Vibhava=, ヴィバヴァ= ]", # 2 "[Sukha=, スカ= ]", # 3 "[Pramoda=, プラモーダ= ]", # 4 "[Prajāpati=, プラジャーパティ= ]", # 5 "[Aṅgiras=, アンギラス= ]", # 6 "[Śrīmukha=, シュリームカ= ]", # 7 "[Bhāva=, バーヴァ= ]", # 8 "[Yuvan=, ユヴァン= ]", # 9 "[Dhātṛ=, ダートリ= ]", # 10 "[Īśvara=, イーシュヴァラ= ]", # 11 "[Bahudhānya=, バフダーニャ= ]", # 12 "[Pramāthin=, プラマーティン= ]", # 13 "[Vikrama=, ヴィクラマ= ]", # 14 "[Vṛṣa=, ヴリシャ= ]", # 15 "[Chitrabhānu=, チトラバーヌ= ]", # 16 "[Subhānu=, スバーヌ= ]", # 17 "[Tāraṇa=, ターラナ= ]", # 18 "[Pārthiva=, パールティヴァ= ]", # 19 "[Vyaya=, ヴヤヤ= ]", # 20 "[Sarvajit=, サルヴァジト= ]", # 21 "[Sarvadhārin=, サルヴァダーリン= ]", # 22 "[Virodhin=, ヴィローディン= ]", # 23 "[Vikṛta=, ヴィクリタ= ]", # 24 "[Khara=, カラ= ]", # 25 "[Nandana=, ナンダナ= ]", # 26 "[Vijaya=, ヴィジャヤ= ]", # 27 "[Jaya=, ジャヤ= ]", # 28 "[Manmatha=, マンマタ= ]", # 29 "[Durmukha=, ドゥルムカ= ]", # 30 "[Hemalamba=, ヘマラムバ= ]", # 31 "[Vilambin=, ヴィラムビン= ]", # 32 "[Vikārin=, ヴィカーリン= ]", # 33 "[Śārvarin=, シャールヴァリン= ]", # 34 "[Plava=, プラヴァ= ]", # 35 "[Śubhakṛt=, シュバクリト= ]", # 36 "[Śobhana=, ショバナ= ]", # 37 "[Krodhin=, クロディン= ]", # 38 "[Viśvāvasu=, ヴィシュヴァーヴァス=]", # 39 "[Parābhava=, パラーバヴァ= ]", # 40 "[Plavaṅga=, プラヴァンガ= ]", # 41 "[Kīlaka=, キーラカ= ]", # 42 "[Saumya=, サウムヤ= ]", # 43 "[Sādhāraṇa=, サーダーラナ= ]", # 44 "[Virodhakṛt=, ヴィローダクリト= ]", # 45 "[Paridhāvin=, パリダーヴィン= ]", # 46 "[Pramādin=, プラマーディン= ]", # 47 "[Ānanda=, アーナンダ= ]", # 48 "[Rākṣasa=, ラークシャサ= ]", # 49 "[Anala=, アナラ= ]", # 50 "[Piṅgala=, ピンガラ= ]", # 51 "[Kālayukta=, カーラユクタ= ]", # 52 "[Siddhārthin=, シッダールティン= ]", # 53 "[Raudra=, ラウドラ= ]", # 54 "[Durmati=, ドゥルマティ= ]", # 55 "[Dundubhi=, ドゥンドゥビ= ]", # 56 "[Rudhirodgārin=, ルディロードガーリン=]", # 57 "[Raktākṣin=, ラクタークシン= ]", # 58 "[Krodhana=, クローダナ= ]", # 59 "[Kṣaya=, クシャヤ= ]" # 60 ] ], # 月の暦注 ---------------------------- [When::BasicTypes::M17n, "names:[month]", [When::BasicTypes::M17n, "names:[Month]" ] ], # 日の暦注 ---------------------------- [When::BasicTypes::M17n, "names:[day]", [When::BasicTypes::M17n, "names:[tithi=, ティティ=ja:%%<ティティ>]", "[Amavasya, 新月 ]", # 新月 "[Pratipad=en:Prathama_(day), 1日=]", # 1 "[Dwitiya, 2日=]", # 2 "[Tritiya, 3日=]", # 3 "[Chaturthi, 4日=]", # 4 "[Panchami, 5日=]", # 5 "[Ṣaṣṭhī=en:Shashti, 6日=]", # 6 "[Saptami, 7日=]", # 7 "[Ashtami, 8日=]", # 8 "[Navami, 9日=]", # 9 "[Dashami, 10日=]", # 10 "[Ekadashi, 11日=]", # 11 "[Dwadashi, 12日=]", # 12 "[Thrayodashi, 13日=]", # 13 "[Chaturdashi, 14日=]", # 14 "[Purnima, 満月 ]" # 満月 ], [When::BasicTypes::M17n, "names:[vāra=, ヴァーラ=, *vara=]", "[Ravi=en:S%C5%ABrya, 日曜日]", "[Soma, 月曜日]", "[Maṅgala=en:Mangala, 火曜日]", "[Budha, 水曜日]", "[Guru, 木曜日]", "[Śukra=en:Shukra, 金曜日]", "[Śani=en:Shani, 土曜日]" ], [When::BasicTypes::M17n, "names:[nakṣatra=, ナクシャトラ=, *naksatra=]", "[Aśvinī=en:Ashvin%C4%AB, アシュヴィニー=, 婁宿]", # 1 "[Bharaṇī=en:Bharan%C4%AB, バラニー=, 胃宿]", # 2 "[Kṛttikā=en:Krittik%C4%81, クリッティカー=, 昴宿]", # 3 "[Rohiṇī=en:Rohini_(nakshatra), ローヒニ―=, 畢宿]", # 4 "[Mṛgaśiras=en:Mrigash%C4%ABrsha, ムリガシラス=, 觜宿]", # 5 "[Ārdrā=en:Ardra_(nakshatra), アールドラー=, 參宿]", # 6 "[Punarvasu=en:Punarvasu, プナルヴァス=, 井宿]", # 7 "[Puṣya=en:Pushya, プシュヤ=, 鬼宿]", # 8 "[Aśleṣā=en:%C4%80shlesh%C4%81, アーシュレーシャー=, 柳宿]", # 9 "[Maghā=en:Magh%C4%81, マガー=, 星宿]", # 10 "[P. Phalguṇī=en:P%C5%ABrva_Phalgun%C4%AB, P. パールグニー=, 張宿]", # 11 "[U. Phalguṇī=en:Uttara_Phalgun%C4%AB, U. パールグニー=, 翼宿]", # 12 "[Hasta=en:Nakshatra#Divisions, ハスタ=, 軫宿]", # 13 "[Citrā=en:Nakshatra#Divisions, チトラー=, 角宿]", # 14 "[Svāti=en:Sv%C4%81t%C4%AB, スヴァーティー=, 亢宿]", # 15 "[Viśākha=en:Vish%C4%81kh%C4%81, ヴィシャーカー=, 氐宿]", # 16 "[Anurādhā=en:Anur%C4%81dh%C4%81, アヌラーダー=, 房宿]", # 17 "[Jyeṣṭha=en:Jyeshtha, ジェーシュター=, 心宿]", # 18 "[Mūla=en:Mula_(astrology), ムーラ=, 尾宿]", # 19 "[P. āṣāḍha=en:P%C5%ABrva_Ash%C4%81dh%C4%81, P. アーシャーダー=, 箕宿]", # 20 "[U. āṣāḍha=en:Uttara_Ash%C4%81dh%C4%81, U. アーシャーダー=, 斗宿]", # 21 "[Śravaṇa=en:Shravana, シュラヴァナ=, 女宿]", # 22 "[Śraviṣṭhā=en:Dhanishta, ダニシュター=, 虛宿]", # 23 "[Śatabhiṣak=en:Shatabhish%C4%81, シャタビシャジュ=, 危宿]", # 24 "[P. Bhādrapadā=en:P%C5%ABrva_Bh%C4%81drapad%C4%81, P. バードラパダー=, 室宿]", # 25 "[U. Bhādrapadā=en:Uttara_Bh%C4%81drapad%C4%81, U. バードラパダー=, 壁宿]", # 26 "[Revatī=en:Revati_(nakshatra), レーヴァティー=, 奎宿]" # 27 ], [When::BasicTypes::M17n, "names:[yoga=, ヨーガ=]", "[Viṣkambha=, ヴィシュカムバ= ]", # 1 "[Prīti=, プリーティ= ]", # 2 "[Āyuśmān=, アーユシュマー= ]", # 3 "[Saubhāgya=, サウバーギャ= ]", # 4 "[Śobhana=, ショーバナ= ]", # 5 "[Atigaṇḍa=, アティガンダ= ]", # 6 "[Sukarma=, スカルマ= ]", # 7 "[Dhṛti, ドゥリティ= ]", # 8 "[Śūla=, シューラ= ]", # 9 "[Gaṇḍa=, ガンダ= ]", # 10 "[Vṛddhi=, ヴリッディ= ]", # 11 "[Dhruva=, ドルヴァ= ]", # 12 "[Vyāghāta=, ヴヤーガータ= ]", # 13 "[Harṣaṇa=, ハルシャナ= ]", # 14 "[Vajra=, ヴァジュラ= ]", # 15 "[Siddhi=, シッディ= ]", # 16 "[Vyatīpāta=, ヴヤティーパータ=]", # 17 "[Varīyas=, ヴァリーヤス= ]", # 18 "[Parigha=, パリガ= ]", # 19 "[Śiva=, シヴァ= ]", # 20 "[Siddha=, シッダ= ]", # 21 "[Sādhya=, サーディヤ= ]", # 22 "[Śubha=, シュバ= ]", # 23 "[Śukla=, シュクラ= ]", # 24 "[Brahman=, ブラフマン= ]", # 25 "[Māhendra=, マーヘンドラ= ]", # 26 "[Vaidhṛti=, ヴァイドリティ= ]" # 27 ], [When::BasicTypes::M17n, "names:[Karaṇa=, カラナ=, *karana]", "[Bava=, バヴァ= ]", # 1 "[Bālava=, バーラヴァ= ]", # 2 "[Kaulava=, カウラヴァ= ]", # 3 "[Taitila=, タイティラ= ]", # 4 "[Gara=, ガラ= ]", # 5 "[Vaṇija=, ヴァニジュ= ]", # 6 "[Viṣṭi=, ヴィシュティ= ]", # 7 "[Kiṃtughna=, キンストゥグナ=]", # A "[Śakuni=, シャクニ= ]", # B "[Catuṣpāda=, チャトシュパダ=]", # C "[Nāga=, ナーガ= ]" # D ] ] ]]
- NoteConsts =
{ 'tithi' => { :formula => 15, :range => (-1..2), :index => [ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 15,1,2,3,4,5,6,7,8,9,10,11,12,13,14] }, 'naksatra' => { :formula => '27M', :range => (-1..2), :index => (0...27).to_a }, 'yoga' => { :formula => '27M+27S', :range => (-1..2), :index => (0...27).to_a }, 'karana' => { :formula => 30, :range => (-2..3), :index => [7] + (0...7).to_a * 8 + [8,9,10] } }
Constants inherited from When::CalendarNote
BahaiNotes, ChineseNotes, DefaultNotes, JavaneseNotes, JulianDayNotes, MayanNotes, TibetanNotes, YiNotes
Constants included from Parts::Resource
Parts::Resource::LabelProperty
Instance Attribute Summary
Attributes inherited from When::CalendarNote
Attributes inherited from TM::ReferenceSystem
#domain_of_validity, #position
Attributes inherited from BasicTypes::Object
Attributes included from Parts::Resource
#_pool, #child, #keys, #locale, #namespace
Instance Method Summary collapse
-
#_to_date_for_note(date) ⇒ Object
任意の暦をインド太陰太陽暦日に変換.
-
#jovian ⇒ Integer
木星年の計算方式に“South”を適用開始する年.
-
#karana(dates) ⇒ Array<When::TM::TemporalPosition>
イベント日時.
-
#naksatra(dates) ⇒ Array<When::TM::TemporalPosition>
イベント日時.
-
#pancanga(dates, key) ⇒ Array<When::TM::TemporalPosition>
ヴァーラ以外のイベント日時.
-
#samvatsara(dates) ⇒ When::BasicTypes::M17n
木星年.
-
#tithi(dates) ⇒ Array<When::TM::TemporalPosition>
イベント日時.
-
#vara(dates) ⇒ Array<When::TM::TemporalPosition>
ヴァーラ (七曜).
-
#yoga(dates) ⇒ Array<When::TM::TemporalPosition>
イベント日時.
Methods inherited from When::CalendarNote
#copy, #day, #duration, #enum_for, #include?, #month, #note?, #notes, #year
Methods inherited from TM::ReferenceSystem
Methods included from Parts::Resource
#[], #^, _decode, _encode, _extract_prefix, _instance, _instantiate, _parse, _path_with_prefix, _replace_tags, _setup_, _setup_info, _simplify_path, base_uri, #each, #enum_for, #hierarchy, #include?, #included?, #iri, #leaf?, #m17n, #map, #next, #parent, #prev, #registered?, root_dir
Methods included from Parts::Resource::Pool
#[], #[]=, #_pool, #_setup_, #pool_keys
Methods included from Parts::Resource::Synchronize
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class When::Parts::Resource
Instance Method Details
#_to_date_for_note(date) ⇒ Object
任意の暦をインド太陰太陽暦日に変換
1030 1031 1032 |
# File 'lib/when_exe/region/indian.rb', line 1030 def _to_date_for_note(date) Dates.new(date) end |
#jovian ⇒ Integer
木星年の計算方式に“South”を適用開始する年
1055 1056 1057 1058 |
# File 'lib/when_exe/region/indian.rb', line 1055 def jovian return @jovian if @jovian.kind_of?(Integer) @jovian = @jovian ? @jovian.to_i : 4009 end |
#karana(dates) ⇒ Array<When::TM::TemporalPosition>
Returns イベント日時.
|
# File 'lib/when_exe/region/indian.rb', line 1092
|
#naksatra(dates) ⇒ Array<When::TM::TemporalPosition>
Returns イベント日時.
|
# File 'lib/when_exe/region/indian.rb', line 1082
|
#pancanga(dates, key) ⇒ Array<When::TM::TemporalPosition>
ヴァーラ以外のイベント日時
1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 |
# File 'lib/when_exe/region/indian.rb', line 1114 def pancanga(dates, key) pattern = NoteConsts[key] note = dates.root[key] if pattern[:formula].kind_of?(Numeric) factor = pattern[:formula].to_f formula = dates.formula else factor = 1.0 formula = When.Resource(dates.iri.sub(/formula=2L/, "formula=#{pattern[:formula]}")) end cn = (formula.time_to_cn(dates.l_date) * factor).floor events = [] pattern[:range].each do |i| event = formula._to_seed_type(formula.cn_to_time((cn+i)/factor), dates.l_date) break if +event >= +dates.rises[1] next if +event < +dates.rises[0] event.events = [note[pattern[:index][(cn+i) % pattern[:index].length]]] events << event end events end |
#samvatsara(dates) ⇒ When::BasicTypes::M17n
木星年
see Samvatsara
1043 1044 1045 1046 1047 1048 |
# File 'lib/when_exe/region/indian.rb', line 1043 def samvatsara(dates) year_kali = dates.l_date.most_significant_coordinate + dates.l_date.frame._diff_to_CE + 3101 year_mod = year_kali >= jovian ? (year_kali + 12) % 60 : ((year_kali * 211 - 108).div(18000) + year_kali + 26) % 60 When.CalendarNote('HinduNote/NoteObjects')['year']['samvatsara'][year_mod] end |
#tithi(dates) ⇒ Array<When::TM::TemporalPosition>
Returns イベント日時.
|
# File 'lib/when_exe/region/indian.rb', line 1077
|
#vara(dates) ⇒ Array<When::TM::TemporalPosition>
ヴァーラ (七曜)
1067 1068 1069 1070 1071 |
# File 'lib/when_exe/region/indian.rb', line 1067 def vara(dates) rise = dates.rises[0] rise.events = [dates.root['vara'][(rise.to_i+1) % 7]] ['V:-', rise] end |
#yoga(dates) ⇒ Array<When::TM::TemporalPosition>
Returns イベント日時.
|
# File 'lib/when_exe/region/indian.rb', line 1087
|