InicioCiencia EducacionGraficacion en JAVA
saludos aqui les dejo un programa que me saco de apuro en graficacion jeje espero les sirva de algo alguno codigos. si les sirve de algo dejen muchos puntos

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.geom.AffineTransform;

import java.awt.BorderLayout;

import javax.swing.JFrame;

import javax.swing.JSlider;

import javax.swing.JPanel;



/* Las instancias de la clase java.awt.geom.AffineTransform

representan la transformación de un sistema de coordenadas a

otro. AffineTransform se utilizó para guardar y restaurar la

transformación del estado de un Graphics2D. AffineTransform

también puede ser útil cuando se necesita para calcular y

almacenar coordenadas transformadas antes de dibujar.*/



public class puntorotacion extends JPanel {



private int grados = 0; /*Sólo se puede acceder al elemento desde

métodos de la clase, o sólo puede invocarse

el método desde otro método de la clase. */



public int getGrados() {

return grados;

}



public void setGrados(int grados) {

this.grados = grados;

repaint(); //Para repintar toda la pantalla

}



//@Override

public void paint(Graphics g) {

super.paint(g); //se borra el contenido anterior



double radian = Math.toRadians(grados); //se convierte a radianes lo grados



AffineTransform at = new AffineTransform();

at.rotate(radian, 100, 100); //se asigna el angulo y centro de rotacion

((Graphics2D) g).setTransform(at);



//se dibuja

g.setColor(Color.red);



g.drawRect(50, 50, 100, 100); //posicion de la figura



}

}

class panel{



public static void main(String[] args) {



final JFrame twisted = new JFrame("Imagen Giratoria";

twisted.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

twisted.setSize(200, 250);



final puntorotacion metal = new puntorotacion();



final JSlider rotar = new JSlider(-360,360); //barra de grados para rotar el cuadrado



/*En ocasiones es conveniente que un método no sea redefinido en una clase

derivada o incluso que una clase completa no pueda ser extendida.

Para esto está la cláusula final, que tiene significados levemente

distintos según se aplique a un dato miembro, a un método o a una clase.

Para una clase, final significa que la clase no puede extenderse.

Es, por tanto el punto final de la cadena de clases derivadas.Y

Para un método, final significa que no puede redefinirse en una clase derivada.*/









rotar.addChangeListener(new javax.swing.event.ChangeListener() {



public void stateChanged(javax.swing.event.ChangeEvent evt) {

metal.setGrados(rotar.getValue());

}

});

rotar.setValue(0);



twisted.setLayout(new BorderLayout());

twisted.add(metal, BorderLayout.CENTER);

twisted.add(rotar, BorderLayout.SOUTH); //genera la barra para rotar la figura



twisted.setLocationRelativeTo(null); //Coloca la ventana de salida en el centro

twisted.setVisible(true);

}

}
Datos archivados del Taringa! original
10puntos
3,487visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

T
TwistedMetal🇦🇷
Usuario
Puntos0
Posts2
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.