public static function filterSimilarColors(PaletteInterface $palette, $requiredDifference = null) { $requiredDifference = $requiredDifference ?: 8; $distinctColors = []; foreach ($palette as $color) { $exists = false; foreach ($distinctColors as $dColor) { if (Color::equals($color, $dColor, $requiredDifference)) { $exists = true; break; } } if (!$exists) { $distinctColors[] = $color; } } return new Color\Palette\SimplePalette($distinctColors); }
function color_equals($color, $compareColor, $tolerance = null) { return Color::equals(color_get($color), color_get($compareColor), $tolerance); }