mingpan 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +116 -42
- package/dist/core/bazi/types.d.ts +0 -1
- package/dist/core/bazi/types.d.ts.map +1 -1
- package/dist/core/qimen/FlyingRule.d.ts +60 -0
- package/dist/core/qimen/FlyingRule.d.ts.map +1 -0
- package/dist/core/qimen/FlyingRule.js +94 -0
- package/dist/core/qimen/FlyingRule.js.map +1 -0
- package/dist/core/qimen/GongMapping.d.ts +29 -0
- package/dist/core/qimen/GongMapping.d.ts.map +1 -0
- package/dist/core/qimen/GongMapping.js +83 -0
- package/dist/core/qimen/GongMapping.js.map +1 -0
- package/dist/core/qimen/RotatingRule.d.ts +76 -0
- package/dist/core/qimen/RotatingRule.d.ts.map +1 -0
- package/dist/core/qimen/RotatingRule.js +126 -0
- package/dist/core/qimen/RotatingRule.js.map +1 -0
- package/dist/core/qimen/YinYangDunCalculator.d.ts +28 -0
- package/dist/core/qimen/YinYangDunCalculator.d.ts.map +1 -0
- package/dist/core/qimen/YinYangDunCalculator.js +79 -0
- package/dist/core/qimen/YinYangDunCalculator.js.map +1 -0
- package/dist/core/qimen/index.d.ts +10 -0
- package/dist/core/qimen/index.d.ts.map +1 -0
- package/dist/core/qimen/index.js +58 -0
- package/dist/core/qimen/index.js.map +1 -0
- package/dist/core/qimen/types.d.ts +19 -0
- package/dist/core/qimen/types.d.ts.map +1 -0
- package/dist/core/qimen/types.js +7 -0
- package/dist/core/qimen/types.js.map +1 -0
- package/dist/index.js +665 -164
- package/dist/index.js.map +1 -1
- package/dist/output/daliurenTextRenderer.d.ts +23 -0
- package/dist/output/daliurenTextRenderer.d.ts.map +1 -0
- package/dist/output/daliurenTextRenderer.js +109 -0
- package/dist/output/daliurenTextRenderer.js.map +1 -0
- package/dist/output/liuyaoTextRenderer.d.ts +12 -0
- package/dist/output/liuyaoTextRenderer.d.ts.map +1 -0
- package/dist/output/liuyaoTextRenderer.js +148 -0
- package/dist/output/liuyaoTextRenderer.js.map +1 -0
- package/dist/output/meihuaTextRenderer.d.ts +12 -0
- package/dist/output/meihuaTextRenderer.d.ts.map +1 -0
- package/dist/output/meihuaTextRenderer.js +53 -0
- package/dist/output/meihuaTextRenderer.js.map +1 -0
- package/dist/output/qimenTextRenderer.d.ts +40 -0
- package/dist/output/qimenTextRenderer.d.ts.map +1 -0
- package/dist/output/qimenTextRenderer.js +363 -0
- package/dist/output/qimenTextRenderer.js.map +1 -0
- package/dist/services/bazi/types.d.ts +0 -2
- package/dist/services/bazi/types.d.ts.map +1 -1
- package/dist/services/bazi/types.js.map +1 -1
- package/dist/services/daliuren/DaliurenService.d.ts +24 -0
- package/dist/services/daliuren/DaliurenService.d.ts.map +1 -0
- package/dist/services/daliuren/DaliurenService.js +67 -0
- package/dist/services/daliuren/DaliurenService.js.map +1 -0
- package/dist/services/daliuren/calculators/SanChuanCalculator.d.ts +87 -0
- package/dist/services/daliuren/calculators/SanChuanCalculator.d.ts.map +1 -0
- package/dist/services/daliuren/calculators/SanChuanCalculator.js +443 -0
- package/dist/services/daliuren/calculators/SanChuanCalculator.js.map +1 -0
- package/dist/services/daliuren/calculators/ShenShaCalculator.d.ts +33 -0
- package/dist/services/daliuren/calculators/ShenShaCalculator.d.ts.map +1 -0
- package/dist/services/daliuren/calculators/ShenShaCalculator.js +92 -0
- package/dist/services/daliuren/calculators/ShenShaCalculator.js.map +1 -0
- package/dist/services/daliuren/calculators/SiKeCalculator.d.ts +35 -0
- package/dist/services/daliuren/calculators/SiKeCalculator.d.ts.map +1 -0
- package/dist/services/daliuren/calculators/SiKeCalculator.js +121 -0
- package/dist/services/daliuren/calculators/SiKeCalculator.js.map +1 -0
- package/dist/services/daliuren/calculators/TianDiPanCalculator.d.ts +41 -0
- package/dist/services/daliuren/calculators/TianDiPanCalculator.d.ts.map +1 -0
- package/dist/services/daliuren/calculators/TianDiPanCalculator.js +138 -0
- package/dist/services/daliuren/calculators/TianDiPanCalculator.js.map +1 -0
- package/dist/services/daliuren/data/constants.d.ts +62 -0
- package/dist/services/daliuren/data/constants.d.ts.map +1 -0
- package/dist/services/daliuren/data/constants.js +240 -0
- package/dist/services/daliuren/data/constants.js.map +1 -0
- package/dist/services/daliuren/index.d.ts +11 -0
- package/dist/services/daliuren/index.d.ts.map +1 -0
- package/dist/services/daliuren/index.js +33 -0
- package/dist/services/daliuren/index.js.map +1 -0
- package/dist/services/daliuren/types.d.ts +152 -0
- package/dist/services/daliuren/types.d.ts.map +1 -0
- package/dist/services/daliuren/types.js +17 -0
- package/dist/services/daliuren/types.js.map +1 -0
- package/dist/services/liuyao/LiuyaoService.d.ts +37 -0
- package/dist/services/liuyao/LiuyaoService.d.ts.map +1 -0
- package/dist/services/liuyao/LiuyaoService.js +214 -0
- package/dist/services/liuyao/LiuyaoService.js.map +1 -0
- package/dist/services/liuyao/calculators/FushenCalculator.d.ts +40 -0
- package/dist/services/liuyao/calculators/FushenCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/FushenCalculator.js +124 -0
- package/dist/services/liuyao/calculators/FushenCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/JintuishenCalculator.d.ts +37 -0
- package/dist/services/liuyao/calculators/JintuishenCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/JintuishenCalculator.js +86 -0
- package/dist/services/liuyao/calculators/JintuishenCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/LiuqinCalculator.d.ts +24 -0
- package/dist/services/liuyao/calculators/LiuqinCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/LiuqinCalculator.js +75 -0
- package/dist/services/liuyao/calculators/LiuqinCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/LiushenCalculator.d.ts +29 -0
- package/dist/services/liuyao/calculators/LiushenCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/LiushenCalculator.js +58 -0
- package/dist/services/liuyao/calculators/LiushenCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/NajiaCalculator.d.ts +55 -0
- package/dist/services/liuyao/calculators/NajiaCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/NajiaCalculator.js +87 -0
- package/dist/services/liuyao/calculators/NajiaCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/WangshuaiCalculator.d.ts +43 -0
- package/dist/services/liuyao/calculators/WangshuaiCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/WangshuaiCalculator.js +100 -0
- package/dist/services/liuyao/calculators/WangshuaiCalculator.js.map +1 -0
- package/dist/services/liuyao/calculators/XunkongCalculator.d.ts +30 -0
- package/dist/services/liuyao/calculators/XunkongCalculator.d.ts.map +1 -0
- package/dist/services/liuyao/calculators/XunkongCalculator.js +58 -0
- package/dist/services/liuyao/calculators/XunkongCalculator.js.map +1 -0
- package/dist/services/liuyao/data/guagong.d.ts +94 -0
- package/dist/services/liuyao/data/guagong.d.ts.map +1 -0
- package/dist/services/liuyao/data/guagong.js +317 -0
- package/dist/services/liuyao/data/guagong.js.map +1 -0
- package/dist/services/liuyao/index.d.ts +13 -0
- package/dist/services/liuyao/index.d.ts.map +1 -0
- package/dist/services/liuyao/index.js +29 -0
- package/dist/services/liuyao/index.js.map +1 -0
- package/dist/services/liuyao/types.d.ts +154 -0
- package/dist/services/liuyao/types.d.ts.map +1 -0
- package/dist/services/liuyao/types.js +11 -0
- package/dist/services/liuyao/types.js.map +1 -0
- package/dist/services/meihua/MeihuaService.d.ts +32 -0
- package/dist/services/meihua/MeihuaService.d.ts.map +1 -0
- package/dist/services/meihua/MeihuaService.js +176 -0
- package/dist/services/meihua/MeihuaService.js.map +1 -0
- package/dist/services/meihua/calculators/BianguaCalculator.d.ts +21 -0
- package/dist/services/meihua/calculators/BianguaCalculator.d.ts.map +1 -0
- package/dist/services/meihua/calculators/BianguaCalculator.js +46 -0
- package/dist/services/meihua/calculators/BianguaCalculator.js.map +1 -0
- package/dist/services/meihua/calculators/HuguaCalculator.d.ts +22 -0
- package/dist/services/meihua/calculators/HuguaCalculator.d.ts.map +1 -0
- package/dist/services/meihua/calculators/HuguaCalculator.js +46 -0
- package/dist/services/meihua/calculators/HuguaCalculator.js.map +1 -0
- package/dist/services/meihua/calculators/QiguaCalculator.d.ts +40 -0
- package/dist/services/meihua/calculators/QiguaCalculator.d.ts.map +1 -0
- package/dist/services/meihua/calculators/QiguaCalculator.js +105 -0
- package/dist/services/meihua/calculators/QiguaCalculator.js.map +1 -0
- package/dist/services/meihua/calculators/TiyongCalculator.d.ts +34 -0
- package/dist/services/meihua/calculators/TiyongCalculator.d.ts.map +1 -0
- package/dist/services/meihua/calculators/TiyongCalculator.js +105 -0
- package/dist/services/meihua/calculators/TiyongCalculator.js.map +1 -0
- package/dist/services/meihua/data/bagua.d.ts +19 -0
- package/dist/services/meihua/data/bagua.d.ts.map +1 -0
- package/dist/services/meihua/data/bagua.js +81 -0
- package/dist/services/meihua/data/bagua.js.map +1 -0
- package/dist/services/meihua/index.d.ts +11 -0
- package/dist/services/meihua/index.d.ts.map +1 -0
- package/dist/services/meihua/index.js +27 -0
- package/dist/services/meihua/index.js.map +1 -0
- package/dist/services/meihua/types.d.ts +95 -0
- package/dist/services/meihua/types.d.ts.map +1 -0
- package/dist/services/meihua/types.js +6 -0
- package/dist/services/meihua/types.js.map +1 -0
- package/dist/services/qimen/QimenService.d.ts +93 -0
- package/dist/services/qimen/QimenService.d.ts.map +1 -0
- package/dist/services/qimen/QimenService.js +427 -0
- package/dist/services/qimen/QimenService.js.map +1 -0
- package/dist/services/qimen/calculators/BaMenCalculator.d.ts +53 -0
- package/dist/services/qimen/calculators/BaMenCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/BaMenCalculator.js +105 -0
- package/dist/services/qimen/calculators/BaMenCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/BaShenCalculator.d.ts +34 -0
- package/dist/services/qimen/calculators/BaShenCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/BaShenCalculator.js +57 -0
- package/dist/services/qimen/calculators/BaShenCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/GeJuCalculator.d.ts +141 -0
- package/dist/services/qimen/calculators/GeJuCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/GeJuCalculator.js +711 -0
- package/dist/services/qimen/calculators/GeJuCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/JiuGongCalculator.d.ts +56 -0
- package/dist/services/qimen/calculators/JiuGongCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/JiuGongCalculator.js +98 -0
- package/dist/services/qimen/calculators/JiuGongCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/JiuXingCalculator.d.ts +54 -0
- package/dist/services/qimen/calculators/JiuXingCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/JiuXingCalculator.js +117 -0
- package/dist/services/qimen/calculators/JiuXingCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/JuShuCalculator.d.ts +57 -0
- package/dist/services/qimen/calculators/JuShuCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/JuShuCalculator.js +115 -0
- package/dist/services/qimen/calculators/JuShuCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/PanTypeCalculator.d.ts +117 -0
- package/dist/services/qimen/calculators/PanTypeCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/PanTypeCalculator.js +237 -0
- package/dist/services/qimen/calculators/PanTypeCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts +50 -0
- package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js +86 -0
- package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/ShenShaCalculator.d.ts +80 -0
- package/dist/services/qimen/calculators/ShenShaCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/ShenShaCalculator.js +300 -0
- package/dist/services/qimen/calculators/ShenShaCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/YongShenCalculator.d.ts +78 -0
- package/dist/services/qimen/calculators/YongShenCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/YongShenCalculator.js +497 -0
- package/dist/services/qimen/calculators/YongShenCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/ZeRiCalculator.d.ts +78 -0
- package/dist/services/qimen/calculators/ZeRiCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/ZeRiCalculator.js +431 -0
- package/dist/services/qimen/calculators/ZeRiCalculator.js.map +1 -0
- package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts +118 -0
- package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts.map +1 -0
- package/dist/services/qimen/calculators/ZhuanPanCalculator.js +260 -0
- package/dist/services/qimen/calculators/ZhuanPanCalculator.js.map +1 -0
- package/dist/services/qimen/data/constants.d.ts +105 -0
- package/dist/services/qimen/data/constants.d.ts.map +1 -0
- package/dist/services/qimen/data/constants.js +295 -0
- package/dist/services/qimen/data/constants.js.map +1 -0
- package/dist/services/qimen/data/shensha-rules.d.ts +177 -0
- package/dist/services/qimen/data/shensha-rules.d.ts.map +1 -0
- package/dist/services/qimen/data/shensha-rules.js +397 -0
- package/dist/services/qimen/data/shensha-rules.js.map +1 -0
- package/dist/services/qimen/data/yongshen-rules.d.ts +115 -0
- package/dist/services/qimen/data/yongshen-rules.d.ts.map +1 -0
- package/dist/services/qimen/data/yongshen-rules.js +365 -0
- package/dist/services/qimen/data/yongshen-rules.js.map +1 -0
- package/dist/services/qimen/index.d.ts +20 -0
- package/dist/services/qimen/index.d.ts.map +1 -0
- package/dist/services/qimen/index.js +43 -0
- package/dist/services/qimen/index.js.map +1 -0
- package/dist/services/qimen/types.d.ts +390 -0
- package/dist/services/qimen/types.d.ts.map +1 -0
- package/dist/services/qimen/types.js +20 -0
- package/dist/services/qimen/types.js.map +1 -0
- package/dist/services/qimen/utils/gongUtils.d.ts +80 -0
- package/dist/services/qimen/utils/gongUtils.d.ts.map +1 -0
- package/dist/services/qimen/utils/gongUtils.js +164 -0
- package/dist/services/qimen/utils/gongUtils.js.map +1 -0
- package/dist/shared/types.d.ts +0 -1
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/utils/timeNormalization.d.ts +48 -0
- package/dist/utils/timeNormalization.d.ts.map +1 -0
- package/dist/utils/timeNormalization.js +69 -0
- package/dist/utils/timeNormalization.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 八神计算器
|
|
4
|
+
* 计算八神在九宫中的分布
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.BaShenCalculator = void 0;
|
|
8
|
+
const constants_1 = require("../data/constants");
|
|
9
|
+
/**
|
|
10
|
+
* 八神计算器
|
|
11
|
+
* 负责计算八神的排布
|
|
12
|
+
*/
|
|
13
|
+
class BaShenCalculator {
|
|
14
|
+
/**
|
|
15
|
+
* 计算八神布局
|
|
16
|
+
* @param zhiFuLuoGong 值符星落宫
|
|
17
|
+
* @param yinYangDun 阴阳遁
|
|
18
|
+
* @returns 八神布局
|
|
19
|
+
*
|
|
20
|
+
* 原理:
|
|
21
|
+
* 1. 值符神(第一神)永远临值符星落宫
|
|
22
|
+
* 2. 阳遁:八神按洛书顺序顺布
|
|
23
|
+
* 3. 阴遁:八神按洛书顺序逆布
|
|
24
|
+
*
|
|
25
|
+
* 八神顺序:值符-腾蛇-太阴-六合-白虎-玄武-九地-九天
|
|
26
|
+
*/
|
|
27
|
+
static calculate(zhiFuLuoGong, yinYangDun) {
|
|
28
|
+
const isYang = yinYangDun === '阳遁';
|
|
29
|
+
const gongShen = {};
|
|
30
|
+
// 值符神落宫
|
|
31
|
+
let startGong = zhiFuLuoGong;
|
|
32
|
+
if (startGong === 5) {
|
|
33
|
+
startGong = constants_1.ZHONG_GONG_JI; // 中宫寄坤二
|
|
34
|
+
}
|
|
35
|
+
const startIdx = (0, constants_1.getLuoShuIndex)(startGong);
|
|
36
|
+
// 依次排列八神
|
|
37
|
+
for (let i = 0; i < 8; i++) {
|
|
38
|
+
const shen = constants_1.BA_SHEN_ORDER[i];
|
|
39
|
+
const gongIdx = isYang
|
|
40
|
+
? (startIdx + i) % 8
|
|
41
|
+
: ((startIdx - i) % 8 + 8) % 8;
|
|
42
|
+
const gong = (0, constants_1.getLuoShuGong)(gongIdx);
|
|
43
|
+
gongShen[gong] = shen;
|
|
44
|
+
}
|
|
45
|
+
// 中宫寄坤二,使用坤二的神
|
|
46
|
+
gongShen[5] = gongShen[constants_1.ZHONG_GONG_JI];
|
|
47
|
+
return { gongShen };
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* 根据宫位找神
|
|
51
|
+
*/
|
|
52
|
+
static findShenByGong(gongShen, gong) {
|
|
53
|
+
return gongShen[gong === 5 ? constants_1.ZHONG_GONG_JI : gong];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.BaShenCalculator = BaShenCalculator;
|
|
57
|
+
//# sourceMappingURL=BaShenCalculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaShenCalculator.js","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/BaShenCalculator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,iDAM2B;AAO3B;;;GAGG;AACH,MAAa,gBAAgB;IAC3B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,SAAS,CACd,YAAqB,EACrB,UAAsB;QAEtB,MAAM,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC;QACnC,MAAM,QAAQ,GAA4B,EAA6B,CAAC;QAExE,QAAQ;QACR,IAAI,SAAS,GAAG,YAAY,CAAC;QAC7B,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,SAAS,GAAG,yBAAa,CAAC,CAAC,QAAQ;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,0BAAc,EAAC,SAAS,CAAC,CAAC;QAE3C,SAAS;QACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,yBAAa,CAAC,CAAC,CAAC,CAAC;YAE9B,MAAM,OAAO,GAAG,MAAM;gBACpB,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC;gBACpB,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAEjC,MAAM,IAAI,GAAG,IAAA,yBAAa,EAAC,OAAO,CAAC,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,eAAe;QACf,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,yBAAa,CAAC,CAAC;QAEtC,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,QAAiC,EAAE,IAAa;QACpE,OAAO,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,yBAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACF;AArDD,4CAqDC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 格局计算器
|
|
3
|
+
* 识别奇门遁甲中的吉格和凶格
|
|
4
|
+
*
|
|
5
|
+
* 中宫处理说明:
|
|
6
|
+
* - 中宫(5)寄坤二宫,其门/神继承自坤二
|
|
7
|
+
* - 涉及"门克宫"的格局(如门迫)需跳过中宫,因中宫无独立门
|
|
8
|
+
* - 涉及"对冲"的格局(如反吟)需跳过中宫,因中宫无对冲宫
|
|
9
|
+
* - 涉及"相合"的格局跳过中宫,避免与坤二重复计数
|
|
10
|
+
* - 涉及"天盘干"的格局(如入墓、九遁)可检查中宫
|
|
11
|
+
*/
|
|
12
|
+
import type { GongWei, GongInfo, TianGan, DiZhi, GeJuInfo, XunShouInfo, YinYangDun, PanType } from '../types';
|
|
13
|
+
/**
|
|
14
|
+
* 格局计算器
|
|
15
|
+
*/
|
|
16
|
+
export declare class GeJuCalculator {
|
|
17
|
+
/**
|
|
18
|
+
* 计算所有格局
|
|
19
|
+
*
|
|
20
|
+
* @param gongs 九宫信息
|
|
21
|
+
* @param yinYangDun 阴阳遁
|
|
22
|
+
* @param dayGan 日干(时盘/日盘使用日干,月盘使用月干,年盘使用年干)
|
|
23
|
+
* @param hourGan 时干(仅时盘提供,其他盘类型为 null)
|
|
24
|
+
* @param hourZhi 时支(仅时盘提供,其他盘类型为 null)
|
|
25
|
+
* @param xunShou 旬首信息
|
|
26
|
+
* @param panType 盘类型(默认时盘)
|
|
27
|
+
*
|
|
28
|
+
* 格局分类:
|
|
29
|
+
* - 日干格局:只需要 dayGan,所有盘类型都检测
|
|
30
|
+
* - 时辰格局:需要 hourGan 和/或 hourZhi,仅时盘检测
|
|
31
|
+
* - 五不遇时:需要 dayGan + hourGan
|
|
32
|
+
* - 飞干格/伏干格:需要 dayGan + hourGan
|
|
33
|
+
* - 天显时格:需要 hourZhi
|
|
34
|
+
* - 地私门格:需要 hourZhi
|
|
35
|
+
*/
|
|
36
|
+
static calculate(gongs: Record<GongWei, GongInfo>, yinYangDun: YinYangDun, dayGan: TianGan, hourGan: TianGan | null, hourZhi: DiZhi | null, xunShou: XunShouInfo, panType?: PanType): GeJuInfo[];
|
|
37
|
+
/**
|
|
38
|
+
* 三奇格局(乙丙丁为三奇)
|
|
39
|
+
*/
|
|
40
|
+
private static checkSanQiGeJu;
|
|
41
|
+
/**
|
|
42
|
+
* 三奇得门格局(吉格)
|
|
43
|
+
* 比三奇得使更精确:乙配开门、丙配生门、丁配休门
|
|
44
|
+
*
|
|
45
|
+
* 口诀:乙奇开门最为良,丙奇生门福禄昌,丁奇休门多吉庆
|
|
46
|
+
*/
|
|
47
|
+
private static checkSanQiDeMenGeJu;
|
|
48
|
+
/**
|
|
49
|
+
* 玉女守门格局(吉格)
|
|
50
|
+
* 丁奇临开门或休门,且遇太阴或六合
|
|
51
|
+
*
|
|
52
|
+
* 主阴人暗助、贵人相扶,利于谋事求人
|
|
53
|
+
*/
|
|
54
|
+
private static checkYuNuShouMenGeJu;
|
|
55
|
+
/**
|
|
56
|
+
* 九遁格局
|
|
57
|
+
*/
|
|
58
|
+
private static checkJiuDunGeJu;
|
|
59
|
+
/**
|
|
60
|
+
* 门迫格局(凶格)
|
|
61
|
+
*/
|
|
62
|
+
private static checkMenPoGeJu;
|
|
63
|
+
/**
|
|
64
|
+
* 入墓格局(凶格)
|
|
65
|
+
* 注:甲遁于六仪,不会出现在天盘,故不检测甲入墓
|
|
66
|
+
*/
|
|
67
|
+
private static checkRuMuGeJu;
|
|
68
|
+
/**
|
|
69
|
+
* 六仪击刑格局(凶格)
|
|
70
|
+
*/
|
|
71
|
+
private static checkJiXingGeJu;
|
|
72
|
+
/**
|
|
73
|
+
* 五不遇时(凶格)
|
|
74
|
+
* 时干克日干,且阴阳属性相同(同性相克)
|
|
75
|
+
*
|
|
76
|
+
* 口诀:
|
|
77
|
+
* 甲日最怕庚午时,乙日忌见辛巳知,
|
|
78
|
+
* 丙日壬辰最难当,丁日癸卯必须防,
|
|
79
|
+
* 戊日甲寅时上忌,己日乙丑最为凶,
|
|
80
|
+
* 庚日丙子不为良,辛日丁酉时中藏,
|
|
81
|
+
* 壬日戊申时上忌,癸日己未定不昌。
|
|
82
|
+
*/
|
|
83
|
+
private static checkWuBuYuShiGeJu;
|
|
84
|
+
/**
|
|
85
|
+
* 伏吟/反吟格局
|
|
86
|
+
*/
|
|
87
|
+
private static checkFuYinGeJu;
|
|
88
|
+
/**
|
|
89
|
+
* 青龙逃走(吉格)
|
|
90
|
+
*/
|
|
91
|
+
private static checkQingLongTaoGeJu;
|
|
92
|
+
/**
|
|
93
|
+
* 白虎猖狂(凶格)
|
|
94
|
+
*/
|
|
95
|
+
private static checkBaiHuChangKuangGeJu;
|
|
96
|
+
/**
|
|
97
|
+
* 奇仪组合格局检测(断卦核心)
|
|
98
|
+
* 检测天盘干+地盘干的特定组合
|
|
99
|
+
*
|
|
100
|
+
* 包含33种格局:
|
|
101
|
+
* - 吉格10种:青龙返首、飞鸟跌穴、丁遇戊格、日月会合、乙奇伏吟、丙奇伏吟等
|
|
102
|
+
* - 凶格23种:青龙折足、朱雀投江、大格、小格、刑格、辛仪伏吟、戊仪伏吟等
|
|
103
|
+
*/
|
|
104
|
+
private static checkQiYiZuHeGeJu;
|
|
105
|
+
/**
|
|
106
|
+
* 反吟格局检测
|
|
107
|
+
*/
|
|
108
|
+
private static checkFanYinGeJu;
|
|
109
|
+
/**
|
|
110
|
+
* 查找干所在的宫位(辅助方法)
|
|
111
|
+
*/
|
|
112
|
+
private static findGanGong;
|
|
113
|
+
/**
|
|
114
|
+
* 奇仪相合格局检测
|
|
115
|
+
*/
|
|
116
|
+
private static checkQiYiXiangHeGeJu;
|
|
117
|
+
/**
|
|
118
|
+
* 飞干格/伏干格检测
|
|
119
|
+
*/
|
|
120
|
+
private static checkFeiGanFuGanGeJu;
|
|
121
|
+
/**
|
|
122
|
+
* 天显时格检测
|
|
123
|
+
*/
|
|
124
|
+
private static checkTianXianShiGeJu;
|
|
125
|
+
/**
|
|
126
|
+
* 地私门格检测
|
|
127
|
+
*/
|
|
128
|
+
private static checkDiSiMenGeJu;
|
|
129
|
+
/**
|
|
130
|
+
* 网盖格检测
|
|
131
|
+
*/
|
|
132
|
+
private static checkWangGaiGeJu;
|
|
133
|
+
/**
|
|
134
|
+
* 天牢格检测
|
|
135
|
+
* 庚+杜门 = 天牢,主阻滞闭塞、官司牢狱
|
|
136
|
+
*
|
|
137
|
+
* 注:庚+开门+白虎 由"白虎猖狂"格局检测,不再重复
|
|
138
|
+
*/
|
|
139
|
+
private static checkTianLaoGeJu;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=GeJuCalculator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GeJuCalculator.d.ts","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/GeJuCalculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,EACL,QAAQ,EACR,WAAW,EACX,UAAU,EAEV,OAAO,EACR,MAAM,UAAU,CAAC;AASlB;;GAEG;AACH,qBAAa,cAAc;IACzB;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CAAC,SAAS,CACd,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,EAChC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,EAAE,KAAK,GAAG,IAAI,EACrB,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,OAAc,GACtB,QAAQ,EAAE;IAmCb;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IA8B7B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAyBlC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAsBnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAkG9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IA2C7B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAkC5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IA8B9B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA6BjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IA6C7B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAkBnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAoBvC;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAoBhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAwD9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAS1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAwBnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAyDnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA2BnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IA2B/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IA4B/B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAiBhC"}
|