使用具有不同颜色的fillArc填充圆

时间:2019-05-07 09:16:00

标签: java swing

这是圆的外观,或与此近似的东西。 74493-circle-rgb-6c00abe1aef3327613842268b97acb01.jpg

图像中是我在下面的代码中得到的。 Captură.jpg 我正在尝试用所有可能的颜色填充圆圈,从红色开始。我不知道如何从红色过渡到绿色或其他颜色。

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JFrame;
import javax.swing.JPanel;




public class TranzitiiLine  extends JPanel {



    public TranzitiiLine( ) {  } 
    public void paintComponent(Graphics g) {

     int x = getHeight();
     int y = getWidth();

    if(x > y) {
        y = 0;
        x = 80;
    }
    else {
        x = 80;
        y = 0;
    }
    int R = 255,t = 0, p =1,G = 0,B= 0;

我正在尝试从红色开始创建颜色,并使用p和t坐标显示它。

  for(int i =0; i < 255; i ++) {
        B++;
        G++;
        if(B>255)
            B%=255;
        if(G>255)
            G%=255;
        Color randomColor = new Color(R, G, B);
        g.setColor(randomColor);
        g.fillArc(x,y, 300, 300,t,p);
        t = p;
        p++;
    }

        g.drawOval(x,y, 300, 300);  
}     
    public static void main(String args[ ]) { 
        JFrame frame = new JFrame("Oval Sample"); 
        frame.getContentPane().add(new TranzitiiLine( ));  
        frame.setSize(500,400);  
        frame.setVisible(true);   
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        frame.setLocationRelativeTo(null);

} }

0 个答案:

没有答案