【问题标题】:Java color interpolation between 3 stops3 站之间的 Java 颜色插值
【发布时间】:2015-10-01 15:36:33
【问题描述】:

我有一个函数,我将 r g 和 b 传递给它,然后返回颜色,r g 和 b 介于 0.0 和 1.0 之间。

我需要根据从 0.0 到 1.0 的百分比,对传递函数的颜色进行插值,从红色到黄色再到绿色。

我找到了另一个 SO 答案 Color interpolation between 3 colors,但我不确定如何将它应用到我的案例中。

【问题讨论】:

  • @JordiCastilla 我无法尝试任何东西,我什至不知道从哪里开始。颜色插值对我来说真的很新鲜。我想这个问题的质量并不完全,但这是我所知道的唯一寻求帮助的地方
  • 你就在这里......关键是,也许你无法达到颜色插值,没关系......但是,开始:制作布局或一些形状来放置颜色,制作按钮开始插值并尝试一些东西......当你卡住之后你会有一个很好的问题
  • 这不是你想要的,但它解决了同样的问题:sourceforge.net/p/tus/code/HEAD/tree/tjacobs/ui/ex/…
  • @ControlAltDel 我不明白这如何适用于我正在尝试做的事情?
  • 实际进行 n 档颜色插值的方法是将 0 到 1 划分为区间,并根据 p 所在的区间内插两种颜色。我在mroman.ch/guides/interpolateclr.html 上描述了这个过程

标签: java math colors interpolation


【解决方案1】:

我使用以下函数来模拟从红色到黄色到最后绿色的颜色变化:

public Color getColor(float p){
    return new Color(1.0-p,p,0);
}

其中getColor(0)返回红色,getColor(0.5)返回黄色,getColor(1.0)返回绿色

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-18
  • 1970-01-01
  • 2014-09-14
  • 1970-01-01
  • 2019-05-19
  • 1970-01-01
相关资源
最近更新 更多