Class: When::CalendarTypes::ChineseLuniSolar
- Inherits:
-
EphemerisBasedLuniSolar
- Object
- BasicTypes::Object
- TM::Object
- TM::ReferenceSystem
- TM::Calendar
- EphemerisBased
- EphemerisBasedSolar
- EphemerisBasedLuniSolar
- When::CalendarTypes::ChineseLuniSolar
- Defined in:
- lib/when_exe/region/chinese.rb
Overview
Chinese Luni-Solar Calendar
Constant Summary
Constants included from Lunar
Constants inherited from TM::Calendar
Constants included from When::Coordinates
When::Coordinates::Bahai, When::Coordinates::Chinese, When::Coordinates::Common, When::Coordinates::DefaultDateIndices, When::Coordinates::DefaultDayIndex, When::Coordinates::DefaultTimeIndices, When::Coordinates::Indian, When::Coordinates::Iranian, When::Coordinates::Javanese, When::Coordinates::MATCH, When::Coordinates::Mayan, When::Coordinates::PERIOD, When::Coordinates::PERIOD_NAME, When::Coordinates::PRECISION, When::Coordinates::PRECISION_NAME, When::Coordinates::Russian, When::Coordinates::Tibetan, When::Coordinates::VALUE, When::Coordinates::Yi
Constants included from Parts::Resource
Parts::Resource::ConstList, Parts::Resource::ConstTypes, Parts::Resource::IRIDecode, Parts::Resource::IRIDecodeTable, Parts::Resource::IRIEncode, Parts::Resource::IRIEncodeTable, Parts::Resource::IRIHeader, Parts::Resource::LabelProperty
Instance Attribute Summary collapse
-
#twin ⇒ When::CalendarTypes::ChineseSolar
readonly
対で用いる太陽暦の名前.
Attributes inherited from EphemerisBasedLuniSolar
Attributes inherited from EphemerisBased
Attributes inherited from TM::Calendar
#diff_to_CE, #epoch_in_CE, #reference_frame, #time_basis
Attributes included from TimeStandard::TimeBasis
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
-
#intercalary_pattern(y) ⇒ Array<Numeric:月番号>, Hash<Numeric:含む中気の数=>Numeric:月番号>
指定の年の天正冬至を含む月以降1年分の閏月のパターン.
Methods inherited from EphemerisBasedLuniSolar
#_coordinates_to_number, #_length, #_number_to_coordinates
Methods included from Lunar
#_verify, #lunar_table, #verify
Methods inherited from EphemerisBasedSolar
Methods inherited from EphemerisBased
#_coordinates_to_number, #_length, #_number_to_coordinates, #_sum_
Methods inherited from TM::Calendar
#_new_month_, _setup_, #_to_month_number_, #date_trans, #jul_trans, #rate_of_clock, #strftime, #time_standard, #to_cal_date, #to_julian_date, #to_universal_time
Methods included from TimeStandard::TimeBasis
Methods included from When::Coordinates
Methods inherited from TM::ReferenceSystem
Methods included from Parts::Resource
#[], #^, _abbreviation_to_iri, _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 Attribute Details
#twin ⇒ When::CalendarTypes::ChineseSolar (readonly)
Returns 対で用いる太陽暦の名前.
844 845 846 |
# File 'lib/when_exe/region/chinese.rb', line 844 def twin @twin end |
Instance Method Details
#intercalary_pattern(y) ⇒ Array<Numeric:月番号>, Hash<Numeric:含む中気の数=>Numeric:月番号>
指定の年の天正冬至を含む月以降1年分の閏月のパターン
852 853 854 855 856 857 858 859 860 861 862 863 864 |
# File 'lib/when_exe/region/chinese.rb', line 852 def intercalary_pattern(y) m = _base_month(y) l = _base_ids(y) c = {0=>[], 1=>[], 2=>[]} d0 = Residue.mod(_new_month(m)-1) {|n| _new_epoch(n)}[0] l.size.times do |i| d1 = Residue.mod(_new_month(m+i+1)-1) {|n| _new_epoch(n)}[0] c[d1-d0] << l[i] d0 = d1 end c.delete(1) [l, c] end |