52 template<
typename BaseVecT>
75 std::vector<float>& vBuffer,
76 std::vector<unsigned int>& fBuffer,
85 vector<unsigned int>& duplicates,
86 float comparePrecision
128 template<
typename BaseVecT>
137 #include "SharpBox.tcc" virtual void getSurface(std::vector< float > &vBuffer, std::vector< unsigned int > &fBuffer, vector< QueryPoint< BaseVecT > > &query_points, uint &globalIndex)
bool m_containsSharpFeature
static float m_phi_corner
void detectSharpFeatures(BaseVecT vertex_positions[], Normal< typename BaseVecT::CoordType > vertex_normals[], uint index)
static PointsetSurfacePtr< BaseVecT > m_surface
virtual void getSurface(BaseMesh< BaseVecT > &mesh, vector< QueryPoint< BaseVecT > > &query_points, uint &globalIndex)
Performs a local reconstruction w.r.t. to sharp features.
Interface for triangle-meshes with adjacency information.
A dynamic bounding box class.
A query Vector for marching cubes reconstructions. It represents a Vector in space together with a 'd...
SharpBox(BaseVecT center)
void getNormals(BaseVecT vertex_positions[], Normal< typename BaseVecT::CoordType > vertex_normals[])
gets the normals for the given vertices
Used for extended marching cubes Reconstruction.
static float m_theta_sharp
SharpBox< BaseVecT > BoxType
std::shared_ptr< PointsetSurface< BaseVecT > > PointsetSurfacePtr
A volume representation used by the standard Marching Cubes implementation.
virtual void getSurface(BaseMesh< BaseVecT > &mesh, vector< QueryPoint< BaseVecT > > &query_points, uint &globalIndex, BoundingBox< BaseVecT > &bb, vector< unsigned int > &duplicates, float comparePrecision)
bool m_containsSharpCorner