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.java
package 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