问题标签 [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 投票
2 回答
3275 浏览

colors - 迭代颜色

有没有很好的方法来迭代颜色?我知道这听起来像是一个奇怪的问题,但这是一个类比。

假设您编写了一个游戏,您可以在其中环游地球。您选择一个起点,然后定义一个重复应用的规则。例如:从您在地球上的当前位置开始,然后定义穿过您所在位置以及北极和南极的大圆。每走一步,沿着这个圆圈走 10 英里。每一步都会带你进入与前一步相似的气候(尽管有时你会因为在海洋中而湿透了)。或者每走一步走 6,000 英里。现在每一步都是一个非常不同的气候。

现在想象一个用随机颜色在屏幕上绘制元素的程序。也许您将增量设置为较低的数字,并且每种颜色都与以前的颜色非常相似。也许你把它定得很高,每一种颜色都与以前的颜色大不相同。

如果您使用 RGB 值并将 R、G 和 B 分别增加少量,您会逐渐变化,直到其中一个值换行并且您会突然发生变化。

使用 HSB 值,色调的色域是圆形的,因此没有不连续性。S 和 B 不是,您可能会遇到一系列无法​​区分的颜色,因为 S 太低以至于它们看起来都是白色的。将 S 和 B 保持在最大值是可能的,尽管它会遗漏很多颜色。

程序的每次运行只使用少量颜色(10 到 15)。我想随机选择值,以便颜色和谐地混合一次,一次它们发生冲突,一次它们都是柔和的,一次它们是饱和和柔和的混合,等等。

0 投票
2 回答
5068 浏览

iphone - Objective-C RGB 转 HSB

假设我有颜色 FF0000,它是红色的。找到较深的颜色很容易,我可能只输入 CC 而不是 FF,但是假设我有颜色 AE83FC,这是一种复杂的颜色,我怎么会自动找到它的较浅或较深的版本?

我认为最简单的方法是将我的 RGB 转换为 HSB [色相、饱和度、亮度]

我将如何在 Objective-C 中做到这一点?

假设我有一个 RGB,它是:1.0、0.0、0.0。那是红色的。

我如何将其转换为 HSB,然后转换颜色并使其返回 RGB,以便我可以使用 CGContextRGBSetFillColor?

是否有任何 HSB 功能?

请帮忙。:)

0 投票
8 回答
22396 浏览

javascript - 将 HSB/HSV 颜色转换为 HSL

如何将 HSB 颜色转换为 HSL?

Photoshop 在其颜色选择器中显示 HSB 颜色。HSL 颜色可以在 CSS 中使用。

我试过这个JS:

hsb2hsl(0, 100, 50).l == 0不是25

更新:我可以在不转换 HSB → RGB → HSL 的情况下做到这一点吗?

0 投票
9 回答
36208 浏览

colors - 颜色理论:如何将 Munsell HVC 转换为 RGB/HSB/HSL

我正在查看描述牙科中用于描述牙齿颜色的标准颜色的文件。他们引用了huevaluechroma值,并指出它们来自 1905 Munsell 对颜色的描述:

AH Munsell 在 1905 年开发的颜色符号系统根据三个属性识别颜色:HUE、VALUE(亮度)和 CHROMA(饱和度)[ 15 ]

HUE (H):Munsell 将色调定义为我们区分一种颜色与另一种颜色的质量。他选择了五种原色:红、黄、绿、蓝、紫;五种中间色:黄-红、绿-黄、蓝-绿、紫-蓝、红-紫。这些被放置在相同点的色环周围,这些点之间的颜色是两者的混合,有利于较近的点/颜色(见图 1)。

替代文字

值 (V):此符号表示颜色相对于中性灰度的明暗程度,从绝对黑色(值符号 0)延伸到绝对白色(值符号 10)。这基本上就是颜色的“明亮”程度。

CHROMA (C):这表示给定色调与相同值的中性灰色的发散程度。色度等级从中性灰色的 0 扩展到 10、12、14 或更远,具体取决于待评估样品的强度(饱和度)。

有多种颜色分类系统,Vita 系统最常用于牙科。这使用字母 A、B、C 和 D 来表示牙齿的色调(颜色)。色度和值均由 1 到 4 的值表示。A1 比 A4 亮,但 A4 比 A1 更饱和。如果按照值的顺序,即亮度,从最亮到最暗的顺序是:

A1,B1,B2,A2,A3,D2,C1,B3,D3,D4,A3.5,B4,C2,A4,C3,C4

每种色调的 Hue、Value 和 Chroma 的确切值如下所示 ( 16 )

替代文字

所以我的问题是,任何人都可以将 Munsell HVC 转换为 RGB、HSB 或 HSL 吗?

他们说 Value(Brightness) 从 变化0..10,这很好。所以我取 7.05 表示 70.5%。

Hue衡量的是什么?我习惯于以(0..360)测量色调。degrees但是我看到的值都是红色的——当它们应该更黄或棕色的时候。

最后,它说 Choma/Saturation 的范围可以从0..10……甚至更高——这听起来像是一个任意的比例。

那么任何人都可以将 Munsell HVC 转换为 HSB 或 HSL,或者更好的是 RGB 吗?

0 投票
6 回答
11579 浏览

c# - 在 RGB 和 HSB 颜色值之间切换的算法

我读了文章在 RGB 和 HSB 颜色值之间切换的算法

然后有人发帖说有错误但没有详细说明

但我认为当 h 大于 5 时需要管理,例如颜色 R:130 G:65 B:111

我需要添加那段代码吗?而且我认为它应该进入 HSB 到 RGB(在我的 C# 转换中)

另外,是否应该像上面一样,或者

0 投票
0 回答
1492 浏览

iphone - 如何将 RGB 颜色或十六进制转换为 HSB?

我正在尝试找到一种方法来获取 RGB 颜色的 HSB 值。有人知道怎么做吗?

0 投票
2 回答
1064 浏览

objective-c - UIColor 与标准 RGB 色轮不匹配?

色调UIColor与标准 RGB 色轮不同。我的意思是,色轮上的两种相反颜色将匹配(即黄色和紫色)​​,但如果您在 中采用两种相反的颜色UIColor,例如:

颜色 1:色相 0.45
颜色 2:色相 0.95

他们不匹配。有没有办法通过 找到光谱中的相反颜色UIColor

0 投票
3 回答
439 浏览

plot - 颜色模式或函数,pyxplot

我正在使用一个名为 pyxplot 的程序,并且正在制作一些颜色图。要指定颜色,我可以使用 RGB、HSB 或 CMYK 模式

所有值都从 0 到 1 并指定 f(x,y) = c1 函数的颜色。例如,我可以做

它给了我一个从白色到红色的颜色图(红色表示 c1 的值为 1,白色表示 0) ' 本页的 Matlab http://www.mathworks.com/help/techdoc/ref/colormapeditor.html 因为我尝试组合颜色,但我无法获得漂亮的图案。

我可以做

它给了我从橙色到蓝色的 hsb 颜色范围,但是,如果我想要该范围内的其他颜色怎么办?

0 投票
2 回答
8672 浏览

objective-c - 如何计算RGB颜色的亮度?

我有我的功能:

这对我不起作用。

例如:r:84 g:67 b:73。函数返回 72.760002。在 Photoshop 中,此颜色的亮度为 33%。怎么了?

谢谢。

0 投票
4 回答
22877 浏览

ios - 是否有将 UIColor 转换为色相饱和度亮度的功能?

我可以用 RGB 值设置 uicolor:

我可以用 hsb 值设置 uicolor:

我也可以将其转换回 RGB:

但是我如何从 uicolor 获得 HSB?