Desenhe um Círculo em Java
-
Desenhar um círculo utilizando a função
drawOval()
em Java -
Desenhe um círculo utilizando a função
drawRoundRect()
em Java -
Desenhe um círculo utilizando
Shape
edraw()
em Java
Neste artigo, vamos introduzir como podemos desenhar um círculo em Java utilizando bibliotecas java.awt
e javax.swing
que são utilizadas para criar componentes GUI. Utilizaremos várias funções da classe Graphics2d
que proporciona mais controlo sobre os componentes gráficos que pretendemos desenhar no ecrã.
Desenhar um círculo utilizando a função drawOval()
em Java
No primeiro exemplo, utilizamos o método drawOval()
da classe Graphics2D
que poderia criar formas ovais, mas para criar um círculo perfeito. Para desenhar o círculo, primeiro substituímos a função paint(Graphics g)
que tem pintado o componente utilizando a classe Graphics
.
Fundimos Graphics
a Graphics2D
tipo para utilizar os seus métodos e propriedades. Agora chamamos à função drawOval()
e passamos quatro argumentos. Os dois primeiros argumentos são as coordenadas x e y do círculo, enquanto os dois últimos argumentos especificam a largura e a altura do círculo a ser desenhado.
Finalmente, estendemos JFrame
do pacote javax.swing
para criar uma moldura de janela com o tamanho e as propriedades especificadas.
import java.awt.*;
import javax.swing.*;
public class DrawCircle extends JFrame {
public DrawCircle() {
setTitle("Drawing a Circle");
setSize(400, 400);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
@Override
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.drawOval(150, 150, 100, 100);
}
public static void main(String[] args) {
new DrawCircle();
}
}
Resultado:
Desenhe um círculo utilizando a função drawRoundRect()
em Java
Outro método da classe Graphics2D
chamado drawRoundRect()
também pode ser utilizado para desenhar um círculo. Como o seu nome sugere, pinta um rectângulo redondo. Tal como o primeiro exemplo, substituímos a função paint(Graphics g)
e depois chamamos o método drawRoundRect()
da classe Graphics2D
.
O drawRoundRect()
aceita seis argumentos; os dois primeiros são coordenadas x e y, os dois seguintes dizem a largura e a altura, e os dois últimos argumentos são a largura e a altura do arco.
import java.awt.*;
import javax.swing.*;
public class DrawCircle extends JFrame {
public DrawCircle() {
setTitle("Drawing a Circle");
setSize(250, 250);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
@Override
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.drawRoundRect(40, 50, 90, 90, 200, 200);
}
public static void main(String[] args) {
new DrawCircle();
}
}
Resultado:
Desenhe um círculo utilizando Shape
e draw()
em Java
O draw()
é outra função da classe graphics2D
que toma como argumento um Shape
. Shape
é uma interface que fornece as propriedades de uma forma geométrica. Queremos aqui um círculo, por isso vamos utilizar Ellipse2D.Double()
que define a altura e largura da elipse, bem como as coordenadas x e y do rectângulo de enquadramento.
No exemplo abaixo, passamos os argumentos para Ellipse2D.Double()
, e um objecto criado Shape
para o método draw()
. Este método irá finalmente desenhar um círculo na janela que criámos utilizando JFrame
.
import java.awt.*;
import java.awt.geom.Ellipse2D;
import javax.swing.*;
public class DrawCircle extends JFrame {
public DrawCircle() {
setTitle("Drawing a Circle");
setSize(250, 250);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
@Override
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
Shape circleShape = new Ellipse2D.Double(100, 100, 100, 100);
g2d.draw(circleShape);
}
public static void main(String[] args) {
new DrawCircle();
}
}
Resultado:
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn