Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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
Graph 约束(Delaunay)三角剖分_Graph_Vtk_Triangulation_Cgal - Fatal编程技术网

Graph 约束(Delaunay)三角剖分

Graph 约束(Delaunay)三角剖分,graph,vtk,triangulation,cgal,Graph,Vtk,Triangulation,Cgal,对于一个大学项目,我需要实现一个计算机图形学论文,它在几年前就被放松了。在某一点上,我需要对我从模拟中得到的结果进行三角剖分。我想通过看一张包含在论文中的图片更容易解释我需要什么: 假设我已经获得了重建轮廓线所需的所有信息,您可以在第二个缩略图中看到这些轮廓线。使用这些,我需要使用这些siluettes作为约束进行一些三角剖分。我在互联网上搜索了三角测量库,如CGAL、VTK、Triangle、Triangle++、。。。但我总是害怕地举起双手。我不是一个好的程序员,在这个项目的最后期限过去之前

对于一个大学项目,我需要实现一个计算机图形学论文,它在几年前就被放松了。在某一点上,我需要对我从模拟中得到的结果进行三角剖分。我想通过看一张包含在论文中的图片更容易解释我需要什么:

假设我已经获得了重建轮廓线所需的所有信息,您可以在第二个缩略图中看到这些轮廓线。使用这些,我需要使用这些siluettes作为约束进行一些三角剖分。我在互联网上搜索了三角测量库,如CGAL、VTK、Triangle、Triangle++、。。。但我总是害怕地举起双手。我不是一个好的程序员,在这个项目的最后期限过去之前,我似乎不可能进入其中一个API

我将感谢任何帮助,如代码剪贴画,提示等

我知道这些算法需要一段一对的点作为输入,所以假设我有一个std::vector,其中包含定义siluette以及矩形左右两侧的所有点对

你能给我一个代码snipplet,我可以用它来实现我的目的吗?首先我只想实现第三个缩略图的状态。稍后,我将不得不在裂缝内进行一些置换,并最终将信息写入VBO以进行OpenGL渲染

我已经开始和CGAL一起解决这个问题。一个简单的问题仍然让我发疯:

在将点添加到三角剖分器对象之前,可以将点等信息附加到点。我这样做是因为一方面我需要一个int标志,我使用lateron来定义我的纹理坐标,另一方面我需要一个索引,我使用它来创建一个索引VBO。

但我只想插入约束边,而不是点。如果我同时插入两个CGAL,会返回奇怪的结果,因为点已经作为点和约束边的点输入了两次。

是否可以使用与点信息相同的方式连接到约束,以便我只能使用此函数cdt.insert_constraint Pointj,0,Pointj,6;在迭代生成的面之前

稍后,当我在三角形上循环时,我需要一些方法来访问我以前定义的int标志。与此类似,但不是在顶点上,而是由约束边定义的端点上:

for(CDT::Finite_faces_iterator fit = m_cdt.finite_faces_begin(); fit != m_cdt.finite_faces_end(); ++fit, ++k) {

    int j = k*3;
    for(int i=0; i < 3; i++) {

        indices[j+i] = fit->vertex(i)->info().first;
    }
}

您是否阅读了这些库随附的示例和演示,以检查是否没有一个库可以执行您想要的操作—可能从文件中读取输入?查看屏幕,您还可以简化任务并将曲面拆分为矩形,切割轮廓布尔减法并对结果条进行三角剖分。我开始使用CGAL,因为它提供了受约束的delaunay三角剖分。我仍然有一些问题需要解决,但事情变得越来越离散。我会尽量让你们保持更新。也许最好单独发布后续问题,并链接到这里。如果我自己想不出什么,我明天就会这么做。