Unity3d 裁剪库差异问题

Unity3d 裁剪库差异问题,unity3d,polygon,mesh,clipping,Unity3d,Polygon,Mesh,Clipping,我从此网站开始使用剪辑库: 我在团结工会工作 一切都很好,联合,交叉,差异。。。是的,不同的是,有一种情况,我不确定我是否做错了什么,或者算法不能正确处理。 我正在尝试获得差异A-B,它应该看起来像图2)中的差异,不幸的是,输出是网格A和网格B,如图1所示 我所做的: Clipper c = new Clipper(); c.AddPath(here goes the vertices of mesh A, polyType.Subject, true); c.AddPath(here goe

我从此网站开始使用剪辑库:

我在团结工会工作

一切都很好,联合,交叉,差异。。。是的,不同的是,有一种情况,我不确定我是否做错了什么,或者算法不能正确处理。

我正在尝试获得差异A-B,它应该看起来像图2)中的差异,不幸的是,输出是网格A和网格B,如图1所示

我所做的:

Clipper c = new Clipper();
c.AddPath(here goes the vertices of mesh A, polyType.Subject, true);
c.AddPath(here goes the vertices of mesh B, polyType.Clip, true);
c.Execute(ClipType.ctDIfference, a list of lists for my output,     PolyFillType.NonZero, PolyFillType.NonZero);
我已经尝试更改polyFillType,但它没有改变任何内容。我在这里征求你的意见:)

编辑: 我想要得到的(如图“预期结果”)是带孔的网格。 我实际得到的是两个元素的列表,这些列表的顶点与我作为输入提供的顶点完全相同,因此当我从这些顶点创建网格时,没有一个网格带有孔,而是一个网格覆盖另一个网格并进行Z形格斗。应该有一些功能,我可以创建一个洞的网格,但我不能设法找到它。正如我在GUIDEMO看到的这个图书馆的C版本,我看到了地图(可能是澳大利亚),中间有一个挖洞。

输入:顶点A(作为主题):(0,0)、(0,10)、(10,10)、(10,0)。 顶点B(作为剪辑):(2,8)、(6,8)、(6,2)、(2,2)。 输出完全相同:
List
这是一个2元素的列表,包含上面可以看到的两个列表。

我得到的剪辑解决方案是:

(((10, 10),(0, 10),(0, 0),(10, 0)), ((2, 2),(2, 8),(6, 8),(6, 2)))

注意两条路径的不同方向。这表明内部路径是一个到外部路径(多边形)的孔,具有非零或奇偶填充规则。

如果您显示从剪裁操作中获得的结果坐标,然后显示您期望的坐标,这将有所帮助。我编辑了我的帖子,以便您可以更清楚地看到该点。谢谢你的时间:)我有一个相同的问题(unity 3d c#),你找到解决方案了吗?clipperlib是实现“C”顶点的正确工具吗?没错,现在的问题是如何获得该孔?我是这个图书馆的新手(可能学习了两个小时),你能告诉我我迫切需要的解决方案吗?你在吗?:)这里真的需要同样的问题!你找到解决办法了吗?我也被困在“如何获得孔”部分,我知道解决方案会返回两个快速多边形,一个表示轮廓,另一个表示孔,库能否只返回一个带孔的网格?