openatc-components 0.4.48 → 0.4.50

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.
@@ -697,6 +697,7 @@ export default {
697
697
  let minLength = Math.min(...ringlength)
698
698
  let resultArrs = [] // 环1分组
699
699
  let resultArr = [] // 环2分组
700
+ let resultArrThree = [] // 环3分组
700
701
  for (let j = 0; j < ringsequence[0].length; j += minLength) {
701
702
  resultArrs.push(ringsequence[0].slice(j, j + minLength))
702
703
  if (ringsequence[0].length === minLength) {
@@ -707,6 +708,11 @@ export default {
707
708
  for (let i = 0; i < ringsequence[1].length; i += minLength) {
708
709
  resultArr.push(ringsequence[1].slice(i, i + minLength))
709
710
  }
711
+ if (ringsequence[2]) {
712
+ for (let k = 0; k < ringsequence[2].length; k += minLength) {
713
+ resultArrThree.push(ringsequence[2].slice(k, k + minLength))
714
+ }
715
+ }
710
716
  }
711
717
  this.patternInfo = []
712
718
  let currentArr = []
@@ -734,6 +740,7 @@ export default {
734
740
  // 取没个环与环关系的并集
735
741
  let barrierRing1 = []
736
742
  let barrierRing2 = []
743
+ let barrierRing3 = []
737
744
  let ring1 = [] // 环1与关系1的并集
738
745
  for (let h = 0; h < newCurrent.length; h++) {
739
746
  let adds = [...new Set(resultArrs[0])].filter(item => newCurrent[h].includes(item))
@@ -758,8 +765,20 @@ export default {
758
765
  ring2.push(add)
759
766
  }
760
767
  barrierRing2.push(...ring2, ...ring2s)
768
+ // 环3
769
+ let ring3s = [] // 环3与关系1的并集
770
+ for (let h = 0; h < newCurrent.length; h++) {
771
+ let addRing2 = [...new Set(resultArrThree[1])].filter(item => newCurrent[h].includes(item))
772
+ ring3s.push(addRing2)
773
+ }
774
+ let ring3 = [] // 环3与关系1的并集
775
+ for (let h = 0; h < newCurrent.length; h++) {
776
+ let add = [...new Set(resultArrThree[0])].filter(item => newCurrent[h].includes(item))
777
+ ring3.push(add)
778
+ }
779
+ barrierRing3.push(...ring3, ...ring3s)
761
780
  for (let k = 0; k < barrierRing1.length; k++) {
762
- resultList.push(barrierRing1[k].concat(barrierRing2[k]))
781
+ resultList.push(barrierRing1[k].concat(barrierRing2[k]).concat(barrierRing3[k]))
763
782
  }
764
783
  }
765
784
  let resultLists = resultList.filter(item => item.length !== 0)
@@ -956,6 +975,7 @@ export default {
956
975
  let minLength = Math.min(...ringlength)
957
976
  let resultArrs = [] // 环1分组
958
977
  let resultArr = [] // 环2分组
978
+ let resultArrThree = [] // 环3分组
959
979
  for (let j = 0; j < ringsequence[0].length; j += minLength) {
960
980
  resultArrs.push(ringsequence[0].slice(j, j + minLength))
961
981
  if (ringsequence[0].length === minLength) {
@@ -966,6 +986,11 @@ export default {
966
986
  for (let i = 0; i < ringsequence[1].length; i += minLength) {
967
987
  resultArr.push(ringsequence[1].slice(i, i + minLength))
968
988
  }
989
+ if (ringsequence[2]) {
990
+ for (let k = 0; k < ringsequence[2].length; k += minLength) {
991
+ resultArrThree.push(ringsequence[2].slice(k, k + minLength))
992
+ }
993
+ }
969
994
  }
970
995
  this.patternInfo = []
971
996
  let currentArr = []
@@ -993,6 +1018,7 @@ export default {
993
1018
  // 取没个环与环关系的并集
994
1019
  let barrierRing1 = []
995
1020
  let barrierRing2 = []
1021
+ let barrierRing3 = []
996
1022
  let ring1 = [] // 环1与关系1的并集
997
1023
  for (let h = 0; h < newCurrent.length; h++) {
998
1024
  let adds = [...new Set(resultArrs[0])].filter(item => newCurrent[h].includes(item))
@@ -1017,8 +1043,20 @@ export default {
1017
1043
  ring2.push(add)
1018
1044
  }
1019
1045
  barrierRing2.push(...ring2, ...ring2s)
1046
+ // 环3
1047
+ let ring3s = [] // 环3与关系1的并集
1048
+ for (let h = 0; h < newCurrent.length; h++) {
1049
+ let addRing2 = [...new Set(resultArrThree[1])].filter(item => newCurrent[h].includes(item))
1050
+ ring3s.push(addRing2)
1051
+ }
1052
+ let ring3 = [] // 环3与关系1的并集
1053
+ for (let h = 0; h < newCurrent.length; h++) {
1054
+ let add = [...new Set(resultArrThree[0])].filter(item => newCurrent[h].includes(item))
1055
+ ring3.push(add)
1056
+ }
1057
+ barrierRing3.push(...ring3, ...ring3s)
1020
1058
  for (let k = 0; k < barrierRing1.length; k++) {
1021
- resultList.push(barrierRing1[k].concat(barrierRing2[k]))
1059
+ resultList.push(barrierRing1[k].concat(barrierRing2[k]).concat(barrierRing3[k]))
1022
1060
  }
1023
1061
  }
1024
1062
  let resultLists = resultList.filter(item => item.length !== 0)