簡體   English   中英

使用Java Swing將點繪制為橢圓

[英]Draw points as ovals using java swing

我有一個[x, y]坐標的Point p = new Point(1, 2) ,例如Point p = new Point(1, 2) 我想形象化它。 但是,我希望這一點指向橢圓形,如下圖所示。

在此處輸入圖片說明

如何使用java Swing做到這一點?

確定所需的橢圓形的大小,例如10 px。 然后繪制從Point (x和y)開始的x和y點的橢圓形,減去size一半。 就像是:

public class PointsPanel extends JPanel {
    List<Point> points = new ArrayList<Point>();
    int size = 10;
    ...
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        for (Point p : points) {
            int x = p.x - size/2;
            int y = p.y - size/2;
            g.drawOval(x, y, size, size);
        }
    }
}

有關繪畫的更多常規細節,請參見執行自定義繪畫 另請參閱Graphics API,以了解其他drawXxxfillXxx方法。

從您發布的圖像中,您需要的是一個圖布局庫,例如JUNG (不確定該項目的當前狀態)。 您可以按照peeskillet的回答進行操作,但需要注意橢圓形重疊等問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM