Classe AWT Arc2D
Introdução
A classe Arc2D é a superclasse de todos os objetos que armazenam um arco 2D definido por um retângulo de enquadramento, ângulo inicial, extensão angular (comprimento do arco) e um tipo de fechamento (OPEN, CHORD ou PIE).
Declaração de classe
A seguir está a declaração para java.awt.Arc2D classe:
public abstract class Arc2D
extends RectangularShape
Campo
A seguir estão os campos para java.awt.geom.Arc2D classe:
static int CHORD - O tipo de fechamento para um arco fechado desenhando um segmento de linha reta desde o início do segmento de arco até o final do segmento de arco.
static int OPEN - O tipo de fechamento para um arco aberto sem segmentos de caminho conectando as duas extremidades do segmento de arco.
static int PIE - O tipo de fechamento para um arco fechado desenhando segmentos de linha reta desde o início do segmento de arco até o centro da elipse completa e desse ponto até o final do segmento de arco.
Construtores de classe
SN | Construtor e descrição |
---|---|
1 | protected Arc2D(int type) Esta é uma classe abstrata que não pode ser instanciada diretamente. |
Métodos de aula
SN | Método e Descrição |
---|---|
1 | boolean contains(double x, double y) Determina se o ponto especificado está ou não dentro do limite do arco. |
2 | boolean contains(double x, double y, double w, double h) Determina se o interior do arco contém ou não inteiramente o retângulo especificado. |
3 | boolean contains(Rectangle2D r) Determina se o interior do arco contém ou não inteiramente o retângulo especificado. |
4 | boolean containsAngle(double angle) Determina se o ângulo especificado está ou não dentro das extensões angulares do arco. |
5 | boolean equals(Object obj) Determina se o objeto especificado é ou não igual a este Arc2D. |
6 | abstract double getAngleExtent() Retorna a extensão angular do arco. |
7 | abstract double getAngleStart() Retorna o ângulo inicial do arco. |
8 | int getArcType() Retorna o tipo de fechamento de arco do arco: OPEN, CHORD ou PIE. |
9 | Rectangle2D getBounds2D() Retorna o retângulo de enquadramento de alta precisão do arco. |
10 | Point2D getEndPoint() Retorna o ponto final do arco. |
11 | PathIterator getPathIterator(AffineTransform at) Retorna um objeto de iteração que define o limite do arco. |
12 | Point2D getStartPoint() Retorna o ponto inicial do arco. |
13 | int hashCode() Retorna o código hash para este Arc2D. |
14 | boolean intersects(double x, double y, double w, double h) Determina se o interior do arco cruza ou não o interior do retângulo especificado. |
15 | protected abstract Rectangle2D makeBounds(double x, double y, double w, double h) Constrói um Rectangle2D com a precisão apropriada para conter os parâmetros calculados para ser o retângulo de enquadramento deste arco. |
16 | abstract void setAngleExtent(double angExt) Define a extensão angular deste arco para o valor duplo especificado. |
17 | void setAngles(double x1, double y1, double x2, double y2) Define o ângulo inicial e a extensão angular deste arco usando dois conjuntos de coordenadas. |
18 | void setAngles(Point2D p1, Point2D p2) Define o ângulo inicial e a extensão angular deste arco usando dois pontos. |
19 | abstract void setAngleStart(double angSt) Define o ângulo inicial deste arco para o valor duplo especificado. |
20 | void setAngleStart(Point2D p) Define o ângulo inicial deste arco para o ângulo que o ponto especificado define em relação ao centro deste arco. |
21 | void setArc(Arc2D a) Define este arco igual ao arco especificado. |
22 | abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure) Define a localização, tamanho, extensão angular e tipo de fechamento deste arco para os valores duplos especificados. |
23 | void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure) Define a localização, tamanho, extensão angular e tipo de fechamento deste arco para os valores especificados. |
24 | void setArc(Rectangle2D rect, double angSt, double angExt, int closure) Define a localização, tamanho, extensão angular e tipo de fechamento deste arco para os valores especificados. |
25 | void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure) Define a posição, limites, extensões angulares e tipo de fechamento deste arco para os valores especificados. |
26 | void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius) Define a posição, limites e extensões angulares deste arco para o valor especificado. |
27 | void setArcType(int type) Define o tipo de fechamento deste arco para o valor especificado: OPEN, CHORD ou PIE. |
28 | void setFrame(double x, double y, double w, double h) Define a localização e o tamanho do retângulo de enquadramento desta forma para os valores retangulares especificados. |
Métodos herdados
Esta classe herda métodos das seguintes classes:
java.awt.geom.RectangularShape
java.lang.Object
Exemplo Arc2D
Crie o seguinte programa java usando qualquer editor de sua escolha em dizer 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);
}
}
Compile o programa usando o prompt de comando. Vamos paraD:/ > AWT e digite o seguinte comando.
D:\AWT>javac com\tutorialspoint\gui\AwtGraphicsDemo.java
Se nenhum erro ocorrer, significa que a compilação foi bem-sucedida. Execute o programa usando o seguinte comando.
D:\AWT>java com.tutorialspoint.gui.AwtGraphicsDemo
Verifique a seguinte saída