1

关于偏移操作的ClipperLib文档在先决条件中说:

  1. 闭合路径的方向必须一致,使得外部多边形共享相同的方向,并且任何孔都具有相反的方向(即非零填充)。开放路径必须以封闭的外部多边形为方向

(强调我的)

开放路径的方向定义是什么?

4

1 回答 1

0

方向的定义仅对封闭路径有意义,这是文档中的错字。

此外,如果输入未排序和定向(即,您要偏移的区域被定义为假设奇偶填充规则的闭合循环的集合,并且不知道哪些循环是孔,哪些是边界),解决方案是执行操作分两步

  1. 将所有循环的 x-or 计算为布尔运算
  2. 计算结果的偏移量

这是可能的,因为 clipperlib 操作的结果总是被排序和定向的。

于 2020-09-24T07:54:55.967 回答