繁体   English   中英

Java中颜色的散列函数

[英]Hash function for colors in Java

我需要通过时间来表示一系列元素。 出于设计目的,它们中的每一个都应该具有一种颜色,以便更容易识别每一个。 重点是,如果人们不能理解它们之间的颜色差异,那么每个元素的颜色都没有意义。

元素唯一固定的属性是它们的ID。 这个ID被认为是从一个元素到另一个元素的不同,但这不确定。

我寻找的是一个基于数字ID的哈希函数返回一个HEX颜色(网页格式,例如#f62035),它与之前的ID和下一个ID 有很大不同。 此外,由于显示元素的背景是黑色,因此HEX颜色不能太暗。


例:

Element ID: 12  
Element ID: 13

hash(12) = #f46600  
hash(13) = #5aa9aa

恕我直言,并且根据你需要多少种不同的颜色,我认为你最好的解决方案是建立一个颜色列表,比如100种不同的颜色变化,然后按你想要的顺序对它们进行排序,然后你可以按顺序从这个列表中分配它们作为你的颜色,当你到达列表的末尾,你可以重新开始。

这个解决方案不具备可扩展性,但你必须记住,只有很少的颜色,人类可以告诉它们是不同的,适合你的设计。

要创建此列表,也许您可​​以编写一个不同的java应用程序来翻转颜色选择器,这样您就可以选择颜色并且代码会为您创建列表

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM