Java 为每个opengl点生成唯一且完全不同的颜色的方法

Java 为每个opengl点生成唯一且完全不同的颜色的方法,java,opengl,colors,Java,Opengl,Colors,作为使用Java和OpenGL的一个演示,我试图一次渲染大约500个数据点,用于分层集群操作。为了显示它的步骤,我想给各个点涂上颜色,这样它们很容易区分,这样当簇合并时,很明显哪一个正在合并 我用过这个列表。但在分离出难以区分的颜色和对我的白色背景来说太浅的颜色后,我只剩下不到50种 有没有一种方法可以创造出独特、易于辨别的颜色?我需要大约500个。如果可能的话,我更喜欢一种方法,这样我就不必手工编码(或awk/sed)它们的列表 经过一些实验,这个问题似乎相当困难,完全不可能解决。在对每个簇进

作为使用Java和OpenGL的一个演示,我试图一次渲染大约500个数据点,用于分层集群操作。为了显示它的步骤,我想给各个点涂上颜色,这样它们很容易区分,这样当簇合并时,很明显哪一个正在合并

我用过这个列表。但在分离出难以区分的颜色和对我的白色背景来说太浅的颜色后,我只剩下不到50种

有没有一种方法可以创造出独特、易于辨别的颜色?我需要大约500个。如果可能的话,我更喜欢一种方法,这样我就不必手工编码(或awk/sed)它们的列表


经过一些实验,这个问题似乎相当困难,完全不可能解决。在对每个簇进行编号并希望正确呈现数字之前,我想问一下这是否可行,以及实现这一点的最佳方法是什么。

您可以尝试以下方法:,但我不知道它是否适用于500。请使用颜色格式。在循环中线性更改色调值,并将每种颜色转换为RGB。通常,除了颜色(而不是颜色)之外,还应使用其他方法来区分项目。例如,你是否考虑使用编号标签,形状,阴影等,除了颜色来区分你的500点?@彼得罗。形状可能是一种选择。在OpenGL中,文本呈现也可能很难处理(对于这个特定的示例,不是一般情况)。着色也是可能的-谢谢!我还将尝试阅读HSL和HSV。您可以尝试以下内容:,但我不知道它是否适用于500。请使用颜色格式。在循环中线性更改色调值,并将每种颜色转换为RGB。通常,除了颜色(而不是颜色)之外,还应使用其他方法来区分项目。例如,你是否考虑使用编号标签,形状,阴影等,除了颜色来区分你的500点?@彼得罗。形状可能是一种选择。在OpenGL中,文本呈现也可能很难处理(对于这个特定的示例,不是一般情况)。着色也是可能的-谢谢!我还将尝试阅读HSL和HSV。