На первом изображении красная сфера находится в центре, а остальные сферы раскрашены по порядку.
На втором рисунке показано положение этих сфер в неправильном порядке.


private static Vector2[] SortClockwise(List vertices)
{
// calculate center
Vector2 center = Vector2.zero;
for (int i = 0; i < vertices.Count; i++)
{
center += vertices;
}
center /= vertices.Count;
// order by the angle to center
return vertices.OrderBy(point => Math.Atan2(point.x - center.x, point.y - center.y)).ToArray();
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... -clockwise
Мобильная версия