为了书写方便,定义 typedef OpenMesh::TriMesh_ArrayKernelT<> MyMesh;
**取下标为i的顶点, 坐标
MyMesh::VertexHandle v_h=mesh.vertex_handle(i);
mesh.point(v_h);
**从顶点v1到v2的半边
MyMesh::HalfedgeHandle out_he_h=mesh.find_halfedge(v1_h,v2_h)
从v2到v1的半边 MyMesh::HalfedgeHandle in_he_h=mesh.opposite_halfedge_handle(out_he_h);
**将顶点沿其法线方向移动1个距离单位
mesh.set_point(v_h,mesh.point(v_h)+mesh.normal(v_h));
for (MyMesh::VertexIter v_it = mesh.vertices_begin();
v_it != mesh.vertices_end(); ++v_it)
{
std::cout << "Vertex #" << *v_it << ": " << mesh.point( *v_it );
mesh.set_point( *v_it, mesh.point(*v_it)+mesh.normal(*v_it) );
std::cout << " moved to " << mes