Exemplo n.º 1
0
        /// <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));
        }
Exemplo n.º 2
0
        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));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 农历整数月转换为地支代表
        /// </summary>
        /// <param name="m">农历月份</param>
        /// <returns></returns>
        private DiZhi MonthToDiZhi(int m)
        {
            int m1 = Math.Abs(m) + 2;//正月建寅

            if (m1 > 12)
            {
                m1 -= 12;
            }
            DiZhiTypes dz = (DiZhiTypes)m1;

            return(new DiZhi(dz));
        }
Exemplo n.º 4
0
 private DiZhiTypes inc(DiZhiTypes adz, int i)
 {
     int num = i % 12;
     if (num == 0)
     {
         return adz;
     }
     int num2 = ((int) adz) + num;
     if (num2 > 12)
     {
         num2 -= 12;
     }
     else if (num2 < 1)
     {
         num2 += 12;
     }
     return (DiZhiTypes) num2;
 }
Exemplo n.º 5
0
        /// <summary>
        /// 计算将地支加上i后的值
        /// </summary>
        /// <param name="adz">地支</param>
        /// <param name="i">要增加的数量</param>
        /// <returns>某一地支枚举增加i值后的地支</returns>
        private DiZhiTypes inc(DiZhiTypes adz, int i)
        {
            int j = i % 12;

            if (j == 0)
            {
                return(adz);
            }
            int dz = ((int)adz) + j;

            if (dz > 12)
            {
                dz = dz - 12;
            }
            else if (dz < 1)
            {
                dz = dz + 12;
            }
            return((DiZhiTypes)dz);
        }
Exemplo n.º 6
0
        private DiZhiTypes inc(DiZhiTypes adz, int i)
        {
            int num = i % 12;

            if (num == 0)
            {
                return(adz);
            }
            int num2 = ((int)adz) + num;

            if (num2 > 12)
            {
                num2 -= 12;
            }
            else if (num2 < 1)
            {
                num2 += 12;
            }
            return((DiZhiTypes)num2);
        }
Exemplo n.º 7
0
 private static string GetName(DiZhiTypes adz)
 {
     int num = (int) adz;
     return names[num - 1];
 }
Exemplo n.º 8
0
 public DiZhi(DiZhiTypes dz)
 {
     this.id = dz;
 }
Exemplo n.º 9
0
 public DiZhi()
 {
     this.id = DiZhiTypes.Zi;
 }
Exemplo n.º 10
0
 public GanZhi(TianGanTypes atg, DiZhiTypes adz)
 {
     this._tg = new TianGan(atg);
     this._dz = new DiZhi(adz);
 }
Exemplo n.º 11
0
        /// <summary>
        /// 获取指定地支的中文名称
        /// </summary>
        /// <param name="adz">指定的地支</param>
        /// <returns>地支名称</returns>
        private static string GetName(DiZhiTypes adz)
        {
            int i = (int)adz;

            return(names[i - 1]);
        }
Exemplo n.º 12
0
 public DiZhi(DiZhiTypes dz)
 {
     this.id = dz;
 }
Exemplo n.º 13
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="dz">地支枚举值</param>
 public DiZhi(DiZhiTypes dz)
 {
     id = dz;
 }
Exemplo n.º 14
0
 /// <summary>
 /// 构造函数
 /// </summary>
 public DiZhi()
 {
     id = DiZhiTypes.Zi;
 }
Exemplo n.º 15
0
 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);
 }
Exemplo n.º 16
0
        /// <summary>
        /// 获取将当前实例增加i值后的地支实例
        /// </summary>
        /// <param name="i">增加的数值</param>
        /// <returns>地支实例</returns>
        public DiZhi Inc(int i)
        {
            DiZhiTypes dz = inc(id, i);

            return(new DiZhi(dz));
        }
Exemplo n.º 17
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="atg">天干枚举</param>
 /// <param name="adz">地支枚举</param>
 public GanZhi(TianGanTypes atg, DiZhiTypes adz)
 {
     _tg = new TianGan(atg);
     _dz = new DiZhi(adz);
 }
Exemplo n.º 18
0
 public DiZhi()
 {
     this.id = DiZhiTypes.Zi;
 }