问题标签 [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.

0 投票
1 回答
1021 浏览

makefile - 使用库编译的问题

我正在尝试编译一些在 OS X Lion 上使用 CGAL 库的 C++ 代码。我下载并安装了 CGAL 库的某个目录。然后,当我尝试编译代码时,使用“make”;

这意味着它没有找到 CGAL 库。我查看了 Makefile,我看到它使用标志编译

想知道如何解决这个问题,我想我可以将关于我编译库的位置的信息传递给这个变量,但我不知道如何。我尝试了导出等,但它无法识别它,有什么提示吗?

0 投票
1 回答
310 浏览

c++ - CGAL voronoi 图度量

CGAL 库中有一个用于分段的 VD 实现,但它仅适用于欧几里德度量情况。是否可以在那里使用我自己的度量函数?

0 投票
0 回答
299 浏览

triangulation - CGAL 网格优化

我一直在尝试“清理”我预先生成的三角测量。

本质上,我想在 CGAL 上输入我的点并从那里生成一个网格,然后使用fine_mesh_3 去除碎片并提高其质量。

有什么简单的技术可以做到这一点吗?

谢谢...

0 投票
1 回答
227 浏览

computational-geometry - 稳健的距离比较谓词

我需要一个由以下代码定义的健壮谓词:

由于浮点算术的限制,我们不能distance精确计算(甚至是平方),所以如果我们直接实现这个代码,谓词就不会很健壮。我试图在 CGAL 库中找到它,但找不到。

有点接近我需要的compare_distance_to_point(Point p, Point q, Point r) 谓词 predicate。它返回Smallerif distance(p, q) < distance(p, r)Equalifdistance(p, q) == distance(p, r)Largerelse。第一个想法是通过向量移位c和,所以我们可以调用,但这会再次违反鲁棒性。那么,有没有人有适应它的想法?d(c - a)compare_distance_to_point(a, b, d + (c - a))

0 投票
2 回答
438 浏览

cgal - CGAL:继承和内核

CGAL问题:

我正在尝试将一个属性添加到点类。我想第一步是继承一个内核并用我自己的替换点类,我从 CGAL 继承。但只是试图迈出这小小的第一步,我遇到了麻烦。

编辑:根据下面的评论,我将继承更改为手册中描述的方式。下面的代码给出了以下编译错误:

  • 'typename CGAL::Extended_homogeneous::Base' 命名'CGAL::Extended_homogeneous::Base',它不是类模板|

其中。

MyBase.h

最小化.cpp

如果将继承更改为“public K_Base::Base::template B::Type”,它将编译,但我想我想念扩展的属性?因为我得到了错误

  • “构造函数不适用于此内核”

    当我运行程序时

0 投票
1 回答
753 浏览

inheritance - 将变量添加到 CGAL 的 Point 类

我正在尝试向 CGAL 的 Point_3 类添加一个颜色变量(无符号字符),以便在进行 Delaunay 三角剖分后访问颜色。

我尝试过的是使用 Triangulation_vertex_base_with_info_3 来存储这样的颜色(按照http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Triangulation_3/Chapter_main.html#Subsection_39.5.3的示例)

我真正想要实现的是能够在进行三角剖分后通过 Triangulation::Tetrahedron 类访问顶点颜色。

假设我在 (x,y,z) 有一个点 P。三角剖分后,我找到了包含这个点 P 的四面体 t,并且我可以访问这个四面体的顶点(使用 t.vertex(0..3))。这将返回 Point_3 类型的顶点,我无法访问之前存储的颜色。

我想一种方法是创建我自己的包含颜色信息的 Point 类。这很容易,但我不明白如何使用这个类而不是 Point_3。我发现我还必须编写自己的内核来执行此操作,并在http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Kernel_23/Chapter_main.html#Section_11.5上提供了一个示例,但我不能弄清楚我应该使用什么内核作为基类,或者我的内核甚至应该包含什么功能。

我什至在 stackoverflow 上发现了两个类似的主题: Customizing CGAL Kernel with my own Point classCGAL: Inheritance and the kernel 但它们对我没有帮助。

谢谢您的帮助!

0 投票
1 回答
2455 浏览

c++ - 用cgal计算两个多边形的相交面积

给定两个凸多边形的顶点,使用 cgal 计算它们相交面积的最简单方法是什么?

0 投票
1 回答
878 浏览

c++ - CGAL:法线和加权 3D 三角测量之间的差异

对于一组 3D 点,它们都由它们的笛卡尔坐标指定,CGAL 的 3D Delaunay 三角剖分与其加权(如此所述)或常规 3D 三角剖分之间的主要区别是什么?

0 投票
0 回答
142 浏览

c++ - 如何构造(dk)维超球面(k

对于我的博士工作,我使用的是 C++ CGAL 库提供的 dD Geometry Kernel。

  • 我的基本目标:我想通过顺序添加一个新点来构建一系列维度增长的超球体,直到达到任意维度 d。第一个超球面是一维的,最后一个超球面是 d 维的。添加的每个新点都会导致维度的实际增加(无共面性)。

  • 我的问题:使用 CGAL::Sphere_d 类,我不知道如何在 d 维环境空间(即 d 维点)中构造(dk)维超球面(k < d)。事实上,要构建一个 d'-sphere,需要提供 d'+1 个 d'-points(这是正常的)。例如,我想用 3 个3维点构建一个圆盘(2 球体)。因此,直接使用这个 CGAL 类意味着我提供二维点,这是不可能的(到目前为止)。

  • 我的问题:作为 CGAL 库的最新用户,我不知道这个类是否可能是我必须使用的类,或者我是否有必要找到另一个类?如果没有必要,如何绕过我的问题?

提前致谢,

奥克塔维奥


使用android中的按钮删除listview项目

所以我添加了按钮,但是位置变量出现错误。我做对了吗?


我正在编写一个任务管理器程序,并且遇到了 listView 的问题。我已经创建了列表,现在我想在单击项目上的按钮时删除列表上的项目。我不确定应该在哪里创建按钮并添加侦听器。有人可以帮助我吗谢谢。

0 投票
1 回答
187 浏览

debugging - 在 Mac OS 上使用 Boost 调试 CGAL 示例

我手动编译了 CGAL 并安装在~/Library/CGAL/CGAL-4.0.2/. Boost (boost @1.50.0_0+debug+no_single+no_static)以及cmake (2.8.8_1)使用macports. 对于提供的示例的编译目的,一切都很好。我的问题是当我尝试调试示例时。特别是,例如,我在包含and thencmake -DCMAKE_BUILD_TYPE=Debug .的目录中运行。生成的二进制函数符合预期,但在运行调试时,我收到以下警告:Arrangements_on_surfaces_2makegdb foofoo

我真的不知道该怎么办。我尝试boost手动下载、编译和安装,然后重新编译CGAL。但是,一旦我尝试编译一个示例,我就会在运行时抱怨缺少boost库。

另一方面,在尝试调试XCode项目时(在使用-G Xcodecmake 选项创建项目之后),我可以调试一个示例。

任何帮助都会有所帮助!