El enfoque obvio es simplemente convertir el ID en un color (por ejemplo, 8 bits más bajos son el azul, los 8 bits siguientes son verdes, los 8 siguientes son rojos, deje 8 bits, pero estoy seguro de que puede averiguarlo ;-)
Suponiendo que esto no funciona (cos se termina con una paleta de colores abrasador. utilizar una matriz (o tabla hash) para hacer un mapeo de identificadores de colores
Si está preocupado que hay demasiadas identificaciones, entonces podría aplicar algo de hash a la ID y usarlo como clave en el mapeo "id to color". En este caso, efectivamente está diciendo que una identificación siempre tiene un color, pero un color puede ser utilizado por muchos ID.
¿Tiene algún código (o pseudocódigo) escrito hasta el momento? – summea
¿Qué hay de la división de bits? Bit0-> Bit7 de R, Bit1-> Bit7 de G, Bit2-> Bit7 de B, Bit3-> Bit6 de R, ... aunque es complicado, da colores muy diferentes, siempre que el espacio de ID no sea demasiado grande. –