本文整理汇总了C++中SurfaceMesh::add_vertex方法的典型用法代码示例。如果您正苦于以下问题:C++ SurfaceMesh::add_vertex方法的具体用法?C++ SurfaceMesh::add_vertex怎么用?C++ SurfaceMesh::add_vertex使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SurfaceMesh
的用法示例。
在下文中一共展示了SurfaceMesh::add_vertex方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(void)
{
// instantiate a SurfaceMesh object
SurfaceMesh mesh;
// instantiate 4 vertex handles
SurfaceMesh::Vertex v0,v1,v2,v3;
// add 4 vertices
v0 = mesh.add_vertex(Vec3(0,0,0));
v1 = mesh.add_vertex(Vec3(1,0,0));
v2 = mesh.add_vertex(Vec3(0,1,0));
v3 = mesh.add_vertex(Vec3(0,0,1));
// add 4 triangular faces
mesh.add_triangle(v0,v1,v3);
mesh.add_triangle(v1,v2,v3);
mesh.add_triangle(v2,v0,v3);
mesh.add_triangle(v0,v2,v1);
std::cout << "vertices: " << mesh.n_vertices() << std::endl;
std::cout << "edges: " << mesh.n_edges() << std::endl;
std::cout << "faces: " << mesh.n_faces() << std::endl;
return 0;
}
示例2: saveScalars
void VertexScalar::saveScalars()
{
if (!mi) return;
SurfaceMesh *mesh = mi->getMesh();
if (!mesh) return;
SurfaceMesh::VertexIter v_it = mesh->vertices_begin();
for (unsigned int i = 0; i < ps->size(); i++) {
if (v_it == mesh->vertices_end()) {
mesh->add_vertex(MyMesh::Point());
} else {
SurfaceMesh::TexCoord2D tc = mesh->texcoord2D(v_it);
tc[0] = (SurfaceMesh::Scalar) getScalar(i);
mesh->set_texcoord2D(v_it, tc);
++v_it;
}
}
while (v_it != mesh->vertices_end()) {
SurfaceMesh::VertexIter extra = v_it;
++v_it; // could do this above but may be confusing
mesh->delete_vertex(extra);
}
}