В трехмерном пространстве у меня есть неупорядоченный набор, скажем, из 6 точек; примерно так:
(A)*
(C)*
(E)*
(F)*
(B)*
(D)*
Точки образуют трехмерный контур, но они неупорядочены. Для неупорядоченных я имею в виду, что они хранятся в
unorderedList = [A - B - C - D - E - F]
. Я просто хочу реорганизовать этот список, начиная с произвольного места (скажем, точки A) и перемещаясь по точкам по часовой стрелке или против часовой стрелки. Примерно так:
orderedList = [A - E - B - D - F - C]
или
orderedList = [A - C - F - D - B - E]
Я пытаюсь реализовать алгоритм как можно проще, так как упомянутый набор точек соответствует N-кольцевой окрестности каждой вершины на сетке из ~ 420000 точек, и Я должен сделать это для каждой точки на сетке.
Некоторое время назад было аналогичное обсуждение относительно точек в 2-D, но сейчас мне не ясно, как отойти от этого подхода. к моему трехмерному сценарию.