bugfix
This commit is contained in:
parent
4ca887ba58
commit
20d7468438
|
@ -206,7 +206,7 @@ public:
|
||||||
if(tri::HasPerVertexQuality(m) )
|
if(tri::HasPerVertexQuality(m) )
|
||||||
m.vert.back().Q() = f.cV(0)->Q()*p[0] + f.cV(1)->Q()*p[1] + f.cV(2)->Q()*p[2];
|
m.vert.back().Q() = f.cV(0)->Q()*p[0] + f.cV(1)->Q()*p[1] + f.cV(2)->Q()*p[2];
|
||||||
}
|
}
|
||||||
}; // end class BaseSampler
|
}; // end class MeshSampler
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -2311,7 +2311,7 @@ void PoissonPruning(MeshType &m, // the mesh that has to be pruned
|
||||||
tri::UpdateBounding<MeshType>::Box(m);
|
tri::UpdateBounding<MeshType>::Box(m);
|
||||||
BaseSampler pdSampler;
|
BaseSampler pdSampler;
|
||||||
tri::SurfaceSampling<MeshType,BaseSampler>::PoissonDiskPruning(pdSampler, m, radius,pp);
|
tri::SurfaceSampling<MeshType,BaseSampler>::PoissonDiskPruning(pdSampler, m, radius,pp);
|
||||||
std::swap(pdSampler.sampleVec,poissonSamples);
|
poissonSamples = pdSampler.sampleVec;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -470,24 +470,24 @@ public:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// \brief Marks feature edges according to border flag.
|
/// \brief Selects feature edges according to Face adjacency.
|
||||||
/// Actually it marks as fauxedges all the non border edges,
|
///
|
||||||
///
|
static void FaceEdgeSelBorder(MeshType &m)
|
||||||
static void FaceEdgeSelBorder(MeshType &m)
|
{
|
||||||
{
|
RequirePerFaceFlags(m);
|
||||||
RequirePerFaceFlags(m);
|
RequireFFAdjacency(m);
|
||||||
RequireFFAdjacency(m);
|
//initially Nothing is selected
|
||||||
//initially Nothing is faux (e.g all crease)
|
FaceClearFaceEdgeS(m);
|
||||||
FaceClearFaceEdgeS(m);
|
for (FaceIterator fi=m.face.begin(); fi!=m.face.end();++fi)
|
||||||
// Then mark faux only if the signed angle is the range.
|
if (!fi->IsD())
|
||||||
for(FaceIterator fi=m.face.begin();fi!=m.face.end();++fi) if(!(*fi).IsD())
|
{
|
||||||
{
|
for (int z=0; z<(*fi).VN(); ++z)
|
||||||
for(int z=0;z<(*fi).VN();++z)
|
{
|
||||||
{
|
if (face::IsBorder(*fi,z))
|
||||||
if(!face::IsBorder(*fi,z) ) (*fi).SetFaceEdgeS(z);
|
fi->SetFaceEdgeS(z);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// \brief Marks feature edges according to a given angle
|
/// \brief Marks feature edges according to a given angle
|
||||||
/// Actually it uses the face_edge selection bit on faces,
|
/// Actually it uses the face_edge selection bit on faces,
|
||||||
|
|
Loading…
Reference in New Issue