Buscar
Social
Ofertas laborales ES

Foro sobre Java EE > Como dibujar una figura y agregarle una imagen de fondo?

Hola a todos.

Quisiera dibujar una figura, mas exactamente un octágono en un JApplet, pero ademas quiero agregarle a esta figura una imagen de fondo.

¿Es posible o existe otra forma de hacer lo que quiero?

Alguien me podría ayudar, quedaría muy agradecido.

Saludos.

junio 18, 2013 | Unregistered Commenter-Felipphe-

Hola. Para dibujar en java debes usar la clase Graphics. Tambien existen otras clases pero la funcionalidad es la misma. Para que entiendas esta clase y como dibujar en ella, imagina que es un plano 2D. En este plano hay un metodo primario que te permite hacer lo mas basico : dibujar lineas a partir de dos puntos : (x1,y1) y (x2,y2).

Entonces para dibujar cualquier figura solo necesitas elaborar una algoritmo que retorne un conjuto de puntos , iterarlos y dibujarlos.

Parameters of drawLine:
Parameters:
x1 the first point's x coordinate.
y1 the first point's y coordinate.
x2 the second point's x coordinate.
y2 the second point's y coordinate.

//dibujar un cuadrado

Graphics g= ...
int lado = 500;
int x_ini = 0;
int y_ini = 0;
g.drawLine(x_ini, y_ini, x_ini+lado,y_ini);
g.drawLine(x_ini+lado,y_ini, x_ini+lado,y_ini+lado);
g.drawLine(x_ini+lado,y_ini+lado, x_ini,y_ini+lado);
g.drawLine(x_ini,y_ini+lado, x_ini,y_ini);

Como ves ya solo queda la creatividad. Por ejemplo, si de alguna forma obtendrias un arrays con las coordenadas de la silueta de un mapa :

http://upload.wikimedia.org/wikipedia/commons/thumb/a/a9/Tierra_del_Fuego_location_map.svg/280px-Tierra_del_Fuego_location_map.svg.png

Podrias iterarlo y dibujarlo asi :

for
g.drawLine(punto_actual , punto_siguiente)

claro esta iterando hasta el penultimo item del array de puntos para no toparnos con el indexoutboundexception....

Hay muchas clases que dibujan figuras geometricas, solo te queda investigar.

Aqui un ejemplo de un pentagono :
http://www.java2s.com/Code/Java/2D-Graphics-GUI/DrawaPolygon.htm

Saludos
https://github.com/jrichardsz
www.youtube.com/user/ZERL1NG

junio 19, 2013 | Registered Commenterjrichard