|
|
@ -180,9 +180,13 @@ public class GradientBar extends JComponent implements UIObserver,ColorSelectabl |
|
|
|
} |
|
|
|
} |
|
|
|
float[] dist = new float[list.size()]; |
|
|
|
float[] dist = new float[list.size()]; |
|
|
|
for (int i = 0; i < list.size(); i++) { |
|
|
|
for (int i = 0; i < list.size(); i++) { |
|
|
|
dist[i] = (float) ((list.get(i).getX() - 4) / (max - 4)); |
|
|
|
float value = (float) ((list.get(i).getX() - 4) / (max - 4)); |
|
|
|
|
|
|
|
if (0 <= value && value <= 1) { |
|
|
|
|
|
|
|
dist[i] = value; |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
dist[i] = value < 0 ? 0 : 1; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
dist = correctDist(dist); |
|
|
|
|
|
|
|
LinearGradientPaint paint = new LinearGradientPaint(start, end, dist, c); |
|
|
|
LinearGradientPaint paint = new LinearGradientPaint(start, end, dist, c); |
|
|
|
|
|
|
|
|
|
|
|
g2.setPaint(paint); |
|
|
|
g2.setPaint(paint); |
|
|
@ -194,17 +198,6 @@ public class GradientBar extends JComponent implements UIObserver,ColorSelectabl |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* 确保dist在0-1之间 |
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
public float[] correctDist(float[] dist){ |
|
|
|
|
|
|
|
if (dist.length == 2) { |
|
|
|
|
|
|
|
dist[0] = dist[0] < 0 ? 0 : dist[0]; |
|
|
|
|
|
|
|
dist[1] = dist[1] > 1 ? 1 : dist[1]; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return dist; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 状态改变 |
|
|
|
* 状态改变 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|