diff --git a/src/renderer/components/dialog/tactical.vue b/src/renderer/components/dialog/tactical.vue index 7783ff0..7c72061 100644 --- a/src/renderer/components/dialog/tactical.vue +++ b/src/renderer/components/dialog/tactical.vue @@ -16,7 +16,7 @@
+ v-model="blockade.weDistance" @input="checkBlockadeWeDistance" /> km
@@ -24,7 +24,7 @@
+ v-model="blockade.enemyDistance" @input="checkBlockadeEnemyDistance" /> km
@@ -32,7 +32,7 @@
+ v-model="blockade.enemySpeed" @input="checkBlockadeEnemySpeed" /> km/h
@@ -51,9 +51,12 @@
所需追击时间 _ - ≤ - {{blockade.formatTime.integerPart }}h - {{ Math.round(blockade.formatTime.fractionalPart * 60)}}min + ≤ + {{ blockade.formatTime.integerPart + }}h + {{ Math.round(blockade.formatTime.fractionalPart * 60) }}min
@@ -63,7 +66,7 @@
+ v-model="pursuit.distance" @input="checkPursuitDistance" /> km
@@ -71,7 +74,7 @@
+ v-model="pursuit.enemySpeed" @input="checkPursuitEnemySpeed" /> km/h
@@ -79,7 +82,7 @@
+ v-model="pursuit.speed" @input="checkPursuitSpeed" /> km/h
@@ -93,9 +96,12 @@
追上敌方的时间 _ - = - {{pursuit.formatTime.integerPart }}h - {{ Math.round(pursuit.formatTime.fractionalPart * 60)}}min + = + {{ pursuit.formatTime.integerPart + }}h + {{ Math.round(pursuit.formatTime.fractionalPart * 60) }}min
@@ -105,7 +111,7 @@
+ v-model="encounter.distance" @input="checkEncounterDistance" /> km
@@ -113,7 +119,7 @@
+ v-model="encounter.weSpeed" @input="checkEncounterWeSpeed" /> km/h
@@ -121,7 +127,7 @@
+ v-model="encounter.enemySpeed" @input="checkEncounterEnemySpeed" /> km/h
@@ -135,16 +141,19 @@
与敌遭遇的时间 _ - = - {{encounter.formatTime.integerPart }}h - {{ Math.round(encounter.formatTime.fractionalPart * 60)}}min + = + {{ encounter.formatTime.integerPart }}h + {{ Math.round(encounter.formatTime.fractionalPart * 60) }}min
与敌遭遇的距离 _ {{ - encounter.meetingDistance }}km + encounter.meetingDistance }}km
@@ -153,7 +162,7 @@
+ v-model="dive.distance" @input="checkDiveDistance" /> m
@@ -161,23 +170,23 @@
+ v-model="dive.spacing" @input="checkDiveSpacing" /> m
- +
- +
@@ -185,7 +194,7 @@
+ v-model="dive.speed" @input="checkDiveSpeed" /> m/min
@@ -199,9 +208,12 @@
潜渡时间 _ - = - {{dive.formatTime.integerPart }}h - {{ Math.round(dive.formatTime.fractionalPart * 60)}}min + = + {{ dive.formatTime.integerPart + }}h + {{ Math.round(dive.formatTime.fractionalPart * 60) }}min
@@ -352,10 +364,7 @@ export default { }, pursuitCalculate() { - let num = Number(this.pursuit.distance) - let num2 = Number(this.pursuit.enemySpeed) - let num3 = Number(this.pursuit.speed) - if (!num || !num2 || !num3) { + if (!this.pursuit.distance || !this.pursuit.enemySpeed || !this.pursuit.speed) { this.pursuit.time = null this.pursuit.formatTime = { integerPart: null, @@ -364,9 +373,16 @@ export default { return; } + let num = Number(this.pursuit.distance) + let num2 = Number(this.pursuit.enemySpeed) + let num3 = Number(this.pursuit.speed) // 如果初始距离为0,已经追上 if (num === 0) { this.pursuit.time = 0 + this.pursuit.formatTime = { + integerPart: 0, + fractionalPart: 0, + } } else { const relativeSpeed = num3 - num2; @@ -387,10 +403,7 @@ export default { }, encounterCalculate() { - let num = Number(this.encounter.distance) - let num2 = Number(this.encounter.weSpeed) - let num3 = Number(this.encounter.enemySpeed) - if (!num || !num2 || !num3) { + if (!this.encounter.distance || !this.encounter.weSpeed || !this.encounter.enemySpeed) { this.encounter.time = null this.encounter.meetingDistance = null this.encounter.formatTime = { @@ -399,6 +412,13 @@ export default { } return; } + let num = Number(this.encounter.distance) + let num2 = Number(this.encounter.weSpeed) + let num3 = Number(this.encounter.enemySpeed) + if(num2 == 0 && num3 == 0) { + this.$message.warning("敌我双方运动时速皆为0,不会遭遇"); + return + } const relativeSpeed = num2 + num3; this.encounter.time = Math.round((num / relativeSpeed) * 100) / 100; this.encounter.meetingDistance = Math.round((num2 * this.encounter.time) * 100) / 100 @@ -422,7 +442,7 @@ export default { // let time = ((distance + ((tank / route) * spacing)) / speed) let num = Math.ceil(tank / route) //路径上坦克最多数量 let actualDistance = distance - if(num > 1) { + if (num > 1) { actualDistance = distance + ((num - 1) * spacing) } let time = actualDistance / speed @@ -459,7 +479,92 @@ export default { data = { integerPart, fractionalPart }; } return data - } + }, + + checkBlockadeWeDistance(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.blockade.weDistance = 0.01 + } + }, + checkBlockadeEnemyDistance(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.blockade.enemyDistance = 0.01 + } + }, + checkBlockadeEnemySpeed(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.blockade.enemySpeed = 0.01 + } + }, + checkPursuitDistance(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.pursuit.distance = 0.01 + } + }, + checkPursuitEnemySpeed(e) { + let value = Number(e.target.value) + if (value < 0) { + this.pursuit.enemySpeed = 0 + } + }, + checkPursuitSpeed(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.pursuit.speed = 0.01 + } + }, + checkEncounterDistance(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.encounter.distance = 0.01 + } + }, + checkEncounterWeSpeed(e) { + let value = Number(e.target.value) + if (value < 0) { + this.encounter.weSpeed = 0 + } + }, + checkEncounterEnemySpeed(e) { + let value = Number(e.target.value) + if (value < 0) { + this.encounter.enemySpeed = 0 + } + }, + checkDiveDistance(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.dive.distance = 0.01 + } + }, + checkDiveSpacing(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.dive.spacing = 0.01 + } + }, + checkDiveTank(e) { + let value = Number(e.target.value) + if (value < 1) { + this.dive.tank = 1 + } + }, + checkDiveRoute(e) { + let value = Number(e.target.value) + if (value < 1) { + this.dive.route = 1 + } + }, + checkDiveSpeed(e) { + let value = Number(e.target.value) + if (value < 0.01) { + this.dive.speed = 0.01 + } + }, }, mounted() { }, @@ -664,5 +769,4 @@ export default { } } } -} - +}