From dc23ab59268e6dccd7d50d10cf8cffe1bf67d551 Mon Sep 17 00:00:00 2001 From: 1 <1@123> Date: 星期二, 13 五月 2025 18:55:34 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/RgvThread.java | 26 +++++++++++++++++++------- 1 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java index 274eee4..8c2ceeb 100644 --- a/src/main/java/com/zy/core/thread/RgvThread.java +++ b/src/main/java/com/zy/core/thread/RgvThread.java @@ -48,7 +48,7 @@ // private RgvProtocol rgvProtocol; private TaskProtocolCache taskProtocolCache = new TaskProtocolCache(); // # 杞ㄩ亾鎬婚暱 - private Long trackEntireLength = 215000L; + private Long trackEntireLength = 224000L; //# 杞ㄩ亾鍩哄噯鐐� private Long trackBenchmark = 1L; // # 閬胯璺濈 @@ -345,7 +345,7 @@ } long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); if (avoidAbs<51){ - return false; + return true; } rgvTaskProtocolOther.setAvoid(1); rgvTaskProtocolOther.setAvoidingTheDestination(avoid); @@ -365,7 +365,7 @@ } long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); if (avoidAbs<51){ - return false; + return true; } rgvTaskProtocolOther.setAvoid(1); rgvTaskProtocolOther.setAvoidingTheDestination(avoid); @@ -378,7 +378,7 @@ > avoidDistance) {//鏃犻渶閬胯 return true; } else { - if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()) { + if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()-50) { long avoid = rgvProtocolOther.getRgvPos() - rgvProtocolOther.getCarBodyJiaoMing() - avoidDistance - rgvProtocol.getCarBodyKunPeng(); if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[1])) { log.error("琛岃蛋瓒呭嚭鑼冨洿锛侊紒锛佷换鍔″紓甯� 鑱旂郴绠$悊鍛橈紒锛侊紒"); @@ -395,6 +395,12 @@ } return false; } + } else { + if ((rgvProtocolOther.getRgvPosDestinationOrPos(true) - rgvProtocolOther.getCarBodyJiaoMing()) + - (targetPosition + rgvProtocol.getCarBodyKunPeng()) + > avoidDistance) {//鏃犻渶閬胯 + return true; + } } } else { if (rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)) { @@ -410,7 +416,7 @@ } long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); if (avoidAbs<51){ - return false; + return true; } rgvTaskProtocolOther.setAvoid(1); rgvTaskProtocolOther.setAvoidingTheDestination(avoid); @@ -430,7 +436,7 @@ } long avoidAbs = Math.abs(avoid - rgvProtocolOther.getRgvPos()); if (avoidAbs<51){ - return false; + return true; } rgvTaskProtocolOther.setAvoid(1); rgvTaskProtocolOther.setAvoidingTheDestination(avoid); @@ -444,7 +450,7 @@ > avoidDistance) {//鏃犻渶閬胯 return true; } else { - if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos()) { + if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos() + 50) { long avoid = rgvProtocolOther.getRgvPos() + rgvProtocolOther.getCarBodyKunPeng() + avoidDistance + rgvProtocol.getCarBodyJiaoMing(); if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[0])) { log.error("琛岃蛋瓒呭嚭鑼冨洿锛侊紒锛佷换鍔″紓甯� 鑱旂郴绠$悊鍛橈紒锛侊紒"); @@ -461,6 +467,12 @@ } return false; } + } else { + if ((rgvProtocolOther.getRgvPosDestinationOrPos(false) - rgvProtocolOther.getCarBodyJiaoMing()) + - (targetPosition + rgvProtocol.getCarBodyKunPeng()) + > avoidDistance) {//鏃犻渶閬胯 + return true; + } } } return false; -- Gitblit v1.9.1