由于某种原因,当我使用Subdiv2D时,我得到一个额外的顶点(并且无法删除它)
[代码嵌入在更大的应用程序中]
Subdiv2D mesh(Rect(0,0,1,1));
vector<Vec6f> triangleList;
mesh.getTriangleList(triangleList);
for(auto triangle : triangleList)
{
cout <<
"Vertex 1:" << endl << "\t"
"x: " << triangle[0] <<
"y: " << triangle[1] << endl <<
"Vertex 2:" << endl << "\t"
"x: " << triangle[2] <<
"y: " << triangle[3] << endl <<
"Vertex 3:" << endl << "\t"
"x: " << triangle[4] <<
"y: " << triangle[5] << endl <<
endl;
}
在输出中我得到这两个三角形
Vertex 1:
x: 3y: 0
Vertex 2:
x: 0y: 3
Vertex 3:
x: -3y: -3
Vertex 1:
x: 0y: 3
Vertex 2:
x: 3y: 0
Vertex 3:
x: -3y: -3
首先..列表没有意义(这两个三角形是等价的) 如果我添加更多顶点,那些初始超出范围的顶点会保留并将所有顶点都清理干净。
我觉得我必须遗漏一些简单的事情