⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 build_cube.cc

📁 penMesh is a generic and efficient data structure for representing and manipulating polygonal meshes
💻 CC
字号:
//=============================================================================//                                                                            //                               OpenMesh                                     //      Copyright (C) 2001-2005 by Computer Graphics Group, RWTH Aachen       //                           www.openmesh.org                                 //                                                                            //-----------------------------------------------------------------------------//                                                                            //                                License                                     //                                                                            //   This library is free software; you can redistribute it and/or modify it //   under the terms of the GNU Library General Public License as published  //   by the Free Software Foundation, version 2.                             //                                                                             //   This library is distributed in the hope that it will be useful, but       //   WITHOUT ANY WARRANTY; without even the implied warranty of                //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU         //   Library General Public License for more details.                          //                                                                            //   You should have received a copy of the GNU Library General Public         //   License along with this library; if not, write to the Free Software       //   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.                 //                                                                            //-----------------------------------------------------------------------------//                                                                            //   $Revision: 1.2 $//   $Date: 2005-12-21 14:05:30 $//                                                                            //=============================================================================#include <iostream>// -------------------- OpenMesh#include <OpenMesh/Core/IO/MeshIO.hh>#include <OpenMesh/Core/Mesh/Types/PolyMesh_ArrayKernelT.hh>// ----------------------------------------------------------------------------typedef OpenMesh::PolyMesh_ArrayKernelT<>  MyMesh;// ----------------------------------------------------------------------------// Build a simple cube and write it to std::cout  int main(){  MyMesh mesh;  // generate vertices  MyMesh::VertexHandle vhandle[8];  vhandle[0] = mesh.add_vertex(MyMesh::Point(-1, -1,  1));  vhandle[1] = mesh.add_vertex(MyMesh::Point( 1, -1,  1));  vhandle[2] = mesh.add_vertex(MyMesh::Point( 1,  1,  1));  vhandle[3] = mesh.add_vertex(MyMesh::Point(-1,  1,  1));  vhandle[4] = mesh.add_vertex(MyMesh::Point(-1, -1, -1));  vhandle[5] = mesh.add_vertex(MyMesh::Point( 1, -1, -1));  vhandle[6] = mesh.add_vertex(MyMesh::Point( 1,  1, -1));  vhandle[7] = mesh.add_vertex(MyMesh::Point(-1,  1, -1));  // generate (quadrilateral) faces  std::vector<MyMesh::VertexHandle>  face_vhandles;  face_vhandles.clear();  face_vhandles.push_back(vhandle[0]);  face_vhandles.push_back(vhandle[1]);  face_vhandles.push_back(vhandle[2]);  face_vhandles.push_back(vhandle[3]);  mesh.add_face(face_vhandles);   face_vhandles.clear();  face_vhandles.push_back(vhandle[7]);  face_vhandles.push_back(vhandle[6]);  face_vhandles.push_back(vhandle[5]);  face_vhandles.push_back(vhandle[4]);  mesh.add_face(face_vhandles);  face_vhandles.clear();  face_vhandles.push_back(vhandle[1]);  face_vhandles.push_back(vhandle[0]);  face_vhandles.push_back(vhandle[4]);  face_vhandles.push_back(vhandle[5]);  mesh.add_face(face_vhandles);  face_vhandles.clear();  face_vhandles.push_back(vhandle[2]);  face_vhandles.push_back(vhandle[1]);  face_vhandles.push_back(vhandle[5]);  face_vhandles.push_back(vhandle[6]);  mesh.add_face(face_vhandles);  face_vhandles.clear();  face_vhandles.push_back(vhandle[3]);  face_vhandles.push_back(vhandle[2]);  face_vhandles.push_back(vhandle[6]);  face_vhandles.push_back(vhandle[7]);  mesh.add_face(face_vhandles);  face_vhandles.clear();  face_vhandles.push_back(vhandle[0]);  face_vhandles.push_back(vhandle[3]);  face_vhandles.push_back(vhandle[7]);  face_vhandles.push_back(vhandle[4]);  mesh.add_face(face_vhandles);  // write mesh to output.obj  try  {    if ( !OpenMesh::IO::write_mesh(mesh, "output.off") )    {      std::cerr << "Cannot write mesh to file 'output.off'" << std::endl;      return 1;    }  }  catch( std::exception& x )  {    std::cerr << x.what() << std::endl;    return 1;  }  return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -