thalmann.java

来自「Thalmann算法的java实现。有详细注释。」· Java 代码 · 共 54 行

JAVA
54
字号
/**
 * Thalmann提出的算法,其中使用到FloodFill算法
 *
 **/

package page;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

//Thalmann类,主类
public class Thalmann extends JFrame
{	
	public static int MaxM=17;  //环境图中的最大行数
	public static int MaxN=17;  //最大列数
	public static int startx=5;    //开始节点的X值
	public static int starty=6;    //开始节点的Y值
	public static int goalx=2;     //目标节点的X值
	public static int goaly=3;     //目标节点的Y值
	
	private JPanel contentPane;    
	JButton b[][]=new JButton[MaxM][MaxN];     //创建xx*yy个JButton的引用对象,和一个b引用对象指向该数组的第一个位置 
	int environ[][]=new int[MaxM][MaxN];      //用于一个整型数组保存环境信息

	

	//构造函数,给出环境信息
	public Thalmann()
	{
		super("Thalmann's method");   

		contentPane=(JPanel)this.getContentPane(); //获得JFrame的内容窗格
		GridLayout layout=new GridLayout(MaxM,MaxN);   //构造一个新的布局管理器layout
		contentPane.setLayout(layout);   //将内容窗格的布局管理器设为GridLayout类型
		
		//创建并设置按钮组的属性
		new CreatArrayForAll(b,environ,contentPane,MaxM,MaxN,startx,starty,goalx,goaly);

		//调用NFloodFill进行路径规划
		new TFloodFill(b,environ,MaxM,MaxN,startx,starty,goalx, goaly);

	}

	//主函数部分
	public static void main(String args[])
	{
		Thalmann app=new Thalmann();
		app.setSize(600,600);
		app.show();
		app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}

⌨️ 快捷键说明

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