三角形绘制方法

2022-09-02 09:38:36

我在Java中用这种方法绘制三角形时遇到了麻烦。我可以像这样画一个矩形:draw(Graphics g)

public void draw(Graphics g) {
    g.setColor(colorFill);
    g.fillRect(p.x, p.y, width, height);
    g.setColor(colorBorder);
    g.drawRect(p.x, p.y, width, height);
    drawHandles(g);

其中 p 表示“形状的左上角”。如何以相同的方式绘制三角形?

有人能给我一个标准三角形的例子吗?


答案 1

在图形和图形2D中都没有绘制三角形方法。你需要自己做。您可以使用该方法绘制三条线,也可以使用以下方法之一:drawLine

这些方法适用于多边形。您可以将前缀更改为要填充由点集定义的面时。我插入了文档链接。看看如何使用它们。drawfill

还有 GeneralPath 类。它可以与能够绘制形状的Graphics2D一起使用。看一看:


答案 2

您应该尝试使用 s API。Shape

看看JPanel从另一个类重绘,这是关于绘制三角形的,看看方法的一些想法getPath

您还应该阅读GeneralPathRature Arbitrary Shapes

这种方法很容易应用仿射变形s


推荐