问题标签 [hsb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
200 浏览

java - 重绘 JLabel、图像应用程序的问题

所以这是我们的代码......我们是贵族,需要一些帮助来让我们的按钮在显示高度和宽度的色调/饱和度/亮度之间切换。目前,我们的应用程序仅显示宽度的色调和高度的饱和度。我们的按钮不起作用,我们无法清空视图并重新绘制另一个。有人可以帮忙吗?

0 投票
5 回答
49348 浏览

c++ - HSB vs HSL vs HSV

我正在制作一个 Color 类作为 C++ 中非常基本的图形 API 的一部分。所以我决定看一下微软的 .NET 框架,并注意到他们的 Color 类具有 HSB 的功能。

然后我开始了一项研究,以确定我是否应该在课堂上提供 HSB、HSL 或 HSV 或所有这些。

所以,我有 3 个关于 HSB、HSL、HSV 的问题:

  1. HSB 和 HSL 一样吗?

  2. 如果没有,为什么没有 HSBL 甚至 HSBLV?

  3. 我找到了许多不同的计算这些值的方法,有人可以告诉我最快的方法吗?

0 投票
1 回答
51 浏览

colors - 设置处理颜色会影响整个窗口颜色

我正在制作一个处理应用程序,其中一些数据被插入到与主线程不同的线程中。在这个新线程中,我有color aColor = color(255-(255*_hue[0]), 255, 255);. (配色方案是 HSB)。

这条线导致屏幕闪烁红色。似乎这条线(从未aColor使用过谁的变量)正在导致应用程序窗口中发生一些严重的颜色变化。没有图像被绘制或任何东西。

我想知道这是否是某种处理错误,是否有解决方案,或者是否有解决方法。谢谢

0 投票
1 回答
39 浏览

actionscript-3 - Flash中H、S、B的最大值和最小值?

通过 AdjustColor 类修改 Hue、Staturation 和 Brightnest 的最小值和最大值是多少?

0 投票
6 回答
61265 浏览

javascript - Javascript 准确地将 HSB/HSV 颜色转换为 RGB

我需要准确地将 HSB 转换为 RGB,但我不确定如何解决将小数转换为整数而不四舍五入的问题。这是我从颜色选择器库中获得的当前功能:

如您所见,此函数的不准确性来自 Math.round

0 投票
1 回答
207 浏览

ios - 为什么查询时的 HSB 值与绘图时的值不同?

首先,我创建了这个实用程序来调试我的情况:

此实用程序用于确认在读取刚刚绘制的值时我没有得到预期的数据集。我希望得到与刚刚绘制的值相匹配的值。下面是绘图代码:

在我的测试用例中,ant.size.width 是 5。这应该会产生一条足够宽的线,当我查询颜色时,我应该得到相同的颜色。下面是查询颜色的方法:

我意识到这种方法是从不同的模式 RGB 创建颜色,而不是编写的 HSB,但由于我对两者使用相同的上下文,我认为这应该无关紧要。也许我需要设置其他一些设置?

这是创建上下文的方法:

这是一些数据的样本。该应用程序选择随机颜色,每次需要新颜色时通过添加黄金比例来交替色调,然后标准化为 0..1。在我刚刚做的运行中,创建的颜色是:

使用以下代码创建:

色调和饱和度的值是在蚂蚁初始化时创建的,但在该对象的整个生命周期中保持不变。无论如何,这里是使用在屏幕上显示为浅青蓝色的颜色进行绘图和查询的输出:

嗯。现在我看它,似乎可能存在字节序问题。看起来红色和蓝色是落后的。

0 投票
4 回答
11099 浏览

colors - 将 RGBW 颜色转换为标准 RGB/HSB 表示

我正在为家庭自动化系统中的灯光管理构建一个界面。我设法为各种供应商控制标准开/关和可调光,没有什么问题,但现在我遇到了一个与 RGB 灯有关的问题。

我目前使用的灯是 RGBW LED 灯条 - 具体来说,我正在使用低成本的 RGBW 灯:灯由四个 LED 组成,每个 LED 都可以单独控制。

更清楚一点 - 我正在编写一些 c# 代码,它应该检索当前选择的颜色并将其显示在 UI 中,并使用户能够为灯光指定新颜色。为了设置颜色和检索它,我必须使用一个命令提供程序,它使我能够通过 Web 服务发送和接收命令。

提供程序使用 RGBW 颜色 - 使用红色、绿色、蓝色和白色的四个组件。为了在我的界面上表示当前的灯光颜色,我想将服务返回的 RGBW 颜色转换为更标准的 RGB/HSB 方案。

在网上搜索,我找到的唯一颜色转换参考(不包括 rgb 到 rgbw 转换的 c++ 示例,根据我的理解,它肯定有一些严重的错误)是这篇文章,它显示了从 HSI 到 RGBW 的转换,即我需要的相反:链接在这里

我正在寻找一些关于如何实现这种转换的见解(或简单解释为什么它不可能)。据我所知,从 RGB 到 RGBW 的转换是任意的 - 单个 RGB 值可以表示为多个 RGBW 值,但相反的转换应该是单义的。另请注意,当我使用 c# 时,也可以随意参考其他语言的算法 - 语言不是问题,问题是我不知道进行颜色转换的数学。

0 投票
1 回答
727 浏览

jquery - 为 Jquery 提供一个十六进制代码,动态生成相似的颜色

我正在使用 Chart.js 为我正在构建的应用程序创建一些圆环图。我希望图表基于像#5a2a97 这样的单一颜色。

然后我想我想使用 HSB(我从 photoshop 颜色滑块中得到这个术语)将 S 和 B 值动态更改为 0 到 100% 之间的随机百分比。

这将导致基于原始十六进制的颜色,但动态饱和度和值。

然后我需要将它转换回chart.js 的十六进制代码。

我知道这听起来很疯狂,但有人有什么想法吗?

0 投票
1 回答
3480 浏览

ios - 如何将 HSB 颜色过滤器应用于 UIImage

几天来,我一直在为 UIImage 着色的项目而苦苦挣扎。这个想法是,该应用程序将启动一组图像,我必须使用从 Web 服务检索到的值对这些图像进行着色。如果您愿意,可以选择某种主题。

与我一起工作的设计师给了我一张关于他所有 Photoshop 值的背景图片。

第一个问题是 Photoshop 使用 HSL 而 iOS 使用 HSB。因此,第一个挑战是从 Photoshop 转换值。

Photoshop HSL:-28(范围 -180 => +180)、100(范围 -100 => +100)、25(范围 -100 => +100)。

幸运的是我在网上找到了一些代码,在这里

使用在线转换器,我验证了此方法返回了良好的值。
我需要更改范围(H:0->360,S:0->100,L:0->100)

颜色转换器

所以 HSL 152, 100, 62 给出 HSB 152, 76, 100。该方法返回 75 表示饱和度,100 表示亮度,所以我们很好。

接下来我需要将这些值应用于图像,所以这里是要更改的代码......

色调:

饱和度:

亮度:

一切都放在一起:

最后一个完成块只是将输出图像应用于图像视图。现在这里是结果:

基础图片

基本图像

着色(仅色相)

仅色相

着色(色相和饱和度)

色调和饱和度

着色(色相、饱和度和亮度)

色相、饱和度和亮度

预期结果

预期结果

如您所见,最终图像是完全白色的(亮度为 100%)。

我在这里完全迷失了,我尝试了很多组合(按顺序应用 H、S 和 B),我尝试了其他库,例如iOS-Image-Filters,但没有任何成功。我还在 Stack Overflow 上阅读了很多问题。

链接:

有人成功地将 HSL/HSB 值应用于 UIImages?

0 投票
1 回答
750 浏览

.net - .Net Color 结构是否使用 HSB 或 HSL 颜色空间?

据我了解,HSL 和 HSB 色彩空间非常相似,都使用相同的 0-360 色轮作为色调,使用相同的 0-1 值作为饱和度。它们之间的一个区别是,在 HSB 模型中,您有亮度,其中 0 是黑色,1 是全强度的颜色,而在 HSL 中,您有亮度/亮度,其中 0 仍然是黑色,但 1 是白色。

.netColor结构使用 RGB 空间,但具有GetHue(),GetSaturation()GetBrightness()功能。

这里的文档令人困惑。对于GetBrightness()

好的,这是有道理的,.Net 似乎正在使用 HSB ......

呃......所以最大值代表白色,而不是最亮的颜色。尽管他们的文档和命名始终是指亮度,但我很确定返回的值实际上是lightness/luminosity,即 .Net 实际上使用 HSL 模型而不是 HSB。

谁能证实这一点?是文档中的错误,中的错误GetBrightness(),还是我以某种方式误解了理论?