searching harmonious colors for current color(为当前颜色寻找和谐的颜色)
本文介绍了为当前颜色寻找和谐的颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一种颜色:祸不单行(#aeeb12)或rgb(1742318)。 我需要为这个颜色找两个相似的颜色。 有没有什么数学公式可以编程来做呢? 图片如下:
推荐答案
根据您在评论中提供的站点(sessions.edu/color-culator) 您对颜色使用的是类似图案:当您转换RGB颜色HSB/HSV表示法时,我将您重定向到此站点以了解此系统表示颜色的方式http://colorizer.org/。 相似颜色是一个三和弦:Left One MainOne Right One 在HSB表示中,我这样定义主要的一个:[h,S,B]
- H色调是度角度
- S饱和度在0和1之间浮动
- B亮度/值在0和1之间浮动
在Java中,如果您使用的是java.awt.color API,则色调是浮点值(介于0和1之间),因此只需将角度除以360.
下面是如何在Java中获得此结果的代码片段:
double anglerotation = 1d / 12; // 30 /360
Color mainColor = new Color(174, 235, 18);
float[] hsbLeftColor = Color.RGBtoHSB(mainColor.getRed(), mainColor.getGreen(), mainColor.getBlue(), null);
hsbLeftColor[0] -= anglerotation;
Color leftColor = new Color(Color.HSBtoRGB(hsbLeftColor[0], hsbLeftColor[1], hsbLeftColor[2]));
float[] hsbRightColor = Color.RGBtoHSB(mainColor.getRed(), mainColor.getGreen(), mainColor.getBlue(), null);
hsbRightColor[0] += anglerotation;
Color rightColor = new Color(Color.HSBtoRGB(hsbRightColor[0], hsbRightColor[1], hsbRightColor[2]));
这篇关于为当前颜色寻找和谐的颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:为当前颜色寻找和谐的颜色
基础教程推荐
猜你喜欢
- Maven:无效的目标版本:10 2022-01-01
- 在java中使用xpath和selenium解析HTML表格数据 2022-01-01
- 将 Windows 证书导入 Java 2022-01-01
- 控制台应用程序中的 Java 键盘输入解析 2022-01-01
- 如何在相机中应用自定义滤镜 [Surfaceview 预览]. 2022-01-01
- 在springboot中如何给mybatis加拦截器 2023-04-29
- Java ECDSAwithSHA256 签名长度不一致 2022-01-01
- doFilter()是在servlet的工作完成之前还是之后执行的? 2022-01-01
- JPA惰性列表上的流 2022-01-01
- 将 double 转换为 Int,向下舍入 2022-01-01
