Как я могу считать не ориентированные наружу лица?Следующий код не работает.Он реализован в 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();
}