Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ boost DE-9-IM结构可用吗_C++_Boost_Boost Geometry - Fatal编程技术网

C++ boost DE-9-IM结构可用吗

C++ boost DE-9-IM结构可用吗,c++,boost,boost-geometry,C++,Boost,Boost Geometry,我想使用来加速对多边形内的点的调用,因为多边形可能会被多次使用。我知道de9im有这个功能,但我似乎不知道boost中的类是如何工作的(geometry/strategies/intersection_result.hpp)。有人知道这个类是否真的是函数类吗?如果是的话,他们可以提供一个简单的例子来查询包含点的多边形 编辑:我将boost geometry library与JTS进行比较,JTS有一个准备好的geometry类,在这一点上,我不是100%认为使用DE-9IM是允许预计算的,但我仍

我想使用来加速对多边形内的点的调用,因为多边形可能会被多次使用。我知道de9im有这个功能,但我似乎不知道boost中的类是如何工作的(geometry/strategies/intersection_result.hpp)。有人知道这个类是否真的是函数类吗?如果是的话,他们可以提供一个简单的例子来查询包含点的多边形


编辑:我将boost geometry library与JTS进行比较,JTS有一个准备好的geometry类,在这一点上,我不是100%认为使用DE-9IM是允许预计算的,但我仍然想知道boost是否有这个功能。

我不完全确定到底是什么问题

DE9IM是一种用于描述几何对象空间关系的模型。有关更多信息,请参阅

我假设您正在寻找一种方法来表示点、多边形以及如何检查其中一个是否在另一个内。如果是这样的话,那么是的,Boost。几何当然支持这一点,还有更多。例如,要检查点是否位于多边形内,可以使用:

  • boost::geometry::model::point表示点
  • boost::geometry::model::polygon表示多边形
  • 函数检查空间关系
您可以在文档中找到更多信息:

例如,在本页底部:
您可以找到一个示例,演示如何创建一个点,从wkt字符串加载多边形,并检查一个多边形是否在另一个多边形内。

我不完全确定到底是什么问题

DE9IM是一种用于描述几何对象空间关系的模型。有关更多信息,请参阅

我假设您正在寻找一种方法来表示点、多边形以及如何检查其中一个是否在另一个内。如果是这样的话,那么是的,Boost。几何当然支持这一点,还有更多。例如,要检查点是否位于多边形内,可以使用:

  • boost::geometry::model::point表示点
  • boost::geometry::model::polygon表示多边形
  • 函数检查空间关系
您可以在文档中找到更多信息:

例如,在本页底部:
您可以找到一个示例,演示如何创建一个点,从wkt字符串加载多边形,并检查一个多边形是否在另一个多边形内。

是的,我发现de-9im不是我需要的,但boost geometry是否有类似于准备好的几何体的功能,其中数据结构经过预计算,以更快地提供某些计算,我已经知道如何调用函数fineNo中的normal,但是我不知道你在想什么样的预计算。你能给出一个例子或一些链接吗?好的,如果你有大量的多边形,你可以建立一个空间索引来存储这些多边形及其ID的边界框。您可以执行一次,然后使用它查找()中应检查哪些多边形。Boost.Geometry也支持这一点。例如,检查这一点:已经在使用rtree了,我只问了这个问题,因为JTS在中使用准备好的几何体实现
boost::geometry::in
,而JTS在javaBoost中。几何体没有准备好的几何体概念。最明显的做法是(我确信这是在JTS中完成的)计算多边形的边界框并首先进行检查。是的,我发现de-9im不是我需要的,但boost geometry是否有类似于准备好的几何体的东西,其中预计算数据结构以更快地提供某些计算,我已经知道如何调用函数fineNo中的normal,但是我不知道你在想什么样的预计算。你能给出一个例子或一些链接吗?好的,如果你有大量的多边形,你可以建立一个空间索引来存储这些多边形及其ID的边界框。您可以执行一次,然后使用它查找()中应检查哪些多边形。Boost.Geometry也支持这一点。例如,检查这一点:已经在使用rtree了,我只问了这个问题,因为JTS在中使用准备好的几何体实现
boost::geometry::in
,而JTS在javaBoost中。几何体没有准备好的几何体概念。最明显的做法是(我确信这是在JTS中完成的)计算多边形的边界框并首先进行检查。