elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Movimiento en matriz grafica
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Movimiento en matriz grafica  (Leído 2,009 veces)
fitomix

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Movimiento en matriz grafica
« en: 6 Junio 2013, 16:38 pm »

Hola, tengo un problema con una aplicacion que estamos desarrollando, la cual consiste en basicamente simular la circulacion de autos por calles usando hilos. Ya tenemos hechas las calles, osea el escenerio de la aplicacion. Para ello usamos una matriz de objetos donde cada posicion de la matriz tiene 4 atributos, ya que necesitamos saber el sentido de la calle, si la posicion esta ocupada, y determinar si es una calle o una pared. El cuarto atributo, y aqui es el problema, es un atributo de tipo JPanel ya que nuestra idea era tomar ese panel y en ese panel dibujar lo que seria el auto y despues ir moviendolo. Pero lo que pasa es que no podemos llevar esta idea al codigo. No sabemos como podemos hacer eso de tomar ese atributo JPanel de la matriz e ir moviendolo de manera de simular el movimiento. Esa es nuestra idea porque la verdad que ya no se nos ocurre nada mas para simular este movimiento..

Dejo el codigo de lo que tenemos..

//Clase donde esta la matriz
public class Interfaz {
   
    private final int LARGO_IMAGENES = 20;
    private final int ALTURA_IMAGENES = 20;
       
       
        JPanel uno = new JPanel();
        JPanel dos = new JPanel();
        JPanel tre = new JPanel();
        JPanel cua = new JPanel();
        JPanel cin = new JPanel();
       
       
       
       
    Pixel x = new Pixel ("x",0,"9",cin);
    Pixel a = new Pixel ("c",1,null,cua); // calle abajo
    Pixel b = new Pixel ("c",2,null,tre); //calle arriba
    Pixel c = new Pixel ("c",3,null,dos); // calle derecha
    Pixel d = new Pixel ("c",4,null,uno);  // calle izquierda
   
   
   
    public Pixel InterfazActual[][] = {
       
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {c,c,a,c,c,c,c,a,c,c,c,c,a,c,c,c,c,a,c,c},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {c,c,a,c,c,c,c,a,c,c,c,c,a,c,c,c,c,a,c,c},
        {d,d,a,d,d,d,d,a,d,d,d,d,a,d,d,d,d,a,d,d},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {c,c,a,c,c,c,c,a,c,c,c,c,a,c,c,c,c,a,c,c},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
        {c,c,a,c,c,c,c,a,c,c,c,c,a,c,c,c,c,a,c,c},
        {d,d,a,d,d,d,d,a,d,d,d,d,a,d,d,d,d,a,d,d},
        {x,x,a,x,x,x,x,a,x,x,x,x,a,x,x,x,x,a,x,x},
       
           
    };
   
   
   
   
public String DeolverCodigoImagenMatriz(int Fila, int Columna){return InterfazActual[Fila][Columna].getTipo();}

public int DevolverLargoImagenes(){return LARGO_IMAGENES;}
public int DevolverAlturaImagenes(){return ALTURA_IMAGENES;}


//Clase pixel que contiene los atributos de cada posicion de la matriz

public class Pixel {
   
    private String tipo;
    private Integer sentido;
    private String contiene;
    private JPanel panel;

    public Pixel(String tipo, Integer sentido, String contiene, JPanel panel) {
        this.tipo = tipo;
        this.sentido = sentido;
        this.contiene = contiene;
        this.panel = panel;
    }

    public JPanel getPanel() {
        return panel;
    }

    public void setPanel(JPanel panel) {
        this.panel = panel;
    }
   

   

    public String getTipo() {
        return tipo;
    }

    public void setTipo(String tipo) {
        this.tipo = tipo;
    }

    public Integer getSentido() {
        return sentido;
    }

    public void setSentido(Integer sentido) {
        this.sentido = sentido;
    }

    public String getContiene() {
        return contiene;
    }

    public void setContiene(String contiene) {
        this.contiene = contiene;
    }
   
       
}


//Clase que genera la matriz grafica.. Aqui llamada laberinto

public class Entorno extends javax.swing.JFrame implements Runnable {

    /**
     * Creates new form Entorno
     */
   

    public Entorno() {
        initComponents();
       GenerarLaberintoGrafico();
       
   

    }
    private Interfaz LaberintoVirtual = new Interfaz();
    private JLabel[][] LaberintoGrafico = new JLabel[20][20];
   
       
      private void GenerarLaberintoGrafico() {
        for (int i = 0; i < 20; i++) {
            for (int j = 0; j < 20; j++) {
                LaberintoGrafico[j] = new JLabel();
                add(LaberintoGrafico[j]);
                LaberintoGrafico[j].setIcon(new ImageIcon(LaberintoVirtual.DeolverCodigoImagenMatriz(i, j) + ".gif"));

                System.out.println(LaberintoVirtual.DeolverCodigoImagenMatriz(i, j));
                System.out.println(i);
                System.out.println(j);
 
            }             
        }       
   
                     
        for (int i = 0; i < 20; i++) {
            for (int j = 0; j < 20; j++) {
                LaberintoGrafico[j].setBounds(i * LaberintoVirtual.DevolverLargoImagenes(), j * LaberintoVirtual.DevolverAlturaImagenes(), LaberintoVirtual.DevolverLargoImagenes(), LaberintoVirtual.DevolverAlturaImagenes());
                LaberintoGrafico[j].validate();
            }
        }
 
   }


Espero  su ayuda.. Muchas gracias.


En línea

MasterPunk


Desconectado Desconectado

Mensajes: 447


(-A-)


Ver Perfil WWW
Re: Movimiento en matriz grafica
« Respuesta #1 en: 10 Junio 2013, 15:42 pm »

Como no pongas el código con sus correspondientes etiquetas de código para que salga en color creo que nadie se va a molestar en leerlo 


En línea

BlackM4ster


Desconectado Desconectado

Mensajes: 499


Error, el teclado no funciona. Pulse F1 para continuar


Ver Perfil WWW
Re: Movimiento en matriz grafica
« Respuesta #2 en: 10 Junio 2013, 17:53 pm »

Como no pongas el código con sus correspondientes etiquetas de código para que salga en color creo que nadie se va a molestar en leerlo 

Cuanta razón...
En línea

- Pásate por mi web -
https://codeisc.com
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda - Buscar si existe una matriz dentro de otra matriz
Programación Visual Basic
EddyW 2 6,022 Último mensaje 14 Agosto 2010, 06:18 am
por EddyW
Matriz Dentro de otra matriz
Programación Visual Basic
moba741120 3 6,939 Último mensaje 13 Abril 2011, 18:29 pm
por raul338
urgente matriz con interfaz grafica en java
Java
fracool 1 7,364 Último mensaje 23 Febrero 2012, 13:47 pm
por Cazs03
MATRIZ que imprima como una matriz en forma de cuadrado... ayudaaaaa!! help
Programación C/C++
oscarpy 3 8,817 Último mensaje 9 Abril 2012, 16:23 pm
por Xandrete
matriz de movimiento del caballo en c++
Programación C/C++
Arielcv87 5 8,706 Último mensaje 25 Abril 2020, 00:05 am
por fefeelcrack
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines