/// <summary> /// 年上取月干 /// </summary> /// <param name="ng">年干</param> /// <param name="m1">农历月份</param> /// <returns>月干</returns> private TianGan GetMonthGanByYear(TianGanTypes ng, int m1) //年上取月干 { int m = Math.Abs(m1); TianGanTypes tg; if ((ng == TianGanTypes.Jia) || (ng == TianGanTypes.Ji)) { tg = TianGanTypes.Bing; } else if ((ng == TianGanTypes.Yi) || (ng == TianGanTypes.Geng)) { tg = TianGanTypes.Wu; } else if ((ng == TianGanTypes.Bing) || (ng == TianGanTypes.Xin)) { tg = TianGanTypes.Geng; } else if ((ng == TianGanTypes.Ding) || (ng == TianGanTypes.Ren)) { tg = TianGanTypes.Ren; } else { tg = TianGanTypes.Jia; } TianGan t = new TianGan(tg); return(t.Inc(m - 1)); }
/// <summary> /// 日上起时干 /// </summary> /// <param name="rg">日干</param> /// <param name="sc">时辰</param> /// <returns>时干</returns> private TianGan GetTimeGan(TianGanTypes rg, DiZhiTypes sc) { int sc1 = ((int)sc) - 1; TianGanTypes tg; if ((rg == TianGanTypes.Jia) || (rg == TianGanTypes.Ji)) { tg = TianGanTypes.Jia; } else if ((rg == TianGanTypes.Yi) || (rg == TianGanTypes.Geng)) { tg = TianGanTypes.Bing; } else if ((rg == TianGanTypes.Bing) || (rg == TianGanTypes.Xin)) { tg = TianGanTypes.Wu; } else if ((rg == TianGanTypes.Ding) || (rg == TianGanTypes.Ren)) { tg = TianGanTypes.Geng; } else { tg = TianGanTypes.Ren; } TianGan t = new TianGan(tg); return(t.Inc(sc1)); }
private TianGan GetTimeGan(TianGanTypes rg, DiZhiTypes sc) { TianGanTypes jia; int i = ((int)sc) - 1; if ((rg == TianGanTypes.Jia) || (rg == TianGanTypes.Ji)) { jia = TianGanTypes.Jia; } else if ((rg == TianGanTypes.Yi) || (rg == TianGanTypes.Geng)) { jia = TianGanTypes.Bing; } else if ((rg == TianGanTypes.Bing) || (rg == TianGanTypes.Xin)) { jia = TianGanTypes.Wu; } else if ((rg == TianGanTypes.Ding) || (rg == TianGanTypes.Ren)) { jia = TianGanTypes.Geng; } else { jia = TianGanTypes.Ren; } TianGan gan = new TianGan(jia); return(gan.Inc(i)); }
private static string GetName(TianGanTypes atg) { string[] strArray = new string[] { "甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸" }; int num = (int)atg; return(strArray[num - 1]); }
/// <summary> /// 返回天干的中文名称 /// </summary> /// <param name="atg">天干枚举值</param> /// <returns>天干的中文名称</returns> private static string GetName(TianGanTypes atg) { string[] s = { "甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸" }; int i = (int)atg; return(s[i - 1]); }
private TianGan GetMonthGanByYear(TianGanTypes ng, int m1) { TianGanTypes bing; int num = Math.Abs(m1); if ((ng == TianGanTypes.Jia) || (ng == TianGanTypes.Ji)) { bing = TianGanTypes.Bing; } else if ((ng == TianGanTypes.Yi) || (ng == TianGanTypes.Geng)) { bing = TianGanTypes.Wu; } else if ((ng == TianGanTypes.Bing) || (ng == TianGanTypes.Xin)) { bing = TianGanTypes.Geng; } else if ((ng == TianGanTypes.Ding) || (ng == TianGanTypes.Ren)) { bing = TianGanTypes.Ren; } else { bing = TianGanTypes.Jia; } TianGan gan = new TianGan(bing); return(gan.Inc(num - 1)); }
public TianGan(int aid) { int num = aid % 10; if (num > 0) { this.id = (TianGanTypes) num; } else if (num < 0) { this.id = (TianGanTypes) (10 + num); } else { this.id = TianGanTypes.Gui; } }
/// <summary> /// 构造函数 /// </summary> /// <param name="aid">天干的整数代码</param> public TianGan(int aid) { int i = aid % 10; if (i > 0) { this.id = (TianGanTypes)i; } else if (i < 0) { this.id = (TianGanTypes)(10 + i); } else { this.id = TianGanTypes.Gui; } }
public TianGan(int aid) { int num = aid % 10; if (num > 0) { this.id = (TianGanTypes)num; } else if (num < 0) { this.id = (TianGanTypes)(10 + num); } else { this.id = TianGanTypes.Gui; } }
private TianGanTypes inc(TianGanTypes atg, int i) { int num = i % 10; if (num == 0) { return(atg); } int num2 = ((int)atg) + num; if (num2 > 10) { num2 -= 10; } else if (num2 < 1) { num2 += 10; } return((TianGanTypes)num2); }
/// <summary> /// 计算将天干加上i后的值 /// </summary> /// <param name="atg">天干</param> /// <param name="i">要增加的数量</param> /// <returns>某一天干枚举增加i值后的天干</returns> private TianGanTypes inc(TianGanTypes atg, int i) { int j = i % 10; if (j == 0) { return(atg); } int tg = ((int)atg) + j; if (tg > 10) { tg = tg - 10; } else if (tg < 1) { tg = tg + 10; } return((TianGanTypes)tg); }
/// <summary> /// 构造函数 /// </summary> /// <param name="atg">天干枚举</param> /// <param name="adz">地支枚举</param> public GanZhi(TianGanTypes atg, DiZhiTypes adz) { _tg = new TianGan(atg); _dz = new DiZhi(adz); }
private TianGan GetTimeGan(TianGanTypes rg, DiZhiTypes sc) { TianGanTypes jia; int i = ((int) sc) - 1; if ((rg == TianGanTypes.Jia) || (rg == TianGanTypes.Ji)) { jia = TianGanTypes.Jia; } else if ((rg == TianGanTypes.Yi) || (rg == TianGanTypes.Geng)) { jia = TianGanTypes.Bing; } else if ((rg == TianGanTypes.Bing) || (rg == TianGanTypes.Xin)) { jia = TianGanTypes.Wu; } else if ((rg == TianGanTypes.Ding) || (rg == TianGanTypes.Ren)) { jia = TianGanTypes.Geng; } else { jia = TianGanTypes.Ren; } TianGan gan = new TianGan(jia); return gan.Inc(i); }
private TianGan GetMonthGanByYear(TianGanTypes ng, int m1) { TianGanTypes bing; int num = Math.Abs(m1); if ((ng == TianGanTypes.Jia) || (ng == TianGanTypes.Ji)) { bing = TianGanTypes.Bing; } else if ((ng == TianGanTypes.Yi) || (ng == TianGanTypes.Geng)) { bing = TianGanTypes.Wu; } else if ((ng == TianGanTypes.Bing) || (ng == TianGanTypes.Xin)) { bing = TianGanTypes.Geng; } else if ((ng == TianGanTypes.Ding) || (ng == TianGanTypes.Ren)) { bing = TianGanTypes.Ren; } else { bing = TianGanTypes.Jia; } TianGan gan = new TianGan(bing); return gan.Inc(num - 1); }
public GanZhi(TianGanTypes atg, DiZhiTypes adz) { this._tg = new TianGan(atg); this._dz = new DiZhi(adz); }
public TianGan(TianGanTypes aid) { this.id = aid; }
public TianGan() { this.id = TianGanTypes.Jia; }
/// <summary> /// 构造函数 /// </summary> /// <param name="aid">天干的枚举值</param> public TianGan(TianGanTypes aid) { id = aid; }
/// <summary> /// 构造函数,默认构造函数将类实例化为“甲” /// </summary> public TianGan() { id = TianGanTypes.Jia; }
/// <summary> /// 获取将当前天干加(减)指定数值后的天干 /// </summary> /// <param name="i">加减数值</param> /// <returns>新天干实例</returns> public TianGan Inc(int i) { TianGanTypes tg = inc(id, i); return(new TianGan(tg)); }
private static string GetName(TianGanTypes atg) { string[] strArray = new string[] { "甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸" }; int num = (int) atg; return strArray[num - 1]; }
private TianGanTypes inc(TianGanTypes atg, int i) { int num = i % 10; if (num == 0) { return atg; } int num2 = ((int) atg) + num; if (num2 > 10) { num2 -= 10; } else if (num2 < 1) { num2 += 10; } return (TianGanTypes) num2; }