jgzhou
2021-04-01 3ab0da701943cf1b7f233d1d65016eac0827ee23
Lunar/Lunar/Tool/Lunar.m
@@ -165,6 +165,7 @@
        }
        lastDate = [LunarUtil getDaysOfMonth:lunarYear :lunarMonth];
    }
    return [[self alloc] initWith:lunarYear :lunarMonth :lunarDay :solar.hour :solar.minute :solar.second];
}
@@ -1178,15 +1179,6 @@
}
/**
 * 获取日喜神方位描述
 * @return string 喜神方位描述,如东北
 */
- (NSString *)getPositionXiDesc
{
  return [self getDayPositionXiDesc];
}
/**
 * 获取日喜神方位
 * @return string 喜神方位,如艮
 */
@@ -1226,24 +1218,6 @@
 * 获取日阳贵神方位
 * @return string 阳贵神方位,如艮
 */
- (NSString *)getPositionYangGui
{
  return [self getDayPositionYangGui];
}
/**
 * 获取日阳贵神方位描述
 * @return string 阳贵神方位描述,如东北
 */
- (NSString *)getPositionYangGuiDesc
{
  return [self getDayPositionYangGuiDesc];
}
/**
 * 获取日阳贵神方位
 * @return string 阳贵神方位,如艮
 */
- (NSString *)getDayPositionYangGui
{
  return [LunarUtil share].POSITION_YANG_GUI[_dayGanIndex + 1];
@@ -1274,24 +1248,6 @@
- (NSString *)getTimePositionYangGuiDesc
{
    return [LunarUtil share].POSITION_DESC[[self getTimePositionYangGui]];
}
/**
 * 获取日阴贵神方位
 * @return string 阴贵神方位,如艮
 */
- (NSString *)getPositionYinGui
{
    return [self getDayPositionYinGui];
}
/**
 * 获取日阴贵神方位描述
 * @return string 阴贵神方位描述,如东北
 */
- (NSString *)getPositionYinGuiDesc
{
    return [self getDayPositionYinGuiDesc];
}
/**
@@ -1340,15 +1296,6 @@
}
/**
 * 获取日福神方位描述
 * @return string 福神方位描述,如东北
 */
- (NSString *)getPositionFuDesc
{
    return [self getDayPositionFuDesc];
}
/**
 * 获取日福神方位
 * @return string 福神方位,如艮
 */
@@ -1391,15 +1338,6 @@
- (NSString *)getPositionCai
{
  return [self getDayPositionCai];
}
/**
 * 获取日财神方位描述
 * @return string 财神方位描述,如东北
 */
- (NSString *)getPositionCaiDesc
{
  return [self getDayPositionCaiDesc];
}
/**
@@ -1561,15 +1499,6 @@
}
/**
 * 获取冲描述
 * @return string 冲描述,如(壬申)猴
 */
- (NSString *)getChongDesc
{
  return [self getDayChongDesc];
}
/**
 * 获取日冲描述
 * @return string 日冲描述,如(壬申)猴
 */
@@ -1585,15 +1514,6 @@
- (NSString *)getTimeChongDesc
{
    return [NSString stringWithFormat:@"(%@%@)%@", [self getTimeChongGan], [self getTimeChong], [self getTimeChongShengXiao]];
}
/**
 * 获取煞
 * @return string 煞,如北
 */
- (NSString *)getSha
{
    return [self getDaySha];
}
/**
@@ -2053,7 +1973,7 @@
 * @param conditions array|null 过滤条件,如果设置过滤条件,仅返回匹配该名称的
 * @return JieQi|null 节气
 */
- (JieQi *)getNearJieQi:(BOOL)forward :(NSArray *)conditions
- (JieQi *)getNearJieQi:(BOOL)forward :(nullable NSArray *)conditions
{
    NSString *name = nil;
    Solar *near = nil;
@@ -2372,9 +2292,9 @@
    [s appendString:@"]("];
    [s appendFormat:@"%@", [self getDayPositionCaiDesc]];
    [s appendString:@") 冲["];
    [s appendFormat:@"%@", [self getChongDesc]];
    [s appendFormat:@"%@", [self getDayChongDesc]];
    [s appendString:@"] 煞["];
    [s appendFormat:@"%@", [self getSha]];
    [s appendFormat:@"%@", [self getDaySha]];
    [s appendString:@"]"];
    return s;
}
@@ -2918,19 +2838,19 @@
            d = 29;
        }
    } else if (9 <= month && month <= 12) {
        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index + 1] integerValue];
        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index+1] integerValue];
        NSInteger l = month - 9;
        if (((v >> l) & 0x01) == 1) {
            d = 29;
        }
    } else {
        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index + 1] integerValue];
        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index+1] integerValue];
        v = (v >> 4) & 0x0F;
        if (v != labs(month)) {
            d = 0;
        } else {
            d = 29;
            for (NSNumber * i in [LunarUtil share].LUNAR_MONTH) {
            for (NSNumber * i in [LunarUtil share].LEAP_MONTH_YEAR) {
                if ([i integerValue] == index) {
                    d = 30;
                    break;
@@ -3904,15 +3824,6 @@
}
/**
 * 获取阴历对象
 * @return Lunar 阴历对象
 */
- (Lunar *)getLunar
{
    return _lunar;
}
/**
 * 获取年柱
 * @return string 年柱
 */
@@ -4431,95 +4342,95 @@
    return [[LunarUtil share].NAYIN objectForKey:[self getShenGong]];
}
///**
// * 获取运
// * @param gender 性别,1男,0女
// * @return Yun 运
// */
//- (Yun *)getYun:(NSInteger)gender
//{
//  return new Yun($this, $gender);
//}
//
///**
// * 获取年柱所在旬
// * @return string 旬
// */
//- (NSString *)getYearXun
//{
//    return [_lunar getYearXunExact];
//}
//
///**
// * 获取年柱旬空(空亡)
// * @return string 旬空(空亡)
// */
//- (NSString *) getYearXunKong
//{
//    return [_lunar getYearXunKongExact];
//}
//
///**
// * 获取月柱所在旬
// * @return string 旬
// */
//- (NSString *)getMonthXun
//{
//    return [_lunar getMonthXunExact];
//}
//
///**
// * 获取月柱旬空(空亡)
// * @return string 旬空(空亡)
// */
//- (NSString *)getMonthXunKong
//{
//    return [_lunar getMonthXunKongExact];
//}
//
///**
// * 获取日柱所在旬
// * @return string 旬
// */
//- (NSString *)getDayXun
//{
//    if (_sect == 2) {
//        return [_lunar getDayXunExact2];
//    } else {
//        return [_lunar getDayXunExact];
//    }
//}
//
///**
// * 获取日柱旬空(空亡)
// * @return string 旬空(空亡)
// */
//- (NSString *)getDayXunKong
//{
//    if (_sect == 2) {
//        return [_lunar getDayXunKongExact2];
//    } else {
//        return [_lunar getDayXunKongExact];
//    }
//}
//
///**
// * 获取时柱所在旬
// * @return string 旬
// */
//- (NSString *)getTimeXun
//{
//    return [_lunar getTimeXun];
//}
//
///**
// * 获取时柱旬空(空亡)
// * @return string 旬空(空亡)
// */
//- (NSString *)getTimeXunKong
//{
//    return [_lunar getTimeXunKong];
//}
/**
 * 获取运
 * @param gender 性别,1男,0女
 * @return Yun 运
 */
- (Yun *)getYun:(NSInteger)gender
{
    return [[Yun alloc] initWith:self :gender];
}
/**
 * 获取年柱所在旬
 * @return string 旬
 */
- (NSString *)getYearXun
{
    return [_lunar getYearXunExact];
}
/**
 * 获取年柱旬空(空亡)
 * @return string 旬空(空亡)
 */
- (NSString *)getYearXunKong
{
    return [_lunar getYearXunKongExact];
}
/**
 * 获取月柱所在旬
 * @return string 旬
 */
- (NSString *)getMonthXun
{
    return [_lunar getMonthXunExact];
}
/**
 * 获取月柱旬空(空亡)
 * @return string 旬空(空亡)
 */
- (NSString *)getMonthXunKong
{
    return [_lunar getMonthXunKongExact];
}
/**
 * 获取日柱所在旬
 * @return string 旬
 */
- (NSString *)getDayXun
{
    if (_sect == 2) {
        return [_lunar getDayXunExact2];
    } else {
        return [_lunar getDayXunExact];
    }
}
/**
 * 获取日柱旬空(空亡)
 * @return string 旬空(空亡)
 */
- (NSString *)getDayXunKong
{
    if (_sect == 2) {
        return [_lunar getDayXunKongExact2];
    } else {
        return [_lunar getDayXunKongExact];
    }
}
/**
 * 获取时柱所在旬
 * @return string 旬
 */
- (NSString *)getTimeXun
{
    return [_lunar getTimeXun];
}
/**
 * 获取时柱旬空(空亡)
 * @return string 旬空(空亡)
 */
- (NSString *)getTimeXunKong
{
    return [_lunar getTimeXunKong];
}
@end
@@ -4928,15 +4839,6 @@
    return [NineStar share].SONG_TAI_YI[_index];
}
/**
 * 获取九星序号,从0开始
 * @return int 序号
 */
- (NSInteger)getIndex
{
    return _index;
}
- (NSString *)toString
{
    return [NSString stringWithFormat:@"%@%@%@%@", [self getNumber], [self getColor], [self getWuXing], [self getNameInBeiDou]];
@@ -4992,15 +4894,6 @@
 */
@implementation ShuJiu
- (instancetype)init
{
    self = [super init];
    if (self) {
    }
    return self;
}
- (instancetype)initWith:(NSString *)name :(NSInteger)index
{
    self = [super init];
@@ -5055,7 +4948,6 @@
        NSDateFormatter *form = [NSDateFormatter new];
        form.dateFormat = @"yyyy-MM-dd HH:mm:ss";
        _calendar = [form dateFromString:s];
    }
    return self;
}
@@ -5255,7 +5147,15 @@
    return l;
}
- (NSString *)toString
{
    NSMutableString *s = [NSMutableString string];
    [s appendFormat:@"%@", [self toYmdHms]];
    [s appendString:@" "];
    [s appendString:@"星期"];
    [s appendFormat:@"%@", [self getWeekInChinese]];
    return s;
}
- (NSString *)toFullString
{
@@ -6008,7 +5908,6 @@
    NSDateComponents *comps = [calendar components:NSCalendarUnitYear fromDate:date];
    return [[SolarYear alloc] initWith:comps.year];
}
/**
 * 获取本年的月份