用Java绘制弧形

Emi*_*mil 1 java graphics coordinate-systems

我需要在Java中用起始角度350和结束角度20绘制一个Pie Arc.我遵循的坐标系统如下: -

        |0  
        |
270-----------90 
        |
        |180
Run Code Online (Sandbox Code Playgroud)

这里的问题是起始角度大于结束角度.换句话说,我已设法画出弧线.任何帮助都会很棒.

bra*_*boy 6

您将具有起始角度和"范围"角度,而不是结束角度.所以,我不认为你会画弧线有问题.

import java.awt.Graphics;
import javax.swing.JFrame;

public class Test extends JFrame{
    public static void main(String[] args){
        new Test();
    }
    public Test(){
        this.setSize(400,400);
        this.setVisible(true);
    }
    public void paint(Graphics g) {
        g.fillArc(100, 100, 100, 100, 70, 30);
    }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

或者,您也可以使用Arc2D类.还有一点要注意,在java中,这是默认的坐标机制.

        |90  
        |
180-----------0 
        |
        |270
Run Code Online (Sandbox Code Playgroud)