Added a missing init bbox

This commit is contained in:
Paolo Cignoni 2017-07-27 15:59:09 +02:00
parent 8b8d9844b1
commit 3d47dc1273
1 changed files with 4 additions and 3 deletions

View File

@ -129,12 +129,12 @@ public:
bool overlap; bool overlap;
Stat vas; Stat vas;
int maxIterNum; int maxIterNum;
CallBackPos *cb=vcg::CErrCallBackPos;
}; };
// Main parametrization function: // Main parametrization function:
// it takes a startMesh, copy it and // it takes a startMesh, copy it and
static void Build( MeshType &startMesh, MeshType &paraMesh, VoronoiAtlasParam &pp) static void Build( MeshType &startMesh, MeshType &paraMesh, VoronoiAtlasParam &pp)
{ {
pp.vas.clear(); pp.vas.clear();
@ -159,7 +159,7 @@ public:
tri::PoissonSampling(m,PoissonSamples,pp.sampleNum,diskRadius); tri::PoissonSampling(m,PoissonSamples,pp.sampleNum,diskRadius);
int st1=clock(); int st1=clock();
pp.vas.samplingTime+= st1-st0; pp.vas.samplingTime+= st1-st0;
// qDebug("Sampling created a new mesh of %lu points\n",PoissonSamples.size()); pp.cb(50,StrFormat("Sampling created a new mesh of %lu points\n",PoissonSamples.size()));
EuclideanDistance<VoroMesh> edFunc; EuclideanDistance<VoroMesh> edFunc;
std::vector<VertexType *> seedVec; std::vector<VertexType *> seedVec;
tri::VoronoiProcessing<VoroMesh>::SeedToVertexConversion(m,PoissonSamples,seedVec); tri::VoronoiProcessing<VoroMesh>::SeedToVertexConversion(m,PoissonSamples,seedVec);
@ -174,7 +174,7 @@ public:
{ {
VoroMesh *rm = new VoroMesh(); VoroMesh *rm = new VoroMesh();
int selCnt = tri::VoronoiProcessing<VoroMesh>::FaceSelectAssociateRegion(m,seedVec[i]); int selCnt = tri::VoronoiProcessing<VoroMesh>::FaceSelectAssociateRegion(m,seedVec[i]);
//qDebug("Region %i of %i faces",i,selCnt); pp.cb(50,StrFormat("Region %i of %i faces",i,selCnt));
if(selCnt==0) continue; if(selCnt==0) continue;
assert(selCnt>0); assert(selCnt>0);
if(pp.overlap){ if(pp.overlap){
@ -184,6 +184,7 @@ public:
tri::Append<VoroMesh,VoroMesh>::Mesh(*rm, m, true); tri::Append<VoroMesh,VoroMesh>::Mesh(*rm, m, true);
int tp0=clock(); int tp0=clock();
tri::PoissonSolver<VoroMesh> PS(*rm); tri::PoissonSolver<VoroMesh> PS(*rm);
tri::UpdateBounding<VoroMesh>::Box(*rm);
if(PS.IsFeasible()) if(PS.IsFeasible())
{ {
PS.Init(); PS.Init();