Feeds de los foros

En la página principal de los foros encontrarás los enlaces al logo feed feed general y al de cada uno de los foros.

Subscribete para mantenerte informado de los cambios y responde a las dudas siempre que te sea posible

Buscar en el foro

Foro Desarrollo de Juegos

feed Foro Desarrollo de Juegos Foro: Desarrollo de Juegos

Nuevo Tema Nuevo Tema

Array de imagenes - precarga de imagen 04/02/2008 12:27
anonymous

estoy haciendo unas practicas. con un juego de naipes, tengo unas 60 imagenes en total.

¿como puedo cargar las imagenes en una lista en memoria, sin tener que cargarla cada vez que las necesite? O sea tenerlas en memoria y solo llamarlas. ¿Que me aconsejan usar para almacenarlas? aca les paso lo que estoy usando hasta ahora.


public java.awt.image.BufferedImage tapa;
 
public java.awt.image.BufferedImage cargarImagen(String ruta){ 
 try{
 return (java.awt.image.BufferedImage) javax.imageio.ImageIO.read(new java.io.File(ruta)); 
 }catch (Exception e){
  e.printStackTrace();
 return null;
 }
}
 
@Override
public void paint(Graphics g) {
 if (tapa==null) tapa = cargarImagen("res/tapa.bmp");
 g.drawImage(tapa, 20, 30, this);
 java.awt.image.BufferedImage copa01 = cargarImagen("res/copa01.bmp");
 g.drawImage(copa01, 40, 30, this);
}
#unapprove_message#
RE: Array de imagenes - precarga de imagen 04/02/2008 14:59
JorgeRubira

No utilices una lista. Es más fácil. Modifica el método cargarImagen guardando la información en un Hashtable. Eje:

public Hashtable htImagenes=new Hashtable();

public BufferedImage cargarImagen(String ruta){

try{

if (htImagenes.containsKey (ruta)==false) { //o también puedes utilizar !

htImagenes.add(ruta, javax.imageio.ImageIO.read(new java.io.File(ruta));

}

return htImagenes.get(ruta);

}catch(Exception e){

}

}

Más o menos sería algo así (puede que haya algún error). Lo que hace es la primera vez que invocas cargar para una ruta concreta, guarda la imagen en una tabla hash cuya key es el nombre de la ruta. La siguientes veces que pretendas leer esa misma ruta devolverá la imagen almacenada.
#unapprove_message#
RE: RE: Array de imagenes - precarga de imagen 06/02/2008 12:06
nramire1

Gracias. Ya lo pase y funciona al pelo.

#unapprove_message#
#thread_expired#.
Sun Microsystem Logo NHT-Norwick Logo

© 2002-2007 Asociación javaHispano