hola a todos ::)
como ya algunos saben no existe tal clase para J2SE solo J2ME
pero ami se me ocurrio como hacerla pero al probarla (osea realizar un mapa) no me funcionaba y todas las piezas estaban desordenadas
como no traje mi codigo voy a tratar de acordarme como lo escribi en mi casa
espero que alguien encuentre el problema
public class TiledLayer /*extends Layer*/{
//el aporte de la clase Layer es solo nombre a metodos
private int map[];
//gran problema aqui
public TilesLayer
(int row,
int column,
BufferedImage img,
int width,
int heigth
){ int ancho = (int)(img.getWidth()/width);//tomo las cantidad de columnas
int alto = (int)(img.getHeigth()/heigth);//tomo la cantida de filas
tiles
= new BufferedImage[ancho
*alto
];/*defino mi array de imagenes por la cantidad que necesito*///no me acuerdo bien de la constante que necesito
//y aqui voy a hacer pedasos la imagen BufferedImage.INT_TYPE_ARGB
//no se si ta bien escrita pero en mi casa sip lo está
int posicion = 0;
for(int i = 0;i<ancho;i++)
for(int j = 0;j<alto;j++){
tiles[posicion] = img.getSubImage(i*width,j*heigth,width,heigth);
posicion++;
}//fin for i y j
}// fin del constructor
public void setMap(int map[]){ //gran problema aqui por copy paste
this.map = map;
for(int i = 0;i<map.length;i++){
int c = i % row;
int r = (c - i) * column;
setCell(r,c,i);
}//fin for i
}//fin del metodo
public void setCell(int row, int column,int index){//problema aqui
g.drawImage(tiles[index],row*heigth,column*width,null);
}//fin del metodo
}//fin de la clase
bueno espero que puedan encontrar el problema y si por algun motivo me equivoque en ortografia no es mi culpa es culpa del eclipse que no alcanzo de escribir y me completa la frase :P
bueno pienso que hasta el momento el problema esta en el contructor
mañana si me acuerdo voy a colocar lo demas del codigo que creo que tambien tengo problema al setear correctamente el mapa :-(
xauu
gracias
pd:
aqui tengo el code que hice
package egyware.empires.graphics;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
/**
* @author Edgardo
*
*/
public class TiledLayer /*extends Layer*/ {
private int[] map;
private int row,col;
private int x,y;
private int w,h;
private boolean visible;
int an = bi.getWidth()/w;
int al = bi.getHeight()/h;
this.row = row;
this.col = c;
this.h = h;
this.w = w;
int a = 0;
for (int i = 0;i<an;i++)
for (int j = 0;j<al;j++){
try {
//System.out.println("r"+(j*h)+" "+w);
//System.out.println("c"+(i*c)+" "+h);
res[a] = bi.getSubimage(i*w,j*h,w,h);
a++;
System.
err.
println(e.
getMessage()); }/**/
/*for (int i=0; i < an*al; i++) {
int column = i % col;
int brow = (i - column) / this.row;
try{
res[i] = bi.getSubimage(column*w,brow*h,w,h);
}catch(Exception e){
System.err.println(e.getMessage());
}
} */
}
}
public void setMap(int[] map){
this.map = map;
for (int i=0; i < map.length; i++) {
int column = i % col;
int row = (i - column) / this.row;
//System.out.println(map[i]);
setCell(column,row,map[i]);
}
}
public int[] getMap(){
return map;
}
/* (non-Javadoc)
* @see egyware.empires.graphics.Layer#getX()
*/
public int getX() {
return x;
}
public void setCell(int c,int r,int i){
g.drawImage(res[i],c*w,r*h,null);
}
/*public int getCell(int c,int r){
return map[r][c];
}*/
public int getCellHeight(){
return h;
}
public int getCellWidth(){
return w;
}
public int getColumns(){
return col;
}
public int getRows(){
return row;
}
/* (non-Javadoc)
* @see egyware.empires.graphics.Layer#getY()
*/
public int getY() {
return y;
}
/* (non-Javadoc)
* @see egyware.empires.graphics.Layer#setX(int)
*/
public void setX(int nx) {
x = nx;
}
/* (non-Javadoc)
* @see egyware.empires.graphics.Layer#setY(int)
*/
public void setY(int ny) {
y = ny;
}
/* (non-Javadoc)
* @see egyware.empires.graphics.Layer#paint(java.awt.Graphics)
*/
if(visible){
g.drawImage(tiledImage,x,y,null);
/*int a = 0;
for (int i = 0;i<col;i++)
for (int j = 0;j<w;j++){
try {
g.drawImage(res[a],x,y,null);
a++;
}catch(Exception e){
System.err.println(e.getMessage());
}
}*/}
}
public boolean isVisible() {
return visible;
}
public void setVisible(boolean b) {
visible = b;
}
}
mmm... que tristesa pero hoy a sido el peor día de mi vida :-( :-( :-( :-X
mmm veo que nadie ha encontrado mi problema :( a que tristeza tengo bueno tratare de arreglarlo
PD:jijijij jajaja
ya lo tengo casi listo jijiji
realize un estudio a fondo solo me queda cambiar el source
jajajaaj ;D ::)