Java 从一点到另一点画一个拱门

Java 从一点到另一点画一个拱门,java,swing,graphics,awt,graphics2d,Java,Swing,Graphics,Awt,Graphics2d,我在一条垂直线上有2个点,(x0,y0)和(x0,y1),我想把这两个点连接成一个拱(看起来像一个环,或者像一个圆周的一半),它在(x0,y0)处弯曲,在(x0,y1)处结束 如果这个连接看起来像一个箭头,从起点指向终点,那就完美了 所有这些都是用图形或其他方式实现的 提前谢谢 包含关于 在这里,您可以找到问题的答案 对于AWT组件是否有方法paint(),对于Swing JComponent是否有方法paintComponent() 为了更快地获得更好的帮助,请使用演示您的问题和问题的方式编

我在一条垂直线上有2个点,(x0,y0)和(x0,y1),我想把这两个点连接成一个拱(看起来像一个环,或者像一个圆周的一半),它在(x0,y0)处弯曲,在(x0,y1)处结束

如果这个连接看起来像一个箭头,从起点指向终点,那就完美了

所有这些都是用图形或其他方式实现的

提前谢谢

  • 包含关于

  • 在这里,您可以找到问题的答案

  • 对于
    AWT组件
    是否有方法
    paint()
    ,对于
    Swing JComponent
    是否有方法
    paintComponent()

  • 为了更快地获得更好的帮助,请使用演示您的问题和问题的方式编辑您的问题:

我在一条垂直线上有2个点,(x0,y0)和(x0,y1),我想把这两个点连接成一个拱(看起来像一个环,或者像一个圆周的一半),它在(x0,y0)处弯曲,在(x0,y1)处结束

  • 包含关于

  • 在这里,您可以找到问题的答案

  • 对于
    AWT组件
    是否有方法
    paint()
    ,对于
    Swing JComponent
    是否有方法
    paintComponent()

  • 为了更快地获得更好的帮助,请使用演示您的问题和问题的方式编辑您的问题:

我在一条垂直线上有2个点,(x0,y0)和(x0,y1),我想把这两个点连接成一个拱(看起来像一个环,或者像一个圆周的一半),它在(x0,y0)处弯曲,在(x0,y1)处结束


下面是一个圆弧绘制示例:

public class ArcExample extends JComponent
{
    protected void paintComponent ( Graphics g )
    {
        super.paintComponent ( g );

        Graphics2D g2d = ( Graphics2D ) g;
        g2d.setRenderingHint ( RenderingHints.KEY_ANTIALIASING,
                RenderingHints.VALUE_ANTIALIAS_ON );

        g2d.setColor ( Color.RED );
        g2d.drawArc ( 0, 0, getWidth (), getHeight (), 90, -180 );
    }

    public Dimension getPreferredSize ()
    {
        return new Dimension ( 200, 200 );
    }

    public static void main ( String[] args )
    {
        JFrame frame = new JFrame ();
        frame.add ( new ArcExample () );
        frame.pack ();
        frame.setLocationRelativeTo ( null );
        frame.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE );
        frame.setVisible ( true );
    }
}

下面是一个圆弧绘制示例:

public class ArcExample extends JComponent
{
    protected void paintComponent ( Graphics g )
    {
        super.paintComponent ( g );

        Graphics2D g2d = ( Graphics2D ) g;
        g2d.setRenderingHint ( RenderingHints.KEY_ANTIALIASING,
                RenderingHints.VALUE_ANTIALIAS_ON );

        g2d.setColor ( Color.RED );
        g2d.drawArc ( 0, 0, getWidth (), getHeight (), 90, -180 );
    }

    public Dimension getPreferredSize ()
    {
        return new Dimension ( 200, 200 );
    }

    public static void main ( String[] args )
    {
        JFrame frame = new JFrame ();
        frame.add ( new ArcExample () );
        frame.pack ();
        frame.setLocationRelativeTo ( null );
        frame.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE );
        frame.setVisible ( true );
    }
}

下面的代码生成此屏幕截图,它将在两点之间画半个圆,并在末尾添加一个箭头:

代码:


下面的代码生成此屏幕截图,它将在两点之间画半个圆,并在末尾添加一个箭头:

代码:


我如何连接这两点??也许是一个环?但是你知道怎么处理吗?感谢您可以在示例@dacwe added()中看到两点连接。或者,如果这不是你想要的-添加一些解释图片…以及我如何连接这两点??也许是一个环?但是你知道怎么处理吗?感谢您可以在示例@dacwe added()中看到两点连接。或者,如果它不是你要找的-添加一些解释图像…你要找的单词是“arc”,有这样命名的方法来绘制它们。你要找的单词是“arc”,有这样命名的方法来绘制它们。