- import java.awt.*;
- import java.awt.geom.*;
- import java.awt.event.*;
- import javax.swing.*;
- public class DrawTest
- {
- public static void main(String[] args)
- {
- DrawFrame aFrame = new DrawFrame();
- aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- aFrame.setVisible(true);
- }
- }
- class DrawFrame extends JFrame
- {
- public DrawFrame()
- {
- Toolkit t = Toolkit.getDefaultToolkit();
- Dimension d = t.getScreenSize();
- int screenWidth = (int)d.getWidth();
- int screenHeight = (int)d.getHeight();
- String imgPath = ".//img//img.jpg";
- Image img = t.getImage(imgPath);
- setIconImage(img);
- setSize(screenWidth/2,screenHeight/2);
- setLocation(screenWidth/4,screenHeight/4);
- DrawPanel aPane =new DrawPanel();
- Container contentPane = getContentPane();
- contentPane.add(aPane);
- }
- }
- class DrawPanel extends JPanel
- {
- public void paintComponent(Graphics g)
- {
- Graphics2D g2 = (Graphics2D)g;
- double leftX = 100;
- double topY = 100;
- double width = 200;
- double height = 150;
- Rectangle2D rect = new Rectangle2D.Double(leftX,topY,width,height);
- g2.draw(rect);
- Ellipse2D ellipse = new Ellipse2D.Double();
- ellipse.setFrame(rect);
- g2.draw(ellipse);
- g2.draw(new Line2D.Double(leftX,topY,leftX+width,topY+height));
- double radius = 150;
- double centerX = rect.getCenterX();
- double centerY = rect.getCenterY();
- double cornerX = centerX + radius;
- double cornerY = centerY + radius;
- Ellipse2D circle = new Ellipse2D.Double();
- circle.setFrameFromCenter(centerX,centerY,cornerX,cornerY);
- g2.draw(circle);
- }
- }
Java_Graphics2D_Test
最新推荐文章于 2023-08-17 14:46:59 发布