mesh_cutter.h
来自「很多二维 三维几何计算算法 C++ 类库」· C头文件 代码 · 共 61 行
H
61 行
#ifndef MESH_CUTTER_H#define MESH_CUTTER_H#include "Polyhedron_ex.h"#include <list>class Mesh_cutter{// Public typespublic: typedef std::list<Polyhedron_ex::Halfedge_handle> Backbone;// Private typesprivate: typedef My_kernel::Vector_3 Vector_3; typedef My_kernel::Point_3 Point_3; enum {FREE,DONE,FIXED};// Public operationspublic: // life cycle Mesh_cutter(Polyhedron_ex& polyhedron) { m_pPolyhedron = &polyhedron; m_pBackbone = NULL; } ~Mesh_cutter() {} void cut(Backbone& backbone); void cut_genus(Backbone& backbone);// Private operationsprivate: // genus > 0 bool init(); bool simplify(); bool extend(); void precompute_distances(); Polyhedron_ex::Halfedge_handle pick_best_halfedge( std::list<Polyhedron_ex::Halfedge_handle>::iterator &pos); void recursive_tag(Polyhedron_ex::Facet_handle pFacet,int index);// Fieldsprivate: Polyhedron_ex* m_pPolyhedron; // the model to cut Backbone* m_pBackbone; // the backbone to fill Polyhedron_ex::Facet_handle m_pSeedFacet; Polyhedron_ex::Vertex_handle m_pSeedVertex;};#endif // MESH_CUTTER_H
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?