问题标签 [boost-geometry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何提取Boost库中的referring_segment的点
我在 Boost 中有多边形,我正在尝试提取多边形的段,然后保存用于创建段的点。我在 C++ 中使用 Boost 库。
我怎样才能做到这一点 ?
c++ - 具有相交多边形边信息的多边形和线段的相交
我正在尝试获取多边形和线段的交集。我可以看到我可以通过 boost 几何轻松解决这个问题。虽然,在计算交点时我需要更多信息,但我需要知道多边形的哪一条边与线段相交。谁能给我一个简单的方法来获取这些信息?...
非常感谢
阿文印陀
c++ - 编译 boost::geometry 多边形
我正在尝试使用 boost::geometry 多边形类来计算交叉点及其面积。我有自己的 3d piont 类,我用它定义了一个多边形。但是,当我尝试使用 area() 或 intersection() 时,会出现许多编译错误。
我知道我缺少一些定义或一些额外的 REGISTER 宏,但我不知道是哪个。
我正在使用 boost 1.54、VC++ 2010 express。
下面是一个不能编译的简单程序。我如何使它编译?
编译错误:
c++ - Boost几何:从许多点组成多边形
我正在编写物理模拟代码,在完成动态部分后,我想使用一些几何工具来分析我的系统。这些有趣的部分是形成不同闭环(或多边形)的几个点簇。我参数化的方式使得(至少对我而言)很难将这些循环彼此分开。我对使用 boost 几何库对这些数据进行几何操作很有信心,这就是为什么我正在考虑将所有这些点发送到一个 boost 几何对象(或简单的点向量)中形成多边形,我正在寻找一种分离它们的方法,使用相距太远的点不能是同一个多边形的一部分,然后形成几个多边形,我将分别操作。
到目前为止,我还没有操纵太多的 boost 几何,而且我不知道在其中实现类似的东西是多么容易/困难。是否有一些默认功能可以很好地用于这些任务。
我给你一张我想让我的程序做什么的图片:
c++ - 提升几何/空间查询形状
我目前正在使用 boost 几何/空间索引库,以便对 3d 边界框执行范围查询。例如,我可以获得与查询边界框重叠的所有边界框的列表。
文档(http://www.boost.org/doc/libs/1_54_0_beta1/libs/geometry/doc/html/geometry/spatial_indexes/queries.html)显示,至少在 2d 中可以使用多边形而不是将边界框作为查询对象。是否也可以在 3d 中使用更高级的查询形状?我正在考虑诸如定向边界框、金字塔或相机平截头体之类的对象。如果是这样:我该怎么做/我在哪里可以找到一个例子?
谢谢
c++ - Boost::Geometry 如何获取多边形内点的坐标?
我正在编写一个函数,使用 boost::geometry 库给出先前定义的多边形的直径。
该直径定义为其两个点之间的最大距离。因此,我正在编写一个双循环,计算每对点的每个距离,但我不知道如何访问多边形内的点坐标,甚至是点对象,然后使用两个点之间的距离函数通过图书馆(顺便说一句,哪个应该更快?)。
在查看了多边形上的 Boost 文档后,我尝试了 my_polygon.PointList 没有成功......
最后我的解决方案是使用 Barend 提案的修改版本:
我只是抑制了计算两次相同距离的冗余;
performance - 调试模式下的 Boost::geometry::intersection 性能
我对调试配置中的boost::geometry::intersection性能有疑问。我项目的一部分有很多(数百万)多边形 - 多边形类型的交叉点。与发布相比,它的调试速度非常慢。所以在这个“交叉点”部分之后,我需要等待很多时间来调试问题。在调试模式下我能做些什么来加快它的速度?
VS2010中简单Win32控制台项目代码示例:
在 Debug 中需要 15 秒,在 Release 中需要 0.1 秒。而这里只有 5000 个多边形交叉点。对于数百万人来说,它会慢得多。
c++ - Boost.geometry 实现多边形概念
我正在尝试(但失败)在 Boost.Geometry 中实现多边形概念。我已经成功地实现了一个点和环概念:
现在我正在尝试将 Polygon 类定义为:
我知道我需要将多边形标签添加到此类中,但是我找不到任何明确的示例,并且我遇到的错误表明了更多问题。如果有人可以提供实现该概念的工作示例的链接,我想我可以从那里找出我的问题。
c++ - 如何在 boost::geometry 中找到 2 个多边形的接触长度?
我在 boost::geometry 中有许多多边形,并且想从一个多边形中找到与第一个多边形具有最长公共边界的特定邻居。多边形完全相互接触,因此boost::geometry::disjoint
返回 false,但以下代码始终返回周长 0:
我怎样才能找到共同的“边界”,即两个多边形的接触长度?
c++ - Using boost geometry to check if two lines have an intersection
Is it possible to use boost::geometry to check whether two line segments (each given by two points in 2D) intersect each other? If this is possible, does boost::geometry allow to check also for special cases such as that only one point is (numerically) on the other line, or that both lines are equal?