代码之家  ›  专栏  ›  技术社区  ›  kotoko

如何围绕法线逆时针排列3个点

  •  3
  • kotoko  · 技术社区  · 14 年前

    我有3个随机点,需要相对于它们形成的平面的法线(其中一个)逆时针排列。

    所以问题是:我有点,我有法线——我如何逆时针排序?

    我见过 this post 关于使用极形,但不确定这是否是我想要的,以及我应该使用什么点。

    1 回复  |  直到 9 年前
        1
  •  6
  •   Stephen Canon    14 年前

    如果你还没有选择法线,那么无论你写三个点的顺序如何,它们都是逆时针排列的(相对于适当选择的法线)。

    如果你已经有了一个法线(让我们称之为n,并使用a、b、c表示点),看看 n*((b-a)x(c-a)) 如果它是正的,则(a,b,c)是逆时针的;如果是否定的,(a,c,b)。