// ****************************************************************** private bool IsFarEnoughFromExistingColor(Color c, double distanceMin) { foreach (ColorRatio coloRatio in UsedColors) { // double distance = ColorSpaceHelper.GetColorDistance(c, coloRatio.Color); // This is a lot better differences between color with CIELab calc. double distance = ColorSpaceHelper.GetColorDistanceCIELab(c, coloRatio.Color) / 100; if (distance / coloRatio.KeepAwayRatio < distanceMin) { return(false); // Too close } } return(true); }