草庐IT

computational-geometry

全部标签

c++ - 为什么 boost.geometry.index.rtree 比 superliminal.RTree 慢

我测试了boost.geometry.index.rtree(boost1.59www.boost.org)和superliminal.RTree(http://superliminal.com/sources/sources.htm#C_Code)。令我惊讶的是,superliminal.RTree比boost.geometry.index.rtree更快。环境设置将相同的空间索引数据添加到superliminal.RTree和boost.geometry.index.rtree对象。测试相同的空间索引查询100次并获得消耗的时间。GCC版本是“gccversion4.4.62011

Introducing Arm Confidential Compute Architecture

快速链接:.👉👉👉个人博客笔记导读目录(全部)👈👈👈付费专栏-付费课程【购买须知】:【精选】ARMv8/ARMv9架构入门到精通-[目录]👈👈👈—适合小白入门【目录】ARMv8/ARMv9架构高级进阶-[目录]👈👈👈—高级进阶、小白勿买【加群】ARM/TEE/ATF/SOC/芯片/安全-学习交流群—加群哦

c++ - 旋转任意角度后,如何找到多边形在 X 轴上的最小可能投影?

给定二维多边形的顶点,我必须找到多边形在X轴上的最小可能投影。我可以任意角度旋转多边形。起初我想到的是最小的情况,多边形的至少一条边将与X轴对齐,这是不正确的。多边形可以是凹的也可以是凸的。 最佳答案 您正在寻找的是所谓的“旋转卡尺算法”。https://en.wikipedia.org/wiki/Rotating_calipers关于此算法的维基百科页面甚至有针对您的问题的伪代码。https://en.wikipedia.org/wiki/Rotating_calipers#Minimum_width_of_a_convex_po

'word2vec'对象没有属性'compute_loss'

我想知道我的W2V型号的损失,然后升级gensim到最新版本,但仍然无法使用该参数compute_loss,我想念什么吗?看答案Gensim没有发布版本(2017年6月2.2.0)具有该功能。这是一个正在进行的工作develop分支,应该出现在以后的版本中。

c++ - OpenCL:是否可以使用模板化对象作为 Boost::compute 的内核参数?

我的内核函数签名如下:templatevoidkernel(constType1arg1,constType2arg2,Field*results){//Sisknownatcompiletime//Fieldmightbefloatordouble//Type1isanobjectholdingdataandalsomethods//Type2isanobjectholdingdataandalsomethods//Thecomputationstarthere}我知道可以使用c++特性的一个子集来使用extension编写内核到AMD的OpenCL实现,但生成的代码仅限于在AMD卡

判断两段是否相交的C++程序

我最近在研究计算几何,我正试图找到一种方法来检查两条线段是否相交。我想我可以使用逆时针方向(简称CCW)来确定。到目前为止,这是我的代码:structpoint{doublex,y};doubleCCW(pointa,pointb,pointc){return(b.x-a.x)*(c.y-a.y)-(b.y-a.y)*(c.x-a.x);}intintersect(pointa,pointb,pointc,pointd){return(CCW(a,b,c)*CCW(a,b,d)上面的代码适用于我输入的测试用例,它的可读性很好,也很容易实现。但是在网上搜索后,我发现了另一种解决线段相交问

c++ - Boost Geometry/intersection() 似乎返回不一致的结果

我有一个适用于BoostGeometry的3Dvector作为2D点和环:BOOST_GEOMETRY_REGISTER_POINT_2D(Vector3,float,cs::cartesian,x,y)BOOST_GEOMETRY_REGISTER_RING(std::vector)然后:画一些非凸多边形(环)绘制线段,切割非凸多边形并将其一分为二(较小的通常是三角形)在线段上镜像较小的2个新多边形结果是两个多边形,它们重叠并且有1个切边。然后我检查两个多边形的交点。在15%的情况下,相交结果是空的,这是一个惊喜(较小的多边形可以有面积1.0f..10.f,所以它不是一个极端情况)s

c++ - 如何确定 (x, y) 点是否在由边界点列表定义的多边形内

我有一大堆点,它们定义了一些(不一定是凸的)形状的边界。然后我有一些查询点(x,y)并且我想确定(x,y)是否在我的点边界定义的区域内。所以,很简单的问题。如何确定查询点是否在我的边界点形成的形状内?是否有一个很好的boost模块?我正在查看boost::geometry但还没有找到任何东西.. 最佳答案 您似乎在寻找within,不是吗?http://www.boost.org/libs/geometry/doc/html/geometry/reference/algorithms/within/within_2.html他们在页

c++ - 从 2D C 列表创建 boost.geometry.model.polygon

假设我有以下数据集double*data=(double*)malloc(sizeof(double)*100*2);for(ii=0;ii我如何根据这些数据创建boost多边形?谢谢 最佳答案 一个完整的例子#include#include#include//Sometypedefsnamespacebpl=boost::polygon;typedefbpl::polygon_dataPolygon;typedefbpl::polygon_traits::point_typePoint;intmain(){//YourC-styl

c++ - 初学者的 CGAL 教程

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion谁能推荐一套适合初学者的CGAL教程?我曾尝试阅读文档,但即使作为一个经验丰富的C++程序员,它对我来说似乎也很密集。因此,我试图通过解决简单的问题来学习,但即使那样也令人困惑。例如,我现在特别想解决的问题如下:从3D点云中找到凸包,然