Сортировка точек в тригонометрическом порядке в трехмерном пространстве - PullRequest
0 голосов
/ 10 августа 2011

У меня есть три точки в трехмерном пространстве A, B, C.Точки не коллинеарны.Я хочу отсортировать точки таким образом, чтобы при их обходе я проходил треугольник ABC в тригонометрическом (против часовой стрелки) порядке.

Ответы [ 2 ]

2 голосов
/ 10 августа 2011

Вы должны определить, на какую сторону треугольника вы смотрите. Порядок, который против часовой стрелки (CCW) будет по часовой стрелке (CW), если смотреть с другой стороны треугольника.

Вы можете выбрать любой порядок ABC и затем вычислить перекрестное произведение (A-C) x (B-C), которое даст вам вектор, нормальный к плоскости треугольника. Направление, на которое он указывает (вверх или вниз), будет зависеть от выбранного вами порядка. Если это неправильный порядок, вы можете отменить заказ или поменять местами два пункта.

Ключ в том, чтобы выяснить, с какой стороны вы собираетесь его видеть, прежде чем говорить о направлении.

1 голос
/ 10 августа 2011

Поскольку у вас есть только 6 возможных заказов, я бы выбрал метод грубой силы: для каждого заказа проверяйте, удовлетворяет ли он вашему ограничению, и, если это так, выбирает его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...