如何在Python中生成没有领结(交叉点)的随机多边形

时间:2014-07-26 11:02:10

标签: python math polygon intersection

如何生成具有随机数量的边的多边形,这些边没有Python中的蝴蝶结/交叉点。

1 个答案:

答案 0 :(得分:2)

您可以生成普通多边形,然后撤消每个领结。

领结看起来像:

          b
     a    _____
_____    /
     \  /
      \/
      /\___
_____/ d 
     c 

当您遇到领结时,请更换从a到d和从c到b的两侧,从a到b,从c到d。

有几种方法可以识别领结的存在,最简单的可能是a,b,c,d是一个领结,如果长度ad + cb的总和大于ab + cd。