gpt4 book ai didi

java - 如何渲染具有 3 种颜色渐变的圆弧?

转载 作者:行者123 更新时间:2023-12-02 12:13:56 25 4
gpt4 key购买 nike

我正在尝试渲染一条弧线,该弧线从绿色开始,过渡到黄色,最后变为红色。现在它只是使用标准 GradientPaint 方法从绿色过渡到红色。有没有办法用 3 种颜色来实现?

public void paintComponent(Graphics gr) {
super.paintComponent(gr);
Graphics2D g = (Graphics2D) gr;

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

BasicStroke wideStroke = new BasicStroke(24.0f);
g.setStroke(wideStroke);

g.setPaint(new GradientPaint(new Point(10, 140), Color.GREEN, new Point(100, 10), Color.RED));

g.draw(new Arc2D.Double(25, 25, 200, 200, 180, -90, Arc2D.OPEN));
}

最佳答案

感谢 MadProgrammer

    public void paintComponent(Graphics gr) {
super.paintComponent(gr);
Graphics2D g = (Graphics2D) gr;

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

BasicStroke wideStroke = new BasicStroke(24.0f);
g.setStroke(wideStroke);

LinearGradientPaint lgp = new LinearGradientPaint(
new Point2D.Float(0, 160),
new Point2D.Float(160, 0),
new float[] {0f, 0.5f, 1f},
new Color[] {Color.green, Color.yellow, Color.red}
);

g.setPaint(lgp);

g.draw(new Arc2D.Double(25, 25, 200, 200, 180, -90, Arc2D.OPEN));
}

关于java - 如何渲染具有 3 种颜色渐变的圆弧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46332317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com