getNineStar method
Implementation
NineStar getNineStar() {
//顺逆
String solarYmd = _lunar!.getSolar().toYmd();
Map<String, Solar> jieQi = _lunar!.getJieQiTable();
bool asc = false;
if (solarYmd.compareTo(jieQi[I18n.getMessage('jq.dongZhi')]!.toYmd()) >= 0 &&
solarYmd.compareTo(jieQi[I18n.getMessage('jq.xiaZhi')]!.toYmd()) < 0) {
asc = true;
}
List<int> offset = asc ? [0, 3, 6] : [8, 5, 2];
int start = offset[_lunar!.getDayZhiIndex() % 3];
int index = asc ? (start + _zhiIndex) : (start + 9 - _zhiIndex);
return NineStar(index);
}