//EJEMPLO DE LA EDICION EN LOS GRAFICOS CON JAVA 2D API import java.awt.*; import java.awt.event.*; import java.awt.font.*; import java.awt.geom.*; import java.awt.image.*; public class Transform extends Frame { static final int width = 600; static final int height = 400; MyMenuBar menuBar; EventHandler eh = new EventHandler(); public static void main(String args[]){ Transform app = new Transform(); } public Transform() { super("Transform"); setupMenuBar(); add("Center",new MyCanvas()); setSize(width,height); addWindowListener(eh); setVisible(true); } void setupMenuBar(){ Object menuItems[][] = {{"Archivo","Salir"}}; menuBar = new MyMenuBar(menuItems,eh,eh); setMenuBar(menuBar); } class MyCanvas extends Canvas { public void paint(Graphics graphics) { Graphics2D g = (Graphics2D) graphics; AffineTransform transform = AffineTransform.getRotateInstance(Math.PI/16.0d); g.setTransform(transform); Line2D.Double shape = new Line2D.Double(0.0,0.0,300.0,300.0); g.draw(shape); g.setFont(new Font("Helvetica",Font.BOLD,24)); String text = "Java 2D API"; g.drawString(text,300,50); Toolkit toolkit = Toolkit.getDefaultToolkit(); Image image = toolkit.getImage("image1.gif"); g.drawImage(image,100,150,this); } } class EventHandler extends WindowAdapter implements ActionListener, ItemListener { public void actionPerformed(ActionEvent e){ String selection=e.getActionCommand(); if("Salir".equals(selection)){ System.exit(0); } } public void itemStateChanged(ItemEvent e){ } public void windowClosing(WindowEvent e){ System.exit(0); } } }