From c029b6ac3f04ea38e5df52a0ad6ddfa1f5b614b4 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期四, 10 四月 2025 18:29:22 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/model/NavigateNode.java | 21 ++++++++++++++++++---
1 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/zy/common/model/NavigateNode.java b/src/main/java/com/zy/common/model/NavigateNode.java
index d173410..744fec3 100644
--- a/src/main/java/com/zy/common/model/NavigateNode.java
+++ b/src/main/java/com/zy/common/model/NavigateNode.java
@@ -2,20 +2,25 @@
import lombok.Data;
+import java.io.Serializable;
+
/**
* A*瀵昏矾绠楁硶Node鑺傜偣
*/
@Data
-public class NavigateNode implements Comparable<NavigateNode>{
+public class NavigateNode implements Comparable<NavigateNode>, Cloneable, Serializable {
private int x;//鍧愭爣x
private int y;//鍧愭爣y
+ private int z;//鍧愭爣z(楂樺害)
private int F;//缁煎悎鑺辫垂鐨勬鏁�
private int G;//宸茬粡鑺辫垂鐨勬鏁�
private int H;//灏嗚鑺辫垂鐨勬鏁�
private NavigateNode Father;//鐖惰妭鐐�
private Boolean isInflectionPoint;//鏄惁涓烘嫄鐐�
- private String direction;//鎷愮偣鏂瑰悜
+ private String direction;//琛岃蛋鏂瑰悜
+ private Integer moveDistance;//琛岃蛋璺濈
+ private Integer nodeValue;//鑺傜偣鏁版嵁
public NavigateNode(int x, int y) {
this.x = x;
@@ -28,7 +33,7 @@
this.Father = father;
if (this.Father != null) {
//璧拌繃鐨勬鏁扮瓑浜庣埗鑺傜偣璧拌繃鐨勬鏁板姞涓�
- this.G = father.G + 1;
+ this.G = father.G + this.G;
} else { //鐖惰妭鐐逛负绌轰唬琛ㄥ畠鏄涓�涓粨鐐�
this.G = 0;
}
@@ -44,4 +49,14 @@
return Integer.compare(this.F, o.F);
}
+ @Override
+ public NavigateNode clone() {
+ try {
+ return (NavigateNode) super.clone();
+ } catch (CloneNotSupportedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
}
--
Gitblit v1.9.1