gpt4 book ai didi

java - 在java中用随机颜色填充形状

转载 作者:行者123 更新时间:2023-11-30 06:57:09 25 4
gpt4 key购买 nike

在我正在做的这个程序中,我需要能够用随机颜色填充形状。我对如何实际填充形状感到困惑。我能够生成随机颜色。我在网上四处看看,发现一些消息来源谈论实现 Paint 接口(interface)并在您希望绘制的形状上使用方法 setPaint() 然后调用 填充方法。我试过了,但没有成功。也许我只是错了。这是我的。

Random rand = new Random();
float r = rand.nextFloat();
float g = rand.nextFloat();
float b = rand.nextFloat();

Color randomColor = new Color (r, g, b);

这是在父类(super class)的构造函数中,我实际上将 randomColor 作为该类的属性。因此,为了访问子类中的该元素,我提供了一个仅返回颜色的基本 getter。

在子类中我有这个:

Rectangle2D.Double rectangle = new Rectangle2D.Double(getX(), getY(), getWidth(), height);
rectangle.setPaint(getColor());
rectangle.fill();
g2.draw(rectangle);

我得到的错误是关于类型转换 rectangle 但我尝试的任何类型转换都不起作用。我不确定如何解决此问题。有任何想法吗?还是有更简单/更好的方法来用随机颜色填充形状?谢谢。

最佳答案

您应该调用您在 Graphics2D 上的矩形上调用的方法

Rectangle2D.Double rectangle = new Rectangle2D.Double(getX(), getY(), getWidth(), height);
g2.setPaint(getColor());
g2.fill(rectangle);
g2.draw(rectangle);

关于java - 在java中用随机颜色填充形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33784268/

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