/* * MainFrame.java * * Created on 7 marzo 2004, 11.08 */ /** * * @author Administrator */ public class MainFrame extends javax.swing.JFrame { /** Creates new form MainFrame */ public MainFrame() { initComponents(); grid =new Griglia(new Posizione(7,7),15,15); robot= new Robot(); grid.inserisciRobot(robot, new Posizione(7,7)); grid.disegna(); getContentPane().add(grid, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, 630, 570)); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents jButton1 = new javax.swing.JButton(); jButton2 = new javax.swing.JButton(); jButton3 = new javax.swing.JButton(); jButton4 = new javax.swing.JButton(); jButton5 = new javax.swing.JButton(); jMenuBar1 = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { exitForm(evt); } }); jButton1.setText("Step"); jButton1.setBorder(new javax.swing.border.EtchedBorder()); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); getContentPane().add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(680, 50, 70, 40)); jButton2.setText("Left"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton2ActionPerformed(evt); } }); getContentPane().add(jButton2, new org.netbeans.lib.awtextra.AbsoluteConstraints(680, 110, 70, 40)); jButton3.setText("Right"); jButton3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton3ActionPerformed(evt); } }); getContentPane().add(jButton3, new org.netbeans.lib.awtextra.AbsoluteConstraints(680, 170, 70, 40)); jButton4.setText("Auto"); jButton4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton4ActionPerformed(evt); } }); getContentPane().add(jButton4, new org.netbeans.lib.awtextra.AbsoluteConstraints(680, 230, 70, 40)); jButton5.setText("New"); jButton5.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton5ActionPerformed(evt); } }); getContentPane().add(jButton5, new org.netbeans.lib.awtextra.AbsoluteConstraints(680, 570, -1, -1)); jMenu1.setBorder(null); jMenu1.setText("Menu"); jMenuBar1.add(jMenu1); setJMenuBar(jMenuBar1); pack(); }//GEN-END:initComponents private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed // Add your handling code here: getContentPane().remove(grid); grid =new Griglia(new Posizione(7,7),15,15); robot= new Robot(); grid.inserisciRobot(robot, new Posizione(7,7)); getContentPane().add(grid, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, 630, 570)); grid.disegna(); }//GEN-LAST:event_jButton5ActionPerformed private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed // Add your handling code here: auto(); }//GEN-LAST:event_jButton4ActionPerformed private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed // Add your handling code here: right(); }//GEN-LAST:event_jButton3ActionPerformed private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed // Add your handling code here: left(); }//GEN-LAST:event_jButton2ActionPerformed private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed step(); }//GEN-LAST:event_jButton1ActionPerformed /** Exit the Application */ private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm System.exit(0); }//GEN-LAST:event_exitForm /** * @param args the command line arguments */ public static void main(String args[]) { new MainFrame().show(); } private void step(){ Posizione vicino = new Posizione(robot.getPosizione().getX(), robot.getPosizione().getY()); Direzione d = new Direzione(robot.getDirezione().getDirezione()); vicino.moveTo(d); if (grid.inPercorso(vicino)) robot.setPosizione(vicino); grid.disegna(); }; private void left(){ robot.getDirezione().prev(); grid.disegna(); }; private void right(){ robot.getDirezione().next(); grid.disegna(); }; private void auto(){ // while (robot.getPosizione()!= grid.getArrivo()){ Posizione posRob = new Posizione(robot.getPosizione().getX(), robot.getPosizione().getY()); robot.giraASinistra(); robot.avanza(); while (!grid.inPercorso(robot.getPosizione())) {robot.setPosizione(posRob); robot.giraADestra(); robot.avanza();} grid.disegna(); }; // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton1; private javax.swing.JButton jButton2; private javax.swing.JButton jButton3; private javax.swing.JButton jButton4; private javax.swing.JButton jButton5; private javax.swing.JMenu jMenu1; private javax.swing.JMenuBar jMenuBar1; // End of variables declaration//GEN-END:variables private Griglia grid; private Robot robot; }