相关疑难解决方法(0)

跟进:找到颜色之间准确的"距离"

原始问题

我正在寻找一种功能,试图量化两种颜色的"遥远"(或不同).这个问题实际上分为两部分:

  1. 什么颜色空间最能代表人类的视觉?
  2. 该空间中的距离度量最能代表人类视觉(欧几里德?)

language-agnostic colors

47
推荐指数
3
解决办法
2万
查看次数

如何使用集合的组合作为测试数据

我想测试一个带有一组边缘情况和正常值的元组的函数.例如,在测试一个函数,该函数true在给定三个形成有效三角形的长度时返回,我将具有特定情况,负数/小数/大数,接近溢出的值等等; 更重要的是,主要目的是生成这些值的组合,没有重复,以获得一组测试数据.

(inf,0,-1), (5,10,1000), (10,5,5), (0,-1,5), (1000,inf,inf),
...
Run Code Online (Sandbox Code Playgroud)

作为一个注释:我实际上知道答案,但它可能对其他人有帮助,对这里的人们来说是一个挑战! - 稍后会发布我的回答.

language-agnostic testing unit-testing

21
推荐指数
1
解决办法
8851
查看次数

色轮背后的数学是什么?

我想创建一个包含12个切片的饼图,每个切片都有不同的颜色.

几乎每个色轮似乎都遵循相同的格式; 例如:http://www.tigercolor.com/color-lab/color-theory/color-theory-intro.htm.

但是有什么算法可以产生颜色?RGB(theta)背后的数学是什么?当然必须有一些既定的科学,但谷歌并没有给我任何线索.

math color-picker colors color-wheel

13
推荐指数
3
解决办法
2万
查看次数

稳定的随机颜色算法

在这里,我们有一个有趣的真实算法要求涉及颜色.

  1. N 漂亮的颜色:为了绘制漂亮的图表(即:饼图),我们需要选择一组随机的N颜色,这些颜色"足够不同"并且看起来很好.这可以通过固定亮度和饱和度并逐步调整色调来实现360/N.
  2. 稳定的颜色分配:给定Pie_1带扇区标记('A','B','C')和Pie_2带扇区标记('B','C','D'),如果扇区的颜色会很好Pie_1和Pie_2上的B和C相同.如果扇区被移除或随着时间的推移添加到图表中,这将有助于防止混淆.标签是唯一稳定的东西.
  3. 允许硬编码颜色:算法应允许硬编码标签 - >颜色关系作为输入,但会为其余标签计算颜色(根据规则1和2).

我认为这个算法即使看起来很特别,也会在不止一种情况下发挥作用.

有任何想法吗?

更新: Eric是正确的,因为当新标签出现和消失时,不可能保证每个标签的颜色稳定性.但我很高兴它是否"足够稳定",即颜色变化最小化.

我想的是:

  1. 每个标签使用散列(标签)%360获得随机色调值
  2. 为了保证生成的色调足够不同,我们将色调圆以固定的步长(即:)划分,2*N并尝试将先前的色调值"舍入"到新的差异值.
  3. 在不同标签达到相同的圆形色调值的情况下,我们以某种方式打破关系并将点移动到其他位置.

但这留下了硬编码颜色的问题.

algorithm rgb gdi colors hsv

5
推荐指数
1
解决办法
2221
查看次数

如何以编程方式在 2D 中排列一组 256 种 RGB 颜色,以便所有相邻颜色都有平滑过渡

我有一组 256 色(xterm-256color 终端中的所有可用颜色),并且我使用了一个名为 256colors2.pl 的脚本,我在几乎每篇讨论 256 色终端的 Internet 文章中都看到了该脚本。这是脚本的输出是一个 6x6x6 颜色的立方体,布局为一系列 6 个 6x6 立方体切片,加上一条从黑色到白色的灰色线。

我正在寻找的是一些 2D 形状,以及在 2D 中布置这些颜色的相应算法,以便所有过渡都是平滑的。这应该适用于一组减少的颜色(在这种情况下为 256,其中包括一组有限的灰色)。

algorithm color-picker colors color-palette color-theory

5
推荐指数
1
解决办法
1328
查看次数

如何"旋转"一种颜色的色调?

我希望生成与给定UIColor(Triadic,Analogues,Complement等)相符的颜色.

我读了很多像帖子这个这个这个.在上一篇文章中,回答者建议去easyrgb.com.所以我去了那里.我了解到,如果我想生成那些颜色方案,我需要在一定程度上"旋转"色调.例如,对于三重色,我需要将其旋转±120度.

我知道我可以通过调用获得颜色的色调getHue(:saturation:brightness:),但我怎么能"旋转"呢?方法返回的色调不是一个数字吗?0到1之间的数字?这对我没有意义!

我认为第一篇文章可能有答案,但代码是用python编写的.我只学了一点python,所以我不太清楚这意味着什么:

h = [(h+d) % 1 for d in (-d, d)]           # Rotation by d
Run Code Online (Sandbox Code Playgroud)

从评论中,我看到这条线以某种方式将色调旋转了d度.但我不知道那种语法意味着什么.

任何人都可以告诉我如何旋转色调,或将上述代码转换为快速?

colors uicolor ios swift

2
推荐指数
1
解决办法
705
查看次数