27
27
</div >
28
28
<div style =" display :flex ; margin-left : 10px " v-show =" yao[0]>=0" >
29
29
<div >
30
- <p >{{benGuaName.slice(3) }}&emsp ; </p >
30
+ <p >{{benGuaName[0] === benGuaName[1] ? benGuaName.substring(2) : benGuaName }}&emsp ; </p >
31
31
<p v-for =" (j, i) in 6" >
32
32
{{ shiYing[i] || '&emsp ; ' }}  ;
33
33
{{ benGuaLiuQin[i] }}  ;
37
37
</p >
38
38
</div >
39
39
<div >
40
- <p >{{bianGuaName.slice(3) }}&emsp ; </p >
40
+ <p >{{bianGuaName[0] === bianGuaName[1] ? bianGuaName.substring(2) : bianGuaName }}&emsp ; </p >
41
41
<p v-for =" (j, i) in 6" >
42
42
{{ yao[i]===0 || yao[i]===3 ? bianGuaLiuQin[i] : '&emsp ;&emsp ; ' }}  ;
43
43
{{ bianGua[i] ? '▅▅▅▅▅' : '▅▅&emsp ; ▅▅' }}  ;
49
49
50
50
<script setup>
51
51
import { ref } from ' vue'
52
- import { BA_GUA_MAP , WU_XING } from ' ../assets/constant.js'
52
+ import { BA_GUA_2_YAO , BA_GUA_2_ALIAS , GUA_64 , WU_XING } from ' ../assets/constant.js'
53
53
54
- const gua64 = [
55
- ' 乾乾-乾卦' , ' 乾巽-天风姤' , ' 乾艮-天山遁' , ' 乾坤-天地否' , ' 巽坤-风地观' , ' 艮坤-山地剥' , ' 离坤-火地晋' , ' 离乾-火天大有' ,
56
- ' 坎坎-坎卦' , ' 坎兑-水泽节' , ' 坎震-水雷屯' , ' 坎离-水火既济' , ' 兑离-泽火革' , ' 震离-雷火丰' , ' 坤离-地火明夷' , ' 坤坎-地水师' ,
57
- ' 艮艮-艮卦' , ' 艮离-山火贲' , ' 艮乾-山天大畜' , ' 艮兑-山泽损' , ' 离兑-火泽睽' , ' 乾兑-天泽履' , ' 巽兑-风泽中孚' , ' 巽艮-风山渐' ,
58
- ' 震震-震卦' , ' 震坤-雷地豫' , ' 震坎-雷水解' , ' 震巽-雷风恒' , ' 坤巽-地风升' , ' 坎巽-水风井' , ' 兑巽-泽风大过' , ' 兑震-泽雷随' ,
59
- ' 巽巽-巽卦' , ' 巽乾-风天小畜' , ' 巽离-风火家人' , ' 巽震-风雷益' , ' 乾震-天雷无妄' , ' 离震-火雷噬嗑' , ' 艮震-山雷颐' , ' 艮巽-山风蛊' ,
60
- ' 离离-离卦' , ' 离艮-火山旅' , ' 离巽-火风鼎' , ' 离坎-火水未济' , ' 艮坎-山水蒙' , ' 巽坎-风水涣' , ' 乾坎-天水讼' , ' 乾离-天火同人' ,
61
- ' 坤坤-坤卦' , ' 坤震-地雷复' , ' 坤兑-地泽临' , ' 坤乾-地天泰' , ' 震乾-雷天大壮' , ' 兑乾-泽天夬' , ' 坎乾-水天需' , ' 坎坤-水地比' ,
62
- ' 兑兑-兑卦' , ' 兑坎-泽水困' , ' 兑坤-泽地萃' , ' 兑艮-泽山咸' , ' 坎艮-水山蹇' , ' 坤艮-地山谦' , ' 震艮-雷山小过' , ' 震兑-雷泽归妹' ,
63
- ]
64
54
const benGua = ref ([])
65
55
const benGuaLiuQin = ref ([])
66
56
const benGuaNaJia = ref ([])
@@ -75,31 +65,32 @@ const yao = ref([-1, -1, -1, -1, -1, -1])
75
65
function main () {
76
66
benGua .value = []
77
67
bianGua .value = []
68
+ shiYing .value = [' ' , ' ' , ' ' , ' ' , ' ' , ' ' ]
78
69
for (const i of yao .value ) {
79
70
if (i === - 1 ) return
80
71
else if (i === 0 ) { benGua .value .push (1 ); bianGua .value .push (0 ) }
81
72
else if (i === 1 ) { benGua .value .push (0 ); bianGua .value .push (0 ) }
82
73
else if (i === 2 ) { benGua .value .push (1 ); bianGua .value .push (1 ) }
83
74
else if (i === 3 ) { benGua .value .push (0 ); bianGua .value .push (1 ) }
84
75
}
85
- const benShangGua = BA_GUA_MAP [benGua .value .slice (0 , 3 ).join (' ' )]
86
- const benXiaGua = BA_GUA_MAP [benGua .value .slice (3 , 6 ).join (' ' )]
87
- const bianShangGua = BA_GUA_MAP [bianGua .value .slice (0 , 3 ).join (' ' )]
88
- const bianXiaGua = BA_GUA_MAP [bianGua .value .slice (3 , 6 ).join (' ' )]
89
- const guaGongIndex = gua64 .findIndex (i => i .indexOf (benShangGua + benXiaGua) === 0 )
90
- const guaGongWuXing = WU_XING [gua64 [guaGongIndex - guaGongIndex % 8 ][0 ]]
76
+ const benShangGua = BA_GUA_2_YAO [benGua .value .slice (0 , 3 ).join (' ' )]
77
+ const benXiaGua = BA_GUA_2_YAO [benGua .value .slice (3 , 6 ).join (' ' )]
78
+ const bianShangGua = BA_GUA_2_YAO [bianGua .value .slice (0 , 3 ).join (' ' )]
79
+ const bianXiaGua = BA_GUA_2_YAO [bianGua .value .slice (3 , 6 ).join (' ' )]
80
+ const guaGongIndex = GUA_64 .findIndex (i => i .indexOf (BA_GUA_2_ALIAS [ benShangGua] + BA_GUA_2_ALIAS [ benXiaGua] ) === 0 )
81
+ const guaGongWuXing = WU_XING [GUA_64 [guaGongIndex - guaGongIndex % 8 ][0 ]]
91
82
switch (guaGongIndex % 8 ) {
92
83
case 0 : shiYing .value [0 ] = ' 世' ; shiYing .value [3 ] = ' 应' ; break
93
- case 1 : shiYing .value [5 ] = ' 世' ; shiYing .value [2 ] = ' 应' ; break
94
- case 2 : shiYing .value [4 ] = ' 世' ; shiYing .value [1 ] = ' 应' ; break
84
+ case 1 : shiYing .value [3 ] = ' 世' ; shiYing .value [0 ] = ' 应' ; break
85
+ case 2 : shiYing .value [1 ] = ' 世' ; shiYing .value [4 ] = ' 应' ; break
95
86
case 3 : shiYing .value [3 ] = ' 世' ; shiYing .value [0 ] = ' 应' ; break
96
87
case 4 : shiYing .value [2 ] = ' 世' ; shiYing .value [5 ] = ' 应' ; break
97
- case 5 : shiYing .value [1 ] = ' 世' ; shiYing .value [4 ] = ' 应' ; break
98
- case 6 : shiYing .value [2 ] = ' 世' ; shiYing .value [5 ] = ' 应' ; break
99
- case 7 : shiYing .value [3 ] = ' 世' ; shiYing .value [0 ] = ' 应' ; break
88
+ case 5 : shiYing .value [5 ] = ' 世' ; shiYing .value [2 ] = ' 应' ; break
89
+ case 6 : shiYing .value [4 ] = ' 世' ; shiYing .value [1 ] = ' 应' ; break
90
+ case 7 : shiYing .value [2 ] = ' 世' ; shiYing .value [5 ] = ' 应' ; break
100
91
}
101
- benGuaName .value = gua64 .find (i => i .indexOf (benShangGua + benXiaGua) === 0 )
102
- bianGuaName .value = gua64 .find (i => i .indexOf (bianShangGua + bianXiaGua) === 0 )
92
+ benGuaName .value = GUA_64 .find (i => i .indexOf (BA_GUA_2_ALIAS [ benShangGua] + BA_GUA_2_ALIAS [ benXiaGua] ) === 0 )
93
+ bianGuaName .value = GUA_64 .find (i => i .indexOf (BA_GUA_2_ALIAS [ bianShangGua] + BA_GUA_2_ALIAS [ bianXiaGua] ) === 0 )
103
94
benGuaNaJia .value = [NA_JIA [benShangGua][5 ], NA_JIA [benShangGua][4 ], NA_JIA [benShangGua][3 ], NA_JIA [benXiaGua][2 ], NA_JIA [benXiaGua][1 ], NA_JIA [benXiaGua][0 ]]
104
95
bianGuaNaJia .value = [NA_JIA [bianShangGua][5 ], NA_JIA [bianShangGua][4 ], NA_JIA [bianShangGua][3 ], NA_JIA [bianXiaGua][2 ], NA_JIA [bianXiaGua][1 ], NA_JIA [bianXiaGua][0 ]]
105
96
benGuaLiuQin .value = benGuaNaJia .value .map (i => LIU_QIN [guaGongWuXing][i[2 ]])
0 commit comments