3D ポイントのリストがあります。私はそれらがすべて同一平面上にあることを知っています。それらを並べ替えたい中心と、ポイントと中心が存在する平面の法線があります。あるポイントが別のポイントの右 (または左) であるかどうかをテストするにはどうすればよいですか?
2Dでそれを行う方法を理解しています。ポイントを時計回りに並べ替えますか? 2 次元の点を比較する方法を説明します。したがって、すべてのポイントと中心をローカルの 2D 平面座標に変換する必要があると思います。どうやってやるの?この問題を解決する最も効率的な方法はありますか?
//from link:
// a and b are points
//center is the center around which to determine order
//int num = (a.x-center.x) * (b.y-center.y) - (b.x - center.x) * (a.y - center.y);
//if num=0 then they're on the same line
//if num <0 or num>0 then a is to the left or right of b
3D 共平面点を処理するためにこれをどのように適応させますか?