首页 > 解决方案 > Clipperlib中开放路径“方向”的含义是什么?

问题描述

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

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

(强调我的)

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

标签: clipperlib

解决方案


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

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

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

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


推荐阅读