⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 camcontrolpanel.java

📁 控制移到机器人的例子程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/*
	This is a demo of how to use CMUcam and has a handy snap-frame
	display.  So you can always use this to see what on earth the robot
	sees.  The buttons are all self-explanatory. Remember to do
	initCamera before proceeding, and then ALWAYS do resetCamera and
	then you're ready to rock and roll.
 */

import java.awt.*;

public class camControlPanel extends Frame
{
    CMUcam myCam;
    String is1;
    int winx1, winx2, winy1, winy2;
    int anchorX, anchorY, multX, multY;
    int bestRThresh;
    int inputport, inputbaud, inputrmin, inputrmax, inputgmin, inputgmax;
    int inputbmin, inputbmax, inputx1, inputy1, inputx2, inputy2;
    
	public camControlPanel()
	{
		// This code is automatically generated by Visual Cafe when you add
		// components to the visual environment. It instantiates and initializes
		// the components. To modify the code, only use code syntax that matches
		// what Visual Cafe can generate, or Visual Cafe may be unable to back
		// parse your Java file into its visual environment.
		//{{INIT_CONTROLS
		setLayout(null);
		setVisible(false);
		setSize(insets().left + insets().right + 765,insets().top + insets().bottom + 512);
		textField1 = new java.awt.TextField();
		textField1.setText("1");
		textField1.setBounds(insets().left + 528,insets().top + 336,36,20);
		textField1.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField1);
		button1 = new java.awt.Button();
		button1.setActionCommand("button");
		button1.setLabel("initCamera");
		button1.setBounds(insets().left + 36,insets().top + 348,86,25);
		button1.setBackground(new Color(12632256));
		add(button1);
		button2 = new java.awt.Button();
		button2.setActionCommand("button");
		button2.setLabel("getVersion");
		button2.setBounds(insets().left + 144,insets().top + 384,86,25);
		button2.setBackground(new Color(12632256));
		add(button2);
		button3 = new java.awt.Button();
		button3.setActionCommand("button");
		button3.setLabel("trackColor");
		button3.setBounds(insets().left + 144,insets().top + 420,84,24);
		button3.setBackground(new Color(12632256));
		add(button3);
		button4 = new java.awt.Button();
		button4.setActionCommand("button");
		button4.setLabel("getMean");
		button4.setBounds(insets().left + 36,insets().top + 420,84,26);
		button4.setBackground(new Color(12632256));
		add(button4);
		button5 = new java.awt.Button();
		button5.setActionCommand("button");
		button5.setLabel("checkCam");
		button5.setBounds(insets().left + 36,insets().top + 384,84,25);
		button5.setBackground(new Color(12632256));
		add(button5);
		label1 = new java.awt.Label("port");
		label1.setBounds(insets().left + 504,insets().top + 336,24,25);
		label1.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label1);
		textField2 = new java.awt.TextField();
		textField2.setBounds(insets().left + 456,insets().top + 60,288,28);
		add(textField2);
		label2 = new java.awt.Label("Response String:");
		label2.setBounds(insets().left + 456,insets().top + 36,132,20);
		add(label2);
		textField3 = new java.awt.TextField();
		textField3.setBounds(insets().left + 492,insets().top + 132,42,26);
		add(textField3);
		textField4 = new java.awt.TextField();
		textField4.setBounds(insets().left + 492,insets().top + 168,42,26);
		add(textField4);
		textField5 = new java.awt.TextField();
		textField5.setBounds(insets().left + 492,insets().top + 204,42,26);
		add(textField5);
		textField6 = new java.awt.TextField();
		textField6.setBounds(insets().left + 552,insets().top + 132,42,26);
		add(textField6);
		textField7 = new java.awt.TextField();
		textField7.setBounds(insets().left + 552,insets().top + 168,42,26);
		add(textField7);
		textField8 = new java.awt.TextField();
		textField8.setBounds(insets().left + 552,insets().top + 204,42,26);
		add(textField8);
		label3 = new java.awt.Label("R/Y");
		label3.setBounds(insets().left + 468,insets().top + 132,24,27);
		add(label3);
		label4 = new java.awt.Label("G/V");
		label4.setBounds(insets().left + 468,insets().top + 168,24,27);
		add(label4);
		label5 = new java.awt.Label("B/U");
		label5.setBounds(insets().left + 468,insets().top + 204,24,27);
		add(label5);
		label6 = new java.awt.Label("mean");
		label6.setBounds(insets().left + 496,insets().top + 107,36,27);
		add(label6);
		label7 = new java.awt.Label("dev");
		label7.setBounds(insets().left + 564,insets().top + 108,36,27);
		add(label7);
		textField9 = new java.awt.TextField();
		textField9.setBounds(insets().left + 624,insets().top + 168,42,26);
		add(textField9);
		textField10 = new java.awt.TextField();
		textField10.setBounds(insets().left + 708,insets().top + 168,42,26);
		add(textField10);
		textField11 = new java.awt.TextField();
		textField11.setBounds(insets().left + 666,insets().top + 204,42,26);
		add(textField11);
		textField12 = new java.awt.TextField();
		textField12.setBounds(insets().left + 666,insets().top + 131,42,26);
		add(textField12);
		textField13 = new java.awt.TextField();
		textField13.setBounds(insets().left + 636,insets().top + 252,42,26);
		add(textField13);
		textField14 = new java.awt.TextField();
		textField14.setBounds(insets().left + 696,insets().top + 252,42,26);
		add(textField14);
		label8 = new java.awt.Label("conf");
		label8.setBounds(insets().left + 708,insets().top + 276,36,27);
		add(label8);
		label9 = new java.awt.Label("pixels");
		label9.setBounds(insets().left + 639,insets().top + 276,36,27);
		add(label9);
		button8 = new java.awt.Button();
		button8.setActionCommand("button");
		button8.setLabel("setWindow");
		button8.setBounds(insets().left + 36,insets().top + 456,86,25);
		button8.setBackground(new Color(12632256));
		add(button8);
		button6 = new java.awt.Button();
		button6.setActionCommand("button");
		button6.setLabel("resetCamera");
		button6.setBounds(insets().left + 144,insets().top + 348,96,24);
		button6.setBackground(new Color(12632256));
		add(button6);
		button10 = new java.awt.Button();
		button10.setActionCommand("button");
		button10.setLabel("FindRed");
		button10.setBounds(insets().left + 144,insets().top + 456,86,25);
		button10.setBackground(new Color(12632256));
		add(button10);
		button11 = new java.awt.Button();
		button11.setActionCommand("button");
		button11.setLabel("Grab&DumpFrame");
		button11.setBounds(insets().left + 468,insets().top + 264,120,29);
		button11.setBackground(new Color(12632256));
		add(button11);
		textField15 = new java.awt.TextField();
		textField15.setText("5");
		textField15.setBounds(insets().left + 528,insets().top + 360,36,20);
		textField15.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField15);
		label10 = new java.awt.Label("baud");
		label10.setBounds(insets().left + 504,insets().top + 360,24,24);
		label10.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label10);
		textField16 = new java.awt.TextField();
		textField16.setText("1");
		textField16.setBounds(insets().left + 528,insets().top + 384,36,20);
		textField16.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField16);
		label11 = new java.awt.Label("x1");
		label11.setBounds(insets().left + 504,insets().top + 384,24,25);
		label11.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label11);
		textField17 = new java.awt.TextField();
		textField17.setText("1");
		textField17.setBounds(insets().left + 528,insets().top + 408,36,20);
		textField17.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField17);
		label12 = new java.awt.Label("y1");
		label12.setBounds(insets().left + 504,insets().top + 408,24,25);
		label12.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label12);
		textField18 = new java.awt.TextField();
		textField18.setText("80");
		textField18.setBounds(insets().left + 528,insets().top + 432,36,20);
		textField18.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField18);
		label13 = new java.awt.Label("x2");
		label13.setBounds(insets().left + 504,insets().top + 432,24,25);
		label13.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label13);
		textField19 = new java.awt.TextField();
		textField19.setText("143");
		textField19.setBounds(insets().left + 528,insets().top + 456,36,20);
		textField19.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField19);
		label14 = new java.awt.Label("y2");
		label14.setBounds(insets().left + 504,insets().top + 456,24,25);
		label14.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label14);
		textField20 = new java.awt.TextField();
		textField20.setText("0");
		textField20.setBounds(insets().left + 588,insets().top + 336,36,20);
		textField20.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField20);
		label15 = new java.awt.Label("rmin");
		label15.setBounds(insets().left + 624,insets().top + 336,24,25);
		label15.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label15);
		textField21 = new java.awt.TextField();
		textField21.setText("240");
		textField21.setBounds(insets().left + 588,insets().top + 360,36,20);
		textField21.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField21);
		label16 = new java.awt.Label("rmax");
		label16.setBounds(insets().left + 624,insets().top + 360,24,25);
		label16.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label16);
		textField22 = new java.awt.TextField();
		textField22.setText("0");
		textField22.setBounds(insets().left + 588,insets().top + 384,36,20);
		textField22.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField22);
		label17 = new java.awt.Label("gmin");
		label17.setBounds(insets().left + 624,insets().top + 384,24,25);
		label17.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label17);
		textField23 = new java.awt.TextField();
		textField23.setText("240");
		textField23.setBounds(insets().left + 588,insets().top + 408,36,20);
		textField23.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField23);
		label18 = new java.awt.Label("gmax");
		label18.setBounds(insets().left + 624,insets().top + 408,24,25);
		label18.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label18);
		textField24 = new java.awt.TextField();
		textField24.setText("0");
		textField24.setBounds(insets().left + 588,insets().top + 432,36,20);
		textField24.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField24);
		label19 = new java.awt.Label("bmin");
		label19.setBounds(insets().left + 624,insets().top + 432,24,25);
		label19.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label19);
		textField25 = new java.awt.TextField();
		textField25.setText("240");
		textField25.setBounds(insets().left + 588,insets().top + 456,36,20);
		textField25.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(textField25);
		label20 = new java.awt.Label("bmax");
		label20.setBounds(insets().left + 624,insets().top + 456,24,25);
		label20.setFont(new Font("Dialog", Font.PLAIN, 10));
		add(label20);
		setTitle("CMUcam Controls Screen");
		//}}

		//{{INIT_MENUS
		//}}

		//{{REGISTER_LISTENERS
		SymWindow aSymWindow = new SymWindow();
		this.addWindowListener(aSymWindow);
		SymMouse aSymMouse = new SymMouse();
		button1.addMouseListener(aSymMouse);
		button2.addMouseListener(aSymMouse);
		button3.addMouseListener(aSymMouse);
		button4.addMouseListener(aSymMouse);
		button5.addMouseListener(aSymMouse);
		button8.addMouseListener(aSymMouse);
		button6.addMouseListener(aSymMouse);
		button10.addMouseListener(aSymMouse);
		button11.addMouseListener(aSymMouse);
		//}}
		this.setVisible(true);
		myCam = new CMUcam(); // instantiate a new camera //
		winx1 = 1; winy1 = 1;
		winx2 = 80; winy2 = 143;
		anchorX = 40; anchorY=35;
		multX=3; multY=2; 
		// multiplicative factors for drawing image on screen
		this.refreshGraphics();		    
	}

	public camControlPanel(String title)
	{
		this();
		setTitle(title);
	}

	public synchronized void show()
	{
		move(50, 50);
		super.show();
	}

	public void addNotify()
	{
	    // Record the size of the window prior to calling parents addNotify.
	    Dimension d = getSize();
	    
		super.addNotify();

		if (fComponentsAdjusted)
			return;

		// Adjust components according to the insets
		setSize(insets().left + insets().right + d.width, insets().top + insets().bottom + d.height);
		Component components[] = getComponents();
		for (int i = 0; i < components.length; i++)
		{
			Point p = components[i].getLocation();
			p.translate(insets().left, insets().top);
			components[i].setLocation(p);
		}
		fComponentsAdjusted = true;
	}

    // Used for addNotify check.
	boolean fComponentsAdjusted = false;

	//{{DECLARE_CONTROLS
	java.awt.TextField textField1;
	java.awt.Button button1;
	java.awt.Button button2;
	java.awt.Button button3;
	java.awt.Button button4;
	java.awt.Button button5;
	java.awt.Label label1;
	java.awt.TextField textField2;
	java.awt.Label label2;
	java.awt.TextField textField3;
	java.awt.TextField textField4;
	java.awt.TextField textField5;
	java.awt.TextField textField6;
	java.awt.TextField textField7;
	java.awt.TextField textField8;
	java.awt.Label label3;
	java.awt.Label label4;
	java.awt.Label label5;
	java.awt.Label label6;
	java.awt.Label label7;
	java.awt.TextField textField9;
	java.awt.TextField textField10;
	java.awt.TextField textField11;
	java.awt.TextField textField12;
	java.awt.TextField textField13;
	java.awt.TextField textField14;
	java.awt.Label label8;
	java.awt.Label label9;
	java.awt.Button button8;
	java.awt.Button button6;
	java.awt.Button button10;
	java.awt.Button button11;
	java.awt.TextField textField15;
	java.awt.Label label10;
	java.awt.TextField textField16;
	java.awt.Label label11;
	java.awt.TextField textField17;
	java.awt.Label label12;
	java.awt.TextField textField18;
	java.awt.Label label13;
	java.awt.TextField textField19;
	java.awt.Label label14;

⌨️ 快捷键说明

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