Java/2D Graphics GUI/Arc

Материал из Java эксперт
Перейти к: навигация, поиск

Arc2D.CHORD

<source lang="java"> import java.awt.Frame; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Arc2D; public class MainClass extends Frame {

 public static void main(String[] args) {
   (new MainClass()).setVisible(true);
 }
 public MainClass() {
   super("Shape Sampler");
   setSize(400, 550);
 }
 public void paint(Graphics g) {
   Graphics2D g2d = (Graphics2D) g;
   Arc2D arc = new Arc2D.Float(200, 50, 100, 50, 0, 90, Arc2D.CHORD);
   g2d.draw(arc);
 }

}

 </source>   



Arc2D.Float: Arc2D.OPEN

<source lang="java"> import java.awt.Frame; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Arc2D; public class MainClass extends Frame {

 public static void main(String[] args) {
   (new MainClass()).setVisible(true);
 }
 public MainClass() {
   super("Shape Sampler");
   setSize(400, 550);
 }
 public void paint(Graphics g) {
   Graphics2D g2d = (Graphics2D) g;
   Arc2D arc = new Arc2D.Float(200, 50, 100, 50, 0, 90, Arc2D.OPEN);
   g2d.draw(arc);
 }

}

 </source>   



Arc2D.PIE

<source lang="java"> import java.awt.Frame; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Arc2D; public class MainClass extends Frame {

 public static void main(String[] args) {
   (new MainClass()).setVisible(true);
 }
 public MainClass() {
   super("Shape Sampler");
   setSize(400, 550);
 }
 public void paint(Graphics g) {
   Graphics2D g2d = (Graphics2D) g;
   Arc2D arc = new Arc2D.Float(200, 50, 100, 50, 0, 90, Arc2D.PIE);
   g2d.draw(arc);
 }

}

 </source>   



Compares two arcs and returns true if they are equal or both null.

<source lang="java"> import java.awt.geom.Arc2D; public class Main {

 /**
  * Compares two arcs and returns true if they are equal or
  * both null.
  *
  * @param a1  the first arc (null permitted).
  * @param a2  the second arc (null permitted).
  *
  * @return A boolean.
  */
 public static boolean equal(final Arc2D a1, final Arc2D a2) {
     if (a1 == null) {
         return (a2 == null);
     }
     if (a2 == null) {
         return false;
     }
     if (!a1.getFrame().equals(a2.getFrame())) {
         return false;
     }
     if (a1.getAngleStart() != a2.getAngleStart()) {
         return false;
     }
     if (a1.getAngleExtent() != a2.getAngleExtent()) {
         return false;
     }
     if (a1.getArcType() != a2.getArcType()) {
         return false;
     }
     return true;
 }

}

 </source>   



Draw draw an arc outline

<source lang="java"> import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public static void main(String[] a) {
   JFrame f = new JFrame();
   f.setSize(400, 400);
   f.add(new MainClass());
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   f.setVisible(true);
 }
 public void paint(Graphics g) {
   g.setColor (Color.yellow);  
   g.drawArc (5, 15, 50, 75, 25, 165); 
 }

}

 </source>   



Fill an arc outline

<source lang="java"> import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public static void main(String[] a) {
   JFrame f = new JFrame();
   f.setSize(400, 400);
   f.add(new MainClass());
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   f.setVisible(true);
 }
 public void paint(Graphics g) {
   g.setColor (Color.yellow);  
   g.fillArc (5, 15, 50, 75, 25, 165); 
 }

}

 </source>