gradienttest.java
来自「java learn PPT java learn PPT java learn」· Java 代码 · 共 57 行
JAVA
57 行
import java.applet.*;
import java.awt.*;
import java.awt.geom.*;
import java.util.*;
public class GradientTest extends Applet
{
// 要绘制的Polygon
private Polygon poly;
// 定义绘制的2个端点
private Point2D p1;
private Point2D p2;
public void init()
{
// 两个圆的半径
final float[] radii = { 10.0f, 20.0f };
// 开始的点和每一小块的增量
double radians = 0.0;
final double increment = Math.toRadians(15.0);
poly = new Polygon();
// 形状由两个圆周上的交替的两个点决定
// 由于我们按15度递增,所以我们可以在形状内放置24个点
for(int i = 0; i < 24; i++)
{
poly.addPoint((int)(radii[i%2]*Math.cos(radians)),
(int)(radii[i%2]*Math.sin(radians)));
radians += increment;
}
// 设置绘制的终点. 这些值会被 Graphics2D 对象缩放
p1 = new Point2D.Float(0.0f, +20.0f);
p2 = new Point2D.Float(0.0f, -20.0f);
}
public void paint(Graphics g)
{
// 转换为一个可用的 Graphics2D 对象
Graphics2D g2d = (Graphics2D)g;
AffineTransform at = new AffineTransform();
at.translate(100,100);
at.scale(5, 5);
// 绘制形状
g2d.setTransform(at);
g2d.setPaint(new GradientPaint(p1, Color.ORANGE, p2, Color.GREEN));
g2d.fill(poly);
}
} // GradientTest
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?