如何使从COLOR类获得的HSB颜色变成半透明(半透明)

  • 本文关键字:半透明 颜色 HSB 何使 COLOR java colors hsb
  • 更新时间 :
  • 英文 :


所以我制作了一个健康条,根据个人的健康状况改变颜色。但我想这样做,当玩家走到健康条下时,它会变成半透明的,我想知道如果健康条是HSB颜色的,我该怎么做?

private static float HEALTH = 100;
public void render(Graphics g) {
g.setColor(Color.GRAY);
g.fillRect(15, 15, 200, 32);
color = Color.getHSBColor( (1f * HEALTH) / 360, 1f, 1f);
g.setColor(Color.getHSBColor( (1f * HEALTH) / 360, 1f, 1f));
g.fillRect(15, 15, (int) HEALTH * 2, 32); 
g.setColor(Color.white);
g.drawRect(15, 15, 200, 32);
}

Color.getHSBColor(...)获得Color对象后,可以创建具有相同RGB值但不同Alpha值的第二个Color对象。Alpha值定义透明度。例如:

color = Color.getHSBColor( (1f * HEALTH) / 360, 1f, 1f);
color = new Color( color.getRed(), color.getBlue(), color.getGreen(), 128 );

最新更新