我需要颜色数学方面的帮助。我有一个主要颜色,我需要获得其他颜色的选择和谐。 我需要这样的颜色和声:三角,补色,类似,单色。我需要他们在C#中。 任何帮助表示赞赏。 谢谢, 迪马。色彩和声:三角形,补色,类似,单色
回答
好吧,一切都围绕着您的link中描述的色轮。我建议在数组中对这些颜色进行硬编码。我假设你的主色一直是其中之一12.
我们将需要的一个辅助方法是将数组包围在数组周围的值,例如,颜色-1变为颜色12(索引11阵列):
int WrapColor(int colorIndex, int numWheelColors)
{
while(colorIndex < 0)
{
colorIndex += numWheelColors;
}
colorIndex = colorIndex % numWheelColors;
}
我们还需要一个辅助方法,将获得的色轮色彩的指数:
int GetColorWheelIndex(Color color)
{
if (ColorWheelArray.Contains(color))
return ColorWheelArray.IndexOf(color);
else
throw new InvalidArgumentException("color");
}
现在一切都到位(假设你有所谓的ColorWheelArray数组,包含颜色按顺序)。
特里亚达:
Color[] GetTriadaColors(Color color)
{
int colorIndex = GetColorWheelIndex(color, ColorWheelArray.Length);
return new Color[]
{
color,
ColorWheelArray[WrapColor(colorIndex + ColorWheelArray.Length/3)],
ColorWheelArray[WrapColor(colorIndex + 2 * ColorWheelArray.Length/3)]
};
}
人员:
Color GetComplimentColor(Color color)
{
int colorIndex = GetColorWheelIndex(color, ColorWheelArray.Length);
return ColorWheelArray[WrapColor(colorIndex + ColorWheelArray.Length/2)];
}
类似:
Color[] GetAnalogousColors(Color color)
{
int colorIndex = GetColorWheelIndex(color, ColorWheelArray.Length);
return new Color[] { color,
ColorWheelArray[WrapColor(colorIndex + 1)],
ColorWheelArray[WrapColor(colorIndex + 2)] };
}
,因为我不知道的单色我把它留给你的定义。 :)
编辑:如果你想让它与任何颜色搭配工作,那么我不是100%肯定,但我有一个想法。
该网站表示通过在RYB颜色空间中选取颜色(而不是C#使用的RGB颜色空间)来创建轮子。所以大概你可以计算出你的颜色对轮子上每种颜色有多'远'(通过转换为RYB和比较),然后使用我的函数来获得其他颜色。最后,将颜色和最接近的车轮颜色(在RYB颜色空间中)之间的差值添加到每个结果中,最后再转换回RGB值以存储为Color对象。
感谢您的帮助,它是伟大的。但是,我需要为每种颜色找到色彩和谐,但不仅仅是12.谢谢 – F0rc0sigan 2011-05-11 14:15:44
然后,你需要给我更多的东西继续下去。该页面不显示如何为其他颜色执行此操作。另请参阅我的编辑底部的答案。 – 2011-05-11 14:17:38
我也不知道,所以我在StackOverflow上问这个问题。 – F0rc0sigan 2011-05-11 14:31:49
- 1. 从特定颜色计算单色/补充/三色/类似
- 2. 交替三角形彩色背景
- 3. 黄色三角形信息
- 4. xcode 4.1黄色三角形?
- 5. 彩色jcombobox彩色项目和焦点
- 6. PyOpenGL奇怪的随机彩色三角形
- 7. matplotlib:使用fill_between来制作彩色三角形
- 8. 彩色的三维图
- 9. 从彩色hDC到单色hDC的BitBlt?
- 10. 彩色
- 11. Kinect彩色框架形式
- 12. OpenGL,如何将单色纹理设置为彩色形状?
- 13. 带白色边框的三角形
- 14. VS净参考用黄色三角形
- 15. [R包corrplot - 彩色的headMap和下三角变量名
- 16. Modifiying色彩与色彩平衡
- 17. 彩色阴影彩色窃贼
- 18. Matlab补丁 - 彩色3D打印格式
- 19. 色彩映射表红色色调
- 20. isAllowed为单个角色(不角色角色继承)
- 21. Web角色/员工角色/ VM角色?
- 22. javascript生成类似的随机颜色(着色器||色调||单色)
- 23. Cloudformation和角色......但主要是角色
- 24. Ansible类似的角色重构
- 25. 绘制带有彩色圆角边框的矩形形状
- 26. 黑色和白色是如何完成色彩转换的
- 27. 产生颜色三角
- 28. 覆盖彩色
- 29. PHP:彩色串
- 30. 彩色文本
如果你给我们一些你需要的和声定义,你可能会得到更多的答案。这样回答者只需要知道C#,而不是C#和色彩和声。 :) – 2011-05-11 09:16:49
我以为我给你定义颜色和声:三田,补码,类似,单色。或者我想念什么? – F0rc0sigan 2011-05-11 12:35:57
@ user604790。这些不是定义,只是一个不同颜色和谐的列表。我的意思是你要包括一个关于三角形的解释,补充是什么,类似是什么,单色是什么。 – 2011-05-11 12:37:54