📄 elite.java
字号:
import waba.sys.*; import waba.fx.*; import waba.ui.*; import net.jscience.j3dme.*; import models.*; public class Elite extends MainWindow{ Image ctrlPanel; public final static byte CAM_CTRL = 0; public final static byte MODEL_CTRL = 1; private Graphics _g; private World world; private ViewPort view; private Camera cam1; private Model[] models; private byte state = CAM_CTRL; private Model model; private int mi;Button controlMode;Button modelSelect;Label pitch;Label roll;Label yaw;Button pitchminus;Button pitchplus;Button rollminus;Button rollplus;Button yawminus;Button yawplus;Button controlsButton;Button modelButton; public Elite(){ _g = createGraphics(); ctrlPanel = new Image("ctrl_panel.bmp"); world = new World(2); Renderer renderer = new net.jscience.j3dme.renderers.WABARenderer(_g); // View Port with border cam1 = new Camera(world,144); view = new ViewPort(renderer,cam1,7,8,145,76); initModels(); view.renderScene(); roll=new Label("z"); roll.setRect(0,143,14,15); add(roll); rollminus=new Button("-"); rollminus.setRect(14,143,8,15); add(rollminus); rollplus=new Button("+"); rollplus.setRect(22,143,8,15); add(rollplus); yaw=new Label("Yaw"); yaw.setRect(31,143,16,15); add(yaw); yawminus=new Button("-"); yawminus.setRect(47,143,8,15); add(yawminus); yawplus=new Button("+"); yawplus.setRect(55,143,8,15); add(yawplus); pitch=new Label("Pitch"); pitch.setRect(63,143,20,15); add(pitch); pitchminus=new Button("-"); pitchminus.setRect(83,143,8,15); add(pitchminus); pitchplus=new Button("+"); pitchplus.setRect(91,143,8,15); add(pitchplus); controlsButton=new Button("Control"); controlsButton.setRect(99,143,32,15); add(controlsButton); modelButton=new Button("Model"); modelButton.setRect(131,143,28,15); add(modelButton); view.renderScene(); } public void initModels(){ models = new Model[4]; models[0] = new Cobra(); models[1] = new Viper(); models[2] = new Mamba(); models[3] = new Krait(); models[0].z = 256; models[1].z = 256; models[2].z = 256; models[3].z = 256; mi = 0; model = models[mi]; world.addModel(model); }public void onEvent(Event event) { if (event.type == ControlEvent.PRESSED) { if (event.target == modelButton) { changeModel(); } else if(state == CAM_CTRL){ if (event.target == rollplus) { cam1.z += 4; } else if (event.target == rollminus) { cam1.z -= 4; } else if (event.target == yawplus) { cam1.yaw += 4; } else if (event.target == yawminus) { cam1.yaw -= 4; } else if (event.target == pitchplus) { cam1.pitch += 4; } else if (event.target == pitchminus) { cam1.pitch -= 4; } else if (event.target == controlsButton) { state=MODEL_CTRL; roll.setText("Roll"); } } else if(state == MODEL_CTRL){ if (event.target == rollplus) { model.roll += 4; } else if (event.target == rollminus) { model.roll -= 4; } else if (event.target == yawplus) { model.yaw += 4; } else if (event.target == yawminus) { model.yaw -= 4; } else if (event.target == pitchplus) { model.pitch += 4; } else if (event.target == pitchminus) { model.pitch -= 4; } else if (event.target == controlsButton) { state=CAM_CTRL; roll.setText("z"); } } view.renderScene(); } } private void changeModel(){ world.removeModel(model); mi = (mi + 1) & 3; model = models[mi]; world.addModel(model); view.renderScene(); }public void onPaint(Graphics g) { view.renderScene(); g.drawImage(ctrlPanel,7,92); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -