Считать не ориентированные наружу лица - PullRequest
0 голосов
/ 12 июня 2018

Как я могу считать не ориентированные наружу лица?Следующий код не работает.Он реализован в vcg lib и основан на IsCoherentlyOrientedMesh () из clean.h:

http://opensource -robotics.tokyo.jp / ros.org / docs.ros.org / api /shape_reconstruction / html / clean_8h_source.html

   int countNotOutwardOrientedFaces(PMesh &pm)
    {
        tri::UpdateSelection<PMesh>::FaceClear(pm);
        for (PMesh::FaceIterator f = pm.face.begin(); f != pm.face.end(); ++f)
        {
            bool oriented = true;
            for (int i = 0; i < 3; ++i)
            {
                if (!face::CheckOrientation(*f, i))
                {
                    oriented = false;
                    break;
                }
            }

            if (!oriented)
            {
                f->SetS();
            }
        }

        PMesh::FaceIterator f;
        f = pm.face.begin();
        std::vector<PFace*> sf;
        for (; f != pm.face.end(); ++f)
        {
            if (f->IsS())
            {
                sf.push_back(&(*f));
            }
        }
        return sf.size();
    }
...