gpt4 book ai didi

c++ - 使用 GPC 或 Clipper 计算多边形相交面积

转载 作者:行者123 更新时间:2023-11-30 04:18:13 29 4
gpt4 key购买 nike

我有一个 2D 粒子系统,其中粒子表示为椭圆。我需要计算椭圆 - 椭圆重叠区域,但这是一个很难分析的问题 Ellipse-Ellipse Overlap .我现在将我的椭圆表示为 20 边形,以便它们被“多边形化”,并且我正在使用 Boost.Geometry 进行必要的计算。

但是,我经常从 Boost.Geometry 得到一个异常:boost.geometry overlay invalid input exception。我搜索了一下,发现这是 boost.Geometry 的一个已知错误,从 1.53 版本开始还没有修复。甚至即将发布的 v1.54 的文档也没有说明如何解决这个问题。

我偶然发现了 ClipperGPC - General Polygon Clipper Library .他们似乎做我想做的事,但他们只输出 bool 结果。有谁知道是否有办法用这些库输出计算出的交叉点的面积?我想由于交点作为某种多边形存储在内存中,我可以使用三角测量或其他一些方法来计算面积。任何指针将不胜感激!

Boost overlay 异常在 Win7 x64 下的 MSVC 2010 和 2012、Linux Mint 14 下的 MinGW 和 Qt 4.8.1 中是一致的。

最佳答案

看来你对 Clipper 和 GPC 的看法是错误的“它们只输出 bool 结果”。这两个库都计算相交多边形 - 例如,查看 Clipper 页面上带有图片的代码片段。

关于c++ - 使用 GPC 或 Clipper 计算多边形相交面积,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16566172/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com