
| |||
![]() Alguien puede ayudarme??? kiero manejar en una clase de java colores m generados aleatoriamente , pero estos colores generados no se deben parecer unos con otros, el fin es generar un arreglo de clases color, sin que se parescan unos con otros , no se si me explico?? ![]() |
| |||
Respuesta: Ayuda con Clase COLOR en java Un color en Java esta formado por RGB, al fin y al cabo, sin numeros hexadecimales, se me ocurre, que los pases de decimal y restes entre los dos colores, si entre ellos hay una diferencia, pues la que tu creas que es parecido el color descarta eso... Para generar numero aleatorios, Math Random... Saludos! |
| |||
![]() pues... hice algo asi... int x=0; int y=0; int r=0; int g=0; int b=0; Random ram=new Random(); Color color; NumberFormat nf=NumberFormat.getInstance(); nf.setMinimumIntegerDigits(2); nf.setMaximumIntegerDigits(2); List<Integer> red=new ArrayList<Integer>(); for(x=0;x<CalendarioAcotacion_ls.size();x++){ ram=new Random(); for(y=0;y<red.size();y++){ if(ram.nextInt(255)==red.get(y)){ ram=new Random(); } } red.add(ram.nextInt(255)); } List<Integer> green=new ArrayList<Integer>(); for(x=0;x<CalendarioAcotacion_ls.size();x++){ ram=new Random(); for(y=0;y<green.size();y++){ if(ram.nextInt(255)==green.get(y)){ ram=new Random(); } } green.add(ram.nextInt(255)); } List<Integer> blue=new ArrayList<Integer>(); for(x=0;x<CalendarioAcotacion_ls.size();x++){ ram=new Random(); for(y=0;y<blue.size();y++){ if(ram.nextInt(255)==blue.get(y)){ ram=new Random(); } } blue.add(ram.nextInt(255)); } for(x=0;x<CalendarioAcotacion_ls.size();x++){ color=new Color(red.get(x),green.get(x),blue.get(x)); String val= Integer.toHexString(color.getRGB() & 0x00ffffff ).toString(); if (val.length()<6)val="0" + val; CalendarioAcotacion_ls.get(x).setColor("#" + val ); } de esta forma ya no se duplican los colores...... pero.. ahora lo que quiero es buscar una forma que que siempre se genern los mismos colores... hay alguna forma???? ![]() |