本文整理汇总了C#中System.Drawing.Color.Distinct方法的典型用法代码示例。如果您正苦于以下问题:C# Color.Distinct方法的具体用法?C# Color.Distinct怎么用?C# Color.Distinct使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Drawing.Color
的用法示例。
在下文中一共展示了Color.Distinct方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetModeOfColorArray
/// <summary>
/// Gets the mode of a Color[]
/// </summary>
/// <param name="colors">Array of Colors</param>
/// <returns>Index of mode, -1 if non found</returns>
private int GetModeOfColorArray(Color[] colors)
{
Color[] distinctcolors = colors.Distinct().ToArray();
int[] countcolors = new int[distinctcolors.Length];
int highest = 1;
int highestindex = -1;
var mode = false;
//count how many time distinct values are in colors
for (int i = 0; i < distinctcolors.Length; i++)
{
foreach (Color t in colors)
{
if (t == distinctcolors[i])
countcolors[i]++;
}
}
//check what the highest value is
for (int i = 0; i < countcolors.Length; i++)
{
if (countcolors[i] > highest)
{
highest = countcolors[i];
highestindex = i;
mode = true;
}
}
if (mode)
return Array.IndexOf(colors, distinctcolors[highestindex]);
return -1;
}