59 #ifndef MESHFUNCTIONS_HH
60 #define MESHFUNCTIONS_HH
89 template <
typename MeshT ,
typename VectorT >
91 typename MeshT::VertexHandle _vh,
92 std::vector< std::pair< VectorT , typename MeshT::VertexHandle > >& _boundary);
100 template <
typename MeshT ,
typename VectorT >
102 std::vector< std::pair<
VectorT ,
103 typename MeshT::VertexHandle > >& _boundary);
111 template <
typename MeshT ,
typename VectorT >
113 typename MeshT::VertexHandle _vh);
121 template <
typename MeshT >
123 const typename MeshT::FaceHandle _fh1 ,
124 const typename MeshT::FaceHandle _fh2 );
134 template <
typename MeshT ,
typename VectorT >
139 const typename MeshT::FaceHandle& _fh);
145 template <
typename MeshT >
154 template <
typename MeshT >
164 template<
typename MeshT >
172 template<
typename MeshT >
178 #if defined(INCLUDE_TEMPLATES) && !defined(MESHFUNCTIONS_C)
179 #define MESHFUNCTIONS_TEMPLATES
180 #include "MeshFunctions.cc"
183 #endif // MESHFUNCTIONS_HH defined
void transformMesh(ACG::Matrix4x4d _matrix, MeshT &_mesh)
void transformHandleVertices(ACG::Matrix4x4d _matrix, MeshT &_mesh)
void smooth_boundary(MeshT &_mesh, typename MeshT::VertexHandle _vh)
bool neighbour(const MeshT &_mesh, const typename MeshT::FaceHandle _fh1, const typename MeshT::FaceHandle _fh2)
double calc_angle_around(const MeshT &_mesh, const typename MeshT::VertexHandle _vh)
Namespace providing different Mesh editing functions.
bool get_boundary(MeshT &_mesh, typename MeshT::VertexHandle _vh, std::vector< std::pair< VectorT, typename MeshT::VertexHandle > > &_boundary)
bool cut_face(const VectorT &_porigin, const VectorT &_pnormal, const MeshT &_mesh, const typename MeshT::FaceHandle &_fh)
double calc_area(const MeshT &_mesh)