@Override public ImageInfo createDefaultImageInfo(double[] histoSkipAreas, ProgressMonitor pm) { final IndexCoding indexCoding = getIndexCoding(); if (indexCoding == null) { return super.createDefaultImageInfo(histoSkipAreas, pm); } final int sampleCount = indexCoding.getSampleCount(); Random random = new Random(0xCAFEBABE); ColorPaletteDef.Point[] points = new ColorPaletteDef.Point[sampleCount]; for (int i = 0; i < sampleCount; i++) { String name = indexCoding.getSampleName(i); int value = indexCoding.getSampleValue(i); final Color color = new Color(random.nextFloat(), random.nextFloat(), random.nextFloat()); points[i] = new ColorPaletteDef.Point(value, color, name); } return new ImageInfo(new ColorPaletteDef(points, points.length)); }