Min*_*lla 5 java swing shapes paintcomponent
我正在尝试用Java制作一些形状.我创建了两个有两种不同颜色的矩形,但我想创建一个星形,我找不到有用的来源来帮助我这样做.
这是我的代码:
import java.awt.*;
import javax.swing.*;
public class shapes extends JPanel{
@Override
public void paintComponent(Graphics GPHCS){
super.paintComponent(GPHCS);
GPHCS.setColor(Color.BLUE);
GPHCS.fillRect(25,25,100,30);
GPHCS.setColor(Color.GRAY);
GPHCS.fillRect(25,65,100,30);
GPHCS.setColor(new Color(190,81,215));
GPHCS.drawString("This is my text", 25, 120);
}
}
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用多边形和一些基本数学:
int midX = 500;
int midY = 340;
int radius[] = {118,40,90,40};
int nPoints = 16;
int[] X = new int[nPoints];
int[] Y = new int[nPoints];
for (double current=0.0; current<nPoints; current++)
{
int i = (int) current;
double x = Math.cos(current*((2*Math.PI)/max))*radius[i % 4];
double y = Math.sin(current*((2*Math.PI)/max))*radius[i % 4];
X[i] = (int) x+midX;
Y[i] = (int) y+midY;
}
g.setColor(Color.WHITE);
g.fillPolygon(X, Y, nPoints);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31942 次 |
| 最近记录: |