问题标签 [cgal]
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++ - 高阶 voronoi 图
是否有任何用于构建高阶 voronoi 图的 C/C++ 库?AFAIK,CGAL 仅支持普通的 voronoi 图。
c++ - 在 C++ 中的进程之间共享 CGAL 的几何图形
我正在寻找在进程之间发送 CGAL 几何的最快方法(C++)。假设我们有 2 个进程 - A 和 B。进程 A 正在生成几何图形,进程 B 正在显示它。我想以最快的方式连接它们。几何形状为 CGAL 多面体类型。
我知道我可以使用共享内存,但是我遇到了一些问题:
- 当我想将几何图形从进程 A 复制到共享内存时,我可以使用流式多面体到/从 OFF 格式,但我对此不感兴趣,因为转换到这种格式对于我的目的来说太慢了。
- 我可以创建共享内存并使用“placement new”在共享内存中创建我的对象并克服流式传输和转换的开销,但是我无法通过内部多面体函数进一步控制内存分配。(例如,当使用 Polyhedron_incremental_builder_3 添加新顶点时,我无法指定它应该放置在内存中的确切位置 - 我可以调用 B.add_vertex( Point( 0, 0, 0)); 并且在该方法中处理内存分配内部)
有没有办法在共享内存的特定位置创建对象并确保它及其动态结构将“存在”在该内存中?
或者也许还有另一种在两个进程之间共享动态数据(即半边结构)的快速方法?
c++ - How to allocate CGAL's Halfedge struture in shared memory?
I want to continue my previous question which was misunderstood as related to 2D geometry and as a result I get no satisfying answer (Share CGAL's geometry between processes in C++) and ask it once again, but this time properly, highlighting, I'm talking about 3D Cgals Polyhedron Geometry.
In CGAL manual I read that it’s possible to instantiate HalfedgeDS. I want to place it in shared memory so that other process could use it (please note, it has to be shared between processes, not threads). How to make my custom allocator that suit my needs, so I could put it as Alloc parameter? And what about other parameters – “Traits” and “Items” – normally you don’t have to worry about it when you use only top level classes. Below I post the most interesting fragment, that I've found uin the CGALs manual, which I think could be helpful:
A HalfedgeDS is a class template and will be used as argument for other class templates, for example CGAL::Polyhedron_3. The template parameters to instantiate the HalfedgeDS will be provided by this other class template. Therefore, the three template parameters and their meaning are mandatory. We distinguish between the template HalfedgeDS and an instantiation of it.
Note that I am interested only in solutions related to 3D geometry.
c++ - 用 CGAL 剪裁线
我想要实现的是获得线和一组带孔的多边形之间的交集->通过掩码(多边形集)剪辑线->结果将是另一条线。CGAL的问题:线段和多边形的交集?建议使用带有两个点的多边形来表示线。在 CGAL 示例的帮助下,我想出了以下片段。我的意图是使用交集来计算位于矩形内的线的一部分。但是,结果有 4 个点,它似乎是在计算多边形和由线定义的半平面之间的交集。
任何人都可以对此有所了解吗?
c++ - CMake 没有找到 Boost
我正在尝试安装 CGAL。他们在这里描述他们的安装过程非常简单,第 6.1 节。当我运行cmake-gui
然后单击configure
时,我得到以下输出:
但我确实BOOST_ROOT
在 CMake 的 GUI 中设置了D:/program files/boost_1_51
存在的 。它提到的两个库肯定是安装的。这里发生了什么?我需要做什么?
附上运行时的输出cmake -DBoost_DEBUG=ON
:
(我看到至少三个与这个问题同名的问题。他们每个人都有不同的答案,适用于 OP,但不适用于我,所以很抱歉重复这个问题......)
cgal - 在 cgal 的精确内核中使用像 uint64_t 这样的数据类型
我从 CGAL 开始。我想做的是创建坐标为数字〜2 ^ 51的点。
然后我得到一个很长的模板错误。有人可以帮忙吗?
iphone - 为 iOS / 替代 2D cad 库编译 CGAL?
我希望在 iOS / iPad 应用程序中使用CGAL 。我是一位经验丰富的 iOS 开发人员,但我从未尝试过包含像这个这样的 C++ 库,而且我之前也没有真正使用过 CGAL。广泛的研究表明它是我的最佳选择(我需要免费/开源许可证和广泛的 2D 几何方法,包括贝塞尔曲线上任意点的切线/法线向量、贝塞尔曲线偏移、贝塞尔曲线交点等。我特别着迷CGAL's
“安排”让您可以对封闭空间进行布尔运算,尽管该功能不是成败的功能)。我对其他替代方案持开放态度,但我已经研究了几十个库来得出这个——我更喜欢这个讨论是关于 CGAL 而不是其他建议,除非你有一个特别令人信服的理由来建议另一个方向。
理想情况下,我希望有人能给我一些关于如何进入 iOS 中的“hello world”的分步指导CGAL
......也许在两点之间生成一条线。我不需要CGAL
为我做渲染,但我也愿意接受任何以前尝试过类似元素组合的人的建议。我正在使用当前版本的 Xcode,并且想坚持LLVM
编译(CGAL
理论上现在支持)。
c++ - CGAL二次规划求解器,如何在目标函数中输入“x^4”?并在约束中?
我正在尝试最小化如下函数:
和约束,如:
要在目标函数中输入“x^2”,我可以执行以下操作:
但是“x^4”呢?
要添加像“x<=a”这样的约束:
但是 "x^2 <= a" 呢?
c++ - 从文件输入 CGAL 类
有没有一种简单的方法可以使用 CGAL 从同一个文件中读取 2D 中的点和线段?
这个文件的格式应该是什么?