예제 #1
0
            /// <summary>
            /// 基本属性マトリクス情報を作成
            /// </summary>
            /// <param name="person"></param>
            /// <param name="getuun"></param>
            /// <param name="nenun"></param>
            /// <param name="taiun"></param>
            public void CreateGogyouAttrMatrix(Person person, Kansi getuun = null, Kansi nenun = null, Kansi taiun = null)
            {
                var tblMng = TableMng.GetTblManage();

                //月運
                if (getuun != null)
                {
                    attrTbl[(int)Const.enumKansiItemID.GETUUN].Init(tblMng.jyukanTbl[getuun.kan].gogyou, tblMng.jyunisiTbl[getuun.si].gogyou);
                }
                //年運
                if (nenun != null)
                {
                    attrTbl[(int)Const.enumKansiItemID.NENUN].Init(tblMng.jyukanTbl[nenun.kan].gogyou, tblMng.jyunisiTbl[nenun.si].gogyou);
                }
                //大運
                if (taiun != null)
                {
                    attrTbl[(int)Const.enumKansiItemID.TAIUN].Init(tblMng.jyukanTbl[taiun.kan].gogyou, tblMng.jyunisiTbl[taiun.si].gogyou);
                }

                //日干支
                attrTbl[(int)Const.enumKansiItemID.NIKKANSI].Init(tblMng.jyukanTbl[person.nikkansi.kan].gogyou, tblMng.jyunisiTbl[person.nikkansi.si].gogyou);
                //月干支
                attrTbl[(int)Const.enumKansiItemID.GEKKANSI].Init(tblMng.jyukanTbl[person.gekkansi.kan].gogyou, tblMng.jyunisiTbl[person.gekkansi.si].gogyou);
                //年干支
                attrTbl[(int)Const.enumKansiItemID.NENKANSI].Init(tblMng.jyukanTbl[person.nenkansi.kan].gogyou, tblMng.jyunisiTbl[person.nenkansi.si].gogyou);
            }
예제 #2
0
        /// <summary>
        /// 干合 テーブルによる干文字の虚気文字変換
        /// </summary>
        /// <param name="colorNikkansi"></param>
        /// <param name="colorGekkansi"></param>
        /// <param name="colorNenkansi"></param>
        public void RefrectKangou(Kansi nikkansi, Kansi gekkansi, Kansi nenkansi)
        {
            var tblMng = TableMng.GetTblManage();

            //================================================
            //干合
            //================================================
            //日(干) - 月(干)
            var kyoki = tblMng.kangouTbl.GetKyoki(nikkansi.kan, gekkansi.kan);

            if (kyoki != null)
            {
                nikkansi.kan = kyoki[0];
                gekkansi.kan = kyoki[1];
            }
            //日(干) - 年(干)
            kyoki = tblMng.kangouTbl.GetKyoki(nikkansi.kan, nenkansi.kan);
            if (kyoki != null)
            {
                nikkansi.kan = kyoki[0];
                nenkansi.kan = kyoki[1];
            }
            //月(干) - 年(干)
            kyoki = tblMng.kangouTbl.GetKyoki(gekkansi.kan, nenkansi.kan);
            if (kyoki != null)
            {
                gekkansi.kan = kyoki[0];
                nenkansi.kan = kyoki[1];
            }
        }
예제 #3
0
        public int Init(TableMng _tblMng, SetuiribiTable _tblSetuiribi)
        {
            tblMng       = _tblMng;
            tblSetuiribi = _tblSetuiribi;

            //誕生日に該当する節入り日から誕生日までの経過日数(節入り日はカウントされません)
            dayNumFromSetuiribi = tblSetuiribi.CalcDayCountFromSetuiribi(birthday.year, birthday.month, birthday.day);


            //日干支番号、月干支番号、年干支番号
            nikkansiNo = tblSetuiribi.GetNikkansiNo(birthday.year, birthday.month, birthday.day);
            gekkansiNo = tblSetuiribi.GetGekkansiNo(birthday.year, birthday.month, birthday.day);
            nenkansiNo = tblSetuiribi.GetNenKansiNo(birthday.year, birthday.month, birthday.day);

            //干支
            nikkansi = tblMng.kansiTbl[nikkansiNo];
            gekkansi = tblMng.kansiTbl[gekkansiNo];
            nenkansi = tblMng.kansiTbl[nenkansiNo];

            //二十八元表
            nijuhachiGensoNikkansi = tblMng.nijuhachiGensoTbl[nikkansi.si];
            nijuhachiGensoGekkansi = tblMng.nijuhachiGensoTbl[gekkansi.si];
            nijuhachiGensoNenkansi = tblMng.nijuhachiGensoTbl[nenkansi.si];


            NijuhachiGenso gensoNikkansi = nijuhachiGensoNikkansi;
            NijuhachiGenso gensoGekkansi = nijuhachiGensoGekkansi;
            NijuhachiGenso gensoNenkansi = nijuhachiGensoNenkansi;

            var idxNikkansiGensoType = (int)gensoNikkansi.GetTargetGensoType(dayNumFromSetuiribi);
            var idxGekkansiGensoType = (int)gensoGekkansi.GetTargetGensoType(dayNumFromSetuiribi);
            var idxNenkaisiGensoType = (int)gensoNenkansi.GetTargetGensoType(dayNumFromSetuiribi);


            //------------------
            //十大主星
            //------------------
            //干1 → 蔵x1
            judaiShuseiA = tblMng.juudaiShusei.GetJudaiShusei(nikkansi.kan, gensoNikkansi.genso[idxNikkansiGensoType].name);
            //干1 → 蔵x2
            judaiShuseiB = tblMng.juudaiShusei.GetJudaiShusei(nikkansi.kan, gensoGekkansi.genso[idxGekkansiGensoType].name);
            //干1 → 蔵x3
            judaiShuseiC = tblMng.juudaiShusei.GetJudaiShusei(nikkansi.kan, gensoNenkansi.genso[idxNenkaisiGensoType].name);
            //干1 → 干3
            judaiShuseiD = tblMng.juudaiShusei.GetJudaiShusei(nikkansi.kan, nenkansi.kan);
            //干1 → 干2
            judaiShuseiE = tblMng.juudaiShusei.GetJudaiShusei(nikkansi.kan, gekkansi.kan);


            //------------------
            //十二大主星
            //------------------
            //干1 → 支3
            junidaiJuseiA = tblMng.junidaiJusei.GetJunidaiJusei(nikkansi.kan, nenkansi.si);
            //干1 → 支2
            junidaiJuseiB = tblMng.junidaiJusei.GetJunidaiJusei(nikkansi.kan, gekkansi.si);
            //干1 → 支1
            junidaiJuseiC = tblMng.junidaiJusei.GetJunidaiJusei(nikkansi.kan, nikkansi.si);



            return(0);
        }
예제 #4
0
 public DataAccessor(TableMng mng)
 {
     tblMng = mng;
 }
예제 #5
0
        /// <summary>
        /// 干合 テーブルによる干文字の虚気文字変換
        /// </summary>
        /// <param name="colorNikkansi"></param>
        /// <param name="colorGekkansi"></param>
        /// <param name="colorNenkansi"></param>
        /// <param name="colorGetuun"></param>
        /// <param name="colorNenun"></param>
        /// <param name="colorTaiun"></param>
        /// <param name="kansiGetuun"></param>
        /// <param name="kansiNenun"></param>
        /// <param name="kansiTaiun"></param>
        /// <param name="bDispGetuun"></param>
        public void RefrectKangou(Kansi nikkansi, Kansi gekkansi, Kansi nenkansi,
                                  Kansi kansiGetuun, Kansi kansiNenun, Kansi kansiTaiun,
                                  bool bDispGetuun
                                  )
        {
            var tblMng = TableMng.GetTblManage();

            string[] kyoki;
            //宿命カラー設定
            RefrectKangou(nikkansi, gekkansi, nenkansi);

            //月運、年運、大運 カラー設定
            //================================================
            //干合
            //================================================
            //----------------------------------
            // 月運 →*
            //----------------------------------
            if (bDispGetuun)
            {
                //月運(干) - 年運(干)
                kyoki = tblMng.kangouTbl.GetKyoki(kansiGetuun.kan, kansiNenun.kan);
                if (kyoki != null)
                {
                    kansiGetuun.kan = kyoki[0];
                    kansiNenun.kan  = kyoki[1];
                }
                //月運(干) - 大運(干)
                kyoki = tblMng.kangouTbl.GetKyoki(kansiGetuun.kan, kansiTaiun.kan);
                if (kyoki != null)
                {
                    kansiGetuun.kan = kyoki[0];
                    kansiTaiun.kan  = kyoki[1];
                }
                //月運(干) - 日(干)
                kyoki = tblMng.kangouTbl.GetKyoki(kansiGetuun.kan, nikkansi.kan);
                if (kyoki != null)
                {
                    kansiGetuun.kan = kyoki[0];
                    nikkansi.kan    = kyoki[1];
                }
                //月運(干) - 月(干)
                kyoki = tblMng.kangouTbl.GetKyoki(kansiGetuun.kan, gekkansi.kan);
                if (kyoki != null)
                {
                    kansiGetuun.kan = kyoki[0];
                    gekkansi.kan    = kyoki[1];
                }
                //月運(干) - 年(干)
                kyoki = tblMng.kangouTbl.GetKyoki(kansiGetuun.kan, nenkansi.kan);
                if (kyoki != null)
                {
                    kansiGetuun.kan = kyoki[0];
                    nenkansi.kan    = kyoki[1];
                }
            }
            //----------------------------------
            // 年運 →*
            //----------------------------------
            //年運(干) - 大運(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiNenun.kan, kansiTaiun.kan);
            if (kyoki != null)
            {
                kansiNenun.kan = kyoki[0];
                kansiTaiun.kan = kyoki[1];
            }
            //年運(干) - 日(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiNenun.kan, nikkansi.kan);
            if (kyoki != null)
            {
                kansiNenun.kan = kyoki[0];
                nikkansi.kan   = kyoki[1];
            }
            //年運(干) - 月(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiNenun.kan, gekkansi.kan);
            if (kyoki != null)
            {
                kansiNenun.kan = kyoki[0];
                gekkansi.kan   = kyoki[1];
            }
            //年運(干) - 年(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiNenun.kan, nenkansi.kan);
            if (kyoki != null)
            {
                kansiNenun.kan = kyoki[0];
                nenkansi.kan   = kyoki[1];
            }
            //----------------------------------
            // 大運 →*
            //----------------------------------
            //大運(干) - 日(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiTaiun.kan, nikkansi.kan);
            if (kyoki != null)
            {
                kansiTaiun.kan = kyoki[0];
                nikkansi.kan   = kyoki[1];
            }
            //大運(干) - 月(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiTaiun.kan, gekkansi.kan);
            if (kyoki != null)
            {
                kansiTaiun.kan = kyoki[0];
                gekkansi.kan   = kyoki[1];
            }
            //大運(干) - 年(干)
            kyoki = tblMng.kangouTbl.GetKyoki(kansiTaiun.kan, nenkansi.kan);
            if (kyoki != null)
            {
                kansiTaiun.kan = kyoki[0];
                nenkansi.kan   = kyoki[1];
            }
        }