From bec3e6f914dbbcc7f68421f1e520e35db3f17160 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 24 十二月 2024 11:11:50 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/NavigateNode.java |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/NavigateNode.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/NavigateNode.java
index 7f0c943..0210277 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/NavigateNode.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/NavigateNode.java
@@ -3,6 +3,7 @@
 import lombok.Data;
 
 import java.io.Serializable;
+import java.util.Objects;
 import java.util.Optional;
 
 /**
@@ -26,6 +27,7 @@
     private String direction;   //琛岃蛋鏂瑰悜
     private Integer lastDistance;   // 璺濈涓婁釜鑺傜偣璺濈
     private Integer moveDistance;   // 鎬昏璧拌窛绂�
+    private Integer weight;        // G 鏉冮噸
 
     private String codeData;
 
@@ -46,7 +48,9 @@
         this.parent = father;
         if (this.parent != null) {
             //璧拌繃鐨勬鏁扮瓑浜庣埗鑺傜偣璧拌繃鐨勬鏁板姞涓�
-            this.G = father.G + Optional.ofNullable(this.lastDistance).orElse(0);
+            this.G = father.G
+                    + Optional.ofNullable(this.lastDistance).orElse(0)
+                    + Optional.ofNullable(this.weight).orElse(0);
         } else { //鐖惰妭鐐逛负绌轰唬琛ㄥ畠鏄涓�涓粨鐐�
             this.G = 0;
         }
@@ -71,4 +75,31 @@
         }
         return null;
     }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj) return true;
+        if (!(obj instanceof NavigateNode)) return false;
+        NavigateNode that = (NavigateNode) obj;
+        return this.x == that.x && this.y == that.y;
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(x, y);
+    }
+
+    public void reset() {
+        this.F = 0;
+        this.G = 0;
+        this.H = 0;
+        this.parent = null;
+        this.turningPoint = null;
+        this.direction = null;
+        this.lastDistance = null;
+        this.moveDistance = null;
+        this.weight = null;
+        this.codeData = null;
+    }
+
 }

--
Gitblit v1.9.1