Quiero aumentar el ancho de Line2D. No pude encontrar ningún método para hacer eso. ¿Necesito hacer un pequeño rectángulo para este propósito?
81
Debe utilizar setStrokepara establecer un trazo del Graphics2Dobjeto.
El ejemplo en http://www.java2s.com le ofrece algunos ejemplos de código.
El siguiente código produce la siguiente imagen:
import java.awt.*;
import java.awt.geom.Line2D;
import javax.swing.*;
public class FrameTest {
public static void main(String[] args) {
JFrame jf = new JFrame("Demo");
Container cp = jf.getContentPane();
cp.add(new JComponent() {
public void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
g2.setStroke(new BasicStroke(10));
g2.draw(new Line2D.Float(30, 20, 80, 90));
}
});
jf.setSize(300, 200);
jf.setVisible(true);
}
}

(Tenga en cuenta que el setStrokemétodo no está disponible en el Graphicsobjeto. Debe convertirlo en un Graphics2Dobjeto).
Esta publicación ha sido reescrita como un artículo aquí .
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)Que es
Stroke:https://docs.oracle.com/javase/7/docs/api/java/awt/BasicStroke.html
Tenga en cuenta que la
Strokeconfiguración:Graphics2D g2 = (Graphics2D) g; g2.setStroke(new BasicStroke(10));está configurando el ancho de línea, ya que
BasicStroke(float width):Y también afecta a otros métodos como
Graphics2D.drawLine(int x1, int y1, int x2, int y2)yGraphics2D.drawRect(int x, int y, int width, int height):fuente