Classe AWT Arc2D
introduzione
La classe Arc2D è la superclasse per tutti gli oggetti che memorizzano un arco 2D definito da un rettangolo di inquadratura, un angolo iniziale, un'estensione angolare (lunghezza dell'arco) e un tipo di chiusura (OPEN, CHORD o PIE).
Dichiarazione di classe
Di seguito è riportata la dichiarazione per java.awt.Arc2D classe:
public abstract class Arc2D
   extends RectangularShape 
    Campo
Di seguito sono riportati i campi per java.awt.geom.Arc2D classe:
static int CHORD - Il tipo di chiusura per un arco chiuso tracciando un segmento di linea retta dall'inizio del segmento di arco alla fine del segmento di arco.
static int OPEN - Il tipo di chiusura per un arco aperto senza segmenti di percorso che collegano le due estremità del segmento di arco.
static int PIE - Il tipo di chiusura per un arco chiuso disegnando segmenti di linea retta dall'inizio del segmento di arco al centro dell'ellisse completa e da quel punto alla fine del segmento di arco.
Costruttori di classi
| SN | Costruttore e descrizione | 
|---|---|
| 1 | protected Arc2D(int type) Questa è una classe astratta che non può essere istanziata direttamente.  | 
      
Metodi di classe
| SN | Metodo e descrizione | 
|---|---|
| 1 | boolean contains(double x, double y) Determina se il punto specificato si trova o meno all'interno del contorno dell'arco.  | 
      
| 2 | boolean contains(double x, double y, double w, double h) Determina se l'interno dell'arco contiene interamente o meno il rettangolo specificato.  | 
      
| 3 | boolean contains(Rectangle2D r) Determina se l'interno dell'arco contiene interamente o meno il rettangolo specificato.  | 
      
| 4 | boolean containsAngle(double angle) Determina se l'angolo specificato rientra o meno nelle estensioni angolari dell'arco.  | 
      
| 5 | boolean equals(Object obj) Determina se l'oggetto specificato è uguale o meno a questo Arc2D.  | 
      
| 6 | abstract double getAngleExtent() Restituisce l'estensione angolare dell'arco.  | 
      
| 7 | abstract double getAngleStart() Restituisce l'angolo iniziale dell'arco.  | 
      
| 8 | int getArcType() Restituisce il tipo di chiusura dell'arco dell'arco: OPEN, CHORD o PIE.  | 
      
| 9 | Rectangle2D getBounds2D() Restituisce il rettangolo di inquadratura ad alta precisione dell'arco.  | 
      
| 10 | Point2D getEndPoint() Restituisce il punto finale dell'arco.  | 
      
| 11 | PathIterator getPathIterator(AffineTransform at) Restituisce un oggetto iterazione che definisce il contorno dell'arco.  | 
      
| 12 | Point2D getStartPoint() Restituisce il punto iniziale dell'arco.  | 
      
| 13 | int hashCode() Restituisce il codice hash per questo Arc2D.  | 
      
| 14 | boolean intersects(double x, double y, double w, double h) Determina se l'interno dell'arco interseca l'interno del rettangolo specificato.  | 
      
| 15 | protected abstract Rectangle2D makeBounds(double x, double y, double w, double h) Costruisce un Rectangle2D di precisione appropriata per contenere i parametri calcolati per essere il rettangolo di inquadratura di questo arco.  | 
      
| 16 | abstract void setAngleExtent(double angExt) Imposta l'estensione angolare di questo arco sul valore double specificato.  | 
      
| 17 | void setAngles(double x1, double y1, double x2, double y2) Imposta l'angolo iniziale e l'estensione angolare di questo arco utilizzando due serie di coordinate.  | 
      
| 18 | void setAngles(Point2D p1, Point2D p2) Imposta l'angolo iniziale e l'estensione angolare di questo arco utilizzando due punti.  | 
      
| 19 | abstract void setAngleStart(double angSt) Imposta l'angolo iniziale di questo arco sul valore double specificato.  | 
      
| 20 | void setAngleStart(Point2D p) Imposta l'angolo iniziale di questo arco sull'angolo che il punto specificato definisce rispetto al centro di questo arco.  | 
      
| 21 | void setArc(Arc2D a) Imposta questo arco in modo che sia uguale all'arco specificato.  | 
      
| 22 | abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure) Imposta la posizione, le dimensioni, le estensioni angolari e il tipo di chiusura di questo arco sui valori double specificati.  | 
      
| 23 | void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure) Imposta la posizione, le dimensioni, le estensioni angolari e il tipo di chiusura di questo arco sui valori specificati.  | 
      
| 24 | void setArc(Rectangle2D rect, double angSt, double angExt, int closure) Imposta la posizione, le dimensioni, le estensioni angolari e il tipo di chiusura di questo arco sui valori specificati.  | 
      
| 25 | void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure) Imposta la posizione, i limiti, le estensioni angolari e il tipo di chiusura di questo arco sui valori specificati.  | 
      
| 26 | void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius) Imposta la posizione, i limiti e le estensioni angolari di questo arco sul valore specificato.  | 
      
| 27 | void setArcType(int type) Imposta il tipo di chiusura di questo arco sul valore specificato: OPEN, CHORD o PIE.  | 
      
| 28 | void setFrame(double x, double y, double w, double h) Imposta la posizione e le dimensioni del rettangolo di inquadratura di questa forma sui valori rettangolari specificati.  | 
      
Metodi ereditati
Questa classe eredita i metodi dalle classi seguenti:
java.awt.geom.RectangularShape
java.lang.Object
Esempio di Arc2D
Crea il seguente programma java usando qualsiasi editor di tua scelta, diciamo D:/ > AWT > com > tutorialspoint > gui >
AWTGraphicsDemo.javapackage com.tutorialspoint.gui;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }
   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }
   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    
   @Override
   public void paint(Graphics g) {
      Arc2D.Float arc = new Arc2D.Float(Arc2D.PIE);
      arc.setFrame(70, 200, 150, 150);
      arc.setAngleStart(0);
      arc.setAngleExtent(145);
      Graphics2D g2 = (Graphics2D) g; 
      g2.setColor(Color.gray);
      g2.draw(arc);
      g2.setColor(Color.red);
      g2.fill(arc);
      g2.setColor(Color.black);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Arc2D.PIE", 100, 120); 
   }
} 
    Compilare il programma utilizzando il prompt dei comandi. Vai aD:/ > AWT e digita il seguente comando.
D:\AWT>javac com\tutorialspoint\gui\AwtGraphicsDemo.java 
    Se non viene visualizzato alcun errore, significa che la compilazione è riuscita. Esegui il programma utilizzando il seguente comando.
D:\AWT>java com.tutorialspoint.gui.AwtGraphicsDemo 
    Verificare il seguente output
 
                        