astarnode.java

来自「A*算法的一些资料」· Java 代码 · 共 46 行

JAVA
46
字号


/**
 *
 * @author soulnew@soulnew.com
 */
import java.util.*;
import java.math.*;
public class AStarNode {
    
    /** Creates a new instance of AStarNode */
    public AStarNode(String name,int x,int y) {
        neighbors=new LinkedList();
        this.x=x;
        this.y=y;
        this.name=name;
    }
    String name;
    int costFromStart;    
    int estimatedCostToGoal;
    int x,y;
    AStarNode pathParent;
    List neighbors;
    
    public String toString() {
        return name;
    }
    
    public int getEstimatedCost(AStarNode node){  //
        int dx=this.x-node.x;
        int dy=this.y-node.y;
       return (int)Math.sqrt(dx*dx+dy*dy);
    }
    
    public List getNeighbors(){
        return neighbors;
    }
    
    public int getCost(AStarNode node){
        int dx=this.x-node.x;
        int dy=this.y-node.y;
        return (int)Math.sqrt(dx*dx+dy*dy);
    }

    
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?