2013-04-16 18 views
1

我需要分析SVG文件来标识连接的路径,嵌套形状等。有没有免费的C/C++库提供了分析SVG路径的方法 - 例如查找2条路径是否重叠,路径是否完全位于矩形内等等?我试图在网上搜索,但找不到任何近距离匹配。用于分析SVG路径的任何C/C++库?

+0

http://www.google.com –

回答

0

你可以像碰撞检测一样处理它:检查路径点重叠或在一个形状内使用数学/物理/游戏编程中使用的相同原理用于重叠/相交/外壳,你应该没问题。如果你需要更多的指针给我留言。

附录: 对于一个简单的有据可查的2D碰撞检测库我也许会看Box2D:免费的,流行的,有据可查;或者OZCollide不容易和我所见过的那些自由而轻松的握手。

在问候一般的碰撞检测那里有我一直在使用多年的一个网站,是一个方便的文档/知识库:RealTimeRendering

也有Corey O'Neils'scollision detection kit,然而这将需要你的端口相关的代码从ActionScript到C++。

最后GameDev有一个很好的链接,用于了解2D中的碰撞检测,它是一个名为reni2d的学习框架。

希望这会有所帮助!

+0

谢谢@GMasucci!是否有任何免费的C/C++库(不一定专用于SVG,但也可用于更通用的级别),可用于识别2个路径/形状是否重叠或相交?我对专业的C/C++来说很新,因此任何指向这些库的指针都会有所帮助。或者,如果您可以提供指向示例代码的指针(这些代码是更大型库(称为游戏库,我不能直接使用)的一部分),这样做也会有所帮助。 – so2

+0

关闭我的头顶我会说最简单的方法是在每一行中创建一个点坐标矢量,并将每个向量点在2d空间中的位置相互比较以确定邻近度:即 vLineOnePoints = pt (1,1),pt(1,2),pt(1,3)在世界坐标1,1 vLineTwoPoints = pt(2,1),pt(2,2),pt(2,3)在世界当我们检查这些坐标时,我们会发现两者都完全重叠。 我会寻找一个简单的图书馆来处理碰撞,但我总是写我自己的(他们在家里,我很伤心),所以请耐心等待,因为这需要我一些时间。 – GMasucci

+0

Hi @GMasucci - 如果您能够找到上述操作的简单库,请告诉我。再次感谢! – so2