📄 mainwindow.java
字号:
commandVal = 2;
}
/* else
{
int t=cImage.loadImage(command);
}
*/
}
public void adjustmentValueChanged(AdjustmentEvent e) {
if (commandVal != 0) {
commandVal = -1;
while (commandVal == -1)
try {
Thread.sleep(100);
} catch (InterruptedException d) {
}
}
status_t.setText("Setting Servos");
mySerial.write("sv 0 " + servo0_s.getValue() + "\r");
mySerial.write("sv 1 " + servo1_s.getValue() + "\r");
mySerial.write("sv 2 " + servo2_s.getValue() + "\r");
mySerial.write("sv 3 " + servo3_s.getValue() + "\r");
mySerial.write("sv 4 " + servo4_s.getValue() + "\r");
servo0_l.setText((new Integer(servo0_s.getValue())).toString());
servo1_l.setText((new Integer(servo1_s.getValue())).toString());
servo2_l.setText((new Integer(servo2_s.getValue())).toString());
servo3_l.setText((new Integer(servo3_s.getValue())).toString());
servo4_l.setText((new Integer(servo4_s.getValue())).toString());
status_t.setText("Servos Set");
}
private void setWindowParams() {
if (res == 0) {
if (cameraType == 6) {
x1.setText("1");
y1.setText("1");
x2.setText("87");
y2.setText("142");
} else {
x1.setText("1");
y1.setText("1");
x2.setText("159");
y2.setText("238");
}
} else {
x2.setText("174");
y2.setText("254");
}
}
/*
This is for check box menus
*/
public void itemStateChanged(ItemEvent e) {
ItemSelectable command = e.getItemSelectable();
if (commandVal != 0) {
commandVal = -1;
while (commandVal == -1)
try {
Thread.sleep(100);
} catch (InterruptedException d) {
}
}
if (command == autoGain ) {
int ag;
status_t.setText("Setting Auto Gain");
if (autoGain.getSelectedIndex() == 0)
ag = 33;
else
ag = 32;
mySerial.write("cr 19 " + ag);
if (mySerial.readACK(1) == 1)
status_t.setText("Registers Set.");
else
status_t.setText("Registers Failed.");
} else if (command == whiteBalance || command == color_c) {
int wb;
if (color_c.getSelectedIndex() == 0) {
if (whiteBalance.getSelectedIndex() == 0)
wb = 40;
else
wb = 44;
} else {
if (whiteBalance.getSelectedIndex() == 0)
wb = 32;
else
wb = 36;
}
status_t.setText("Setting Color and WB");
mySerial.write("cr 18 " + wb);
if (mySerial.readACK(1) == 1)
status_t.setText("Registers Set.");
else
status_t.setText("Registers Failed.");
} else if (command == hr_c) {
if (hr_c.getSelectedIndex() == 0) {
res = 0;
status_t.setText("Setting Res Low");
} else {
if (cameraType == 7) {
status_t.setText("Option not available");
return;
}
res = 1;
status_t.setText("Setting Res High");
}
mySerial.write("hr " + res);
if (mySerial.readACK(1) == 1) {
status_t.setText("Registers Set.");
setWindowParams();
} else
status_t.setText("Registers Failed.");
} else if (command == as_c) {
int as;
if (as_c.getSelectedIndex() == 0)
as = 0;
else
as = 1;
mySerial.write("sm " + as);
if (mySerial.readACK(1) == 1)
status_t.setText("Auto Servo Mode set.");
else
status_t.setText("Auto Servo Mode failed.");
} else if (command == pd_c) {
int pd;
if (pd_c.getSelectedIndex() == 0)
pd = 0;
else
pd = 1;
mySerial.write("pd " + pd);
if (mySerial.readACK(1) == 1)
status_t.setText("Pixel Differencing set.");
else
status_t.setText("Pixel Differencing failed.");
} else if (command == ti_c) {
int ti;
if (ti_c.getSelectedIndex() == 0)
ti = 0;
else
ti = 1;
mySerial.write("ti " + ti);
if (mySerial.readACK(1) == 1)
status_t.setText("Inverted Tracking set.");
else
status_t.setText("Inverted Tracking failed.");
} else if (command == fs_c) {
int fs;
if (fs_c.getSelectedIndex() == 0)
fs = 0;
else
fs = 1;
mySerial.write("fs " + fs);
if (mySerial.readACK(1) == 1)
status_t.setText("Frame Stream set.");
else
status_t.setText("Frame Stream failed.");
} else if (command == hd_c) {
int hd;
if (hd_c.getSelectedIndex() == 0)
hd = 0;
else
hd = 1;
mySerial.write("hd " + hd);
if (mySerial.readACK(1) == 1)
status_t.setText("HiRes Diff Mode set.");
else
status_t.setText("HiRes Diff Mode failed.");
} else if (command == dc_c) {
int dc;
mySerial.write("dc " + dc_c.getSelectedIndex());
if (mySerial.readACK(1) == 1)
status_t.setText("Diff Channel Set");
else
status_t.setText("Diff Channel Failed");
} else if (command == bm_c) {
int bm;
if (bm_c.getSelectedIndex() == 0) {
bm = 0;
status_t.setText("Setting buffer mode auto stream");
} else {
bm = 1;
status_t.setText("Setting buffer mode manual reload");
}
mySerial.write("bm " + bm);
if (mySerial.readACK(1) == 1)
status_t.setText("Buffer Mode Set.");
else
status_t.setText("Buffer Mode Failed.");
} else if (command == lm_c) {
int lm;
track_color_linemode = 0;
get_mean_linemode = 0;
frame_diff_linemode = 0;
switch (lm_c.getSelectedIndex()) {
case 0 :
lm = 0;
status_t.setText("All line modes off");
mySerial.write("lm 0 0");
mySerial.readACK(1);
mySerial.write("lm 1 0");
mySerial.readACK(1);
mySerial.write("lm 2 0");
break;
case 1 :
status_t.setText("Line Mode Track Color Bitmap on");
mySerial.write("lm 0 1");
track_color_linemode = 1;
break;
case 2 :
status_t.setText("Line Mode Track Color Stats on");
mySerial.write("lm 0 2");
track_color_linemode = 2;
break;
case 3 :
status_t.setText("Line Mode Get Mean on");
mySerial.write("lm 1 1");
get_mean_linemode = 1;
break;
case 4 :
status_t.setText("Line Mode Get Mean Stats on");
mySerial.write("lm 1 2");
get_mean_linemode = 2;
break;
case 5 :
status_t.setText("Line Mode Frame Diff Bitmap on");
mySerial.write("lm 2 1");
frame_diff_linemode = 1;
break;
case 6 :
status_t.setText("Line Mode Frame Diff Deltas on");
mySerial.write("lm 2 2");
frame_diff_linemode = 2;
break;
case 7 :
status_t.setText("Line Mode Frame Diff Buffer on");
mySerial.write("lm 2 3");
frame_diff_linemode = 3;
break;
default :
}
if (mySerial.readACK(1) == 1)
status_t.setText("Registers Set.");
else
status_t.setText("Registers Failed.");
}
String item = e.getItem().toString();
int action = e.getStateChange();
if (item.equals("Color Picker")) {
// if(action==2)cImage.picker_f.hide();
//else cImage.picker_f.show();
}
if (item.equals("Color Track")) {
//if(action==2)cImage.hideTrack();
//else cImage.showTrack();
}
}
private JMenuItem makeMenuItem(String name) {
JMenuItem m = new JMenuItem(name);
m.addActionListener(this);
return m;
}
private void stopCameraStuff() {
myMotion.stop();
myHistogram.stop();
myColor.stop();
myStats.stop();
commandVal = 0;
mySerial.write("\r");
//if(mySerial.readACK(0)==0)mySerial.readACK(0);
// Maintain state after track window
status_t.setText("Camera Ready...");
}
private void UpdateAllCommands() {
// This updates the Line Mode Window
mySerial.write("lm 0 0");
mySerial.readACK(1);
mySerial.write("lm 1 0");
mySerial.readACK(1);
mySerial.write("lm 2 0");
switch (lm_c.getSelectedIndex()) {
case 1 : mySerial.write("lm 0 1"); track_color_linemode = 1; break;
case 2 : mySerial.write("lm 0 2"); track_color_linemode = 2; break;
case 3 : mySerial.write("lm 1 1"); get_mean_linemode = 1; break;
case 4 : mySerial.write("lm 1 2"); get_mean_linemode = 2; break;
case 5 : mySerial.write("lm 2 1"); frame_diff_linemode = 1; break;
case 6 : mySerial.write("lm 2 2"); frame_diff_linemode = 2; break;
case 7 : mySerial.write("lm 2 3"); frame_diff_linemode = 3; break;
default :
}
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int ag;
if (autoGain.getSelectedIndex() == 0)
ag = 33;
else
ag = 32;
mySerial.write("cr 19 " + ag);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int wb;
if (color_c.getSelectedIndex() == 0) {
if (whiteBalance.getSelectedIndex() == 0)
wb = 40;
else
wb = 44;
} else {
if (whiteBalance.getSelectedIndex() == 0)
wb = 32;
else
wb = 36;
}
mySerial.write("cr 18 " + wb);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
if (hr_c.getSelectedIndex() == 0) {
res = 0;
status_t.setText("Setting Res Low");
} else {
if (cameraType == 7) {
status_t.setText("Option not available");
return;
}
res = 1;
status_t.setText("Setting Res High");
}
mySerial.write("hr " + res);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int as;
if (as_c.getSelectedIndex() == 0)
as = 0;
else
as = 1;
mySerial.write("sm " + as);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int pd;
if (pd_c.getSelectedIndex() == 0)
pd = 0;
else
pd = 1;
mySerial.write("pd " + pd);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int ti;
if (ti_c.getSelectedIndex() == 0)
ti = 0;
else
ti = 1;
mySerial.write("ti " + ti);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int fs;
if (fs_c.getSelectedIndex() == 0)
fs = 0;
else
fs = 1;
mySerial.write("fs " + fs);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int hd;
if (hd_c.getSelectedIndex() == 0)
hd = 0;
else
hd = 1;
mySerial.write("hd " + hd);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int dc;
mySerial.write("dc " + dc_c.getSelectedIndex());
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
int bm;
if (bm_c.getSelectedIndex() == 0) {
bm = 0;
status_t.setText("Setting buffer mode auto stream");
} else {
bm = 1;
status_t.setText("Setting buffer mode manual reload");
}
mySerial.write("bm " + bm);
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
mySerial.write("nf " + nf_t.getText());
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
mySerial.write("ds " + dsx.getText() + " " + dsy.getText());
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
mySerial.write(
"vw "
+ x1.getText()
+ " "
+ y1.getText()
+ " "
+ x2.getText()
+ " "
+ y2.getText());
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
mySerial.write(
"sp "
+ pan_range_far.getText()
+ " "
+ pan_range_near.getText()
+ " "
+ pan_step.getText()
+ " "
+ tilt_range_far.getText()
+ " "
+ tilt_range_near.getText()
+ " "
+ tilt_step.getText());
if (mySerial.readACK(1) != 1)
{ status_t.setText("Registers Failed."); return; }
status_t.setText("Config Settings Sent");
}
private JCheckBoxMenuItem makeCheckMenuItem(String name, int val) {
JCheckBoxMenuItem m = new JCheckBoxMenuItem(name);
if (val == 1)
m.setState(true);
else
m.setState(false);
m.addItemListener(this);
return m;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -