решил сделать заливку с отблеском....смог сделать только для чёрного (и некоторых других...например, красного (0xFF0000)) цвета..((
| Код | private static void drawGlassRect(Graphics gr, int color, int x1, int y1, int w, int h) { gr.setColor(color); h += 2; gr.fillRect(x1, h/2, w, h/2);
boolean canChangeR = ((color >> 16) & 0xFF) < 255, canChangeG = ((color >> 8) & 0xFF) < 255, canChangeB = (color & 0xFF) < 255; int r = canChangeR ? 224 : 255, g = canChangeG ? 224 : 255, b = canChangeB ? 224 : 255;
int delta = 147*2/h; for(int y = y1; y < h/2; y++) { gr.setColor(r, g, b); gr.drawLine(x1, y, w, y); if (canChangeR) r -= delta; if (canChangeG) g -= delta; if (canChangeB) b -= delta; } }
|
есть идеи, как адаптировать под другие цвета? |