将照度转换为十六进制颜色

Convert degree of illumination into hex color

本文关键字:十六进制 颜色 转换      更新时间:2023-09-26

我有一个很大的问题。从数据库中我可以得到从0到100的光照度。晚上0点,中午100点。知道了这些参数,我需要构建日梯度。

数据结构如下:

{
0: '0%',
10: '25%',
30: '100%',
40: '60%',
50: '100%',
90: '0%'
}

在点到点的渐变瓷砖中,它可能会影响购买位置的变化。从30年到50年。

我一点主意也没有。有什么建议吗?

我认为你需要的是一个将hsl转换为rgb的函数。假定照度为l(亮度)。你需要一个色调和饱和度,然后它是相当简单的。这个问题有多个javascript hsl到rgb的解决方案:

HSL到RGB的颜色转换

你的数据结构有两个NOON !(100%)

{
0: '0%',
10: '20%',
30: '60%',
40: '80%',
50: '100%',
99: '1%'
}

这可能不完全是你想要的,但它可能更接近。

<标题> 更新

好的,谢谢,我确实看到你在你的问题中指出了这一点,但是我忘记了。

不管怎样,进入这个链接http://ie.microsoft.com/testdrive/Graphics/hands-on-css3/hands-on_gradients.htm

和你呈现的HANDS ON GRADIENTS。目前在屏幕的左边有一个渐变出现的空间,这是因为设置还没有被应用。因此,我们将首先通过执行以下操作来纠正此错误:

LINEAR选项卡下的设置中,您将看到DIRECTION和用于方向值的滑块。

点击PLUS按钮的方向滑块,直到值读取BOTTOM

现在你看到一个从黑到白的渐变。这是你的昼夜比例尺。

现在当用户旅行到不同的时区时,它可以在渐变中显示为STEP。

要显示它的样子,请单击ADD COLOR STEP按钮。

现在添加了一个步骤,您有START_ATSTOP_ATEND_AT设置如下: START_AT 黑色 STOP_AT 白色黑色 END_AT

现在你有两个渐变,一个从黑色到白色,另一个从白色到黑色。将鼠标光标放在STOP_AT滑块内的黑色方块上,标记为X%(其中X是当前百分比),当您用鼠标拖动滑块时,您可以看到两个梯度如何变化。

希望这能让你朝着解决你的目标前进。顺便说一下,如果渐变之间的公共颜色不相同,那么您将不得不添加另一个COLOR_STEP(尽管我希望在大多数情况下公共颜色是相同的,唯一的例外是时区发生变化。

是否值得指出?我注意到值输入为RGB,所以你需要一个函数来改变你的100%为RGB(255,255,255)和0%为RGB(0,0,0),其中黑色RGB(0.0.0)是午夜/晚上和白色RGB(255,255,255)是白天/中午。