#include #include using namespace std; using namespace X3DTK; using namespace X3DTK::MESH; int main(int argc, char *argv[]) { Vertex *V = new Vertex(); Mesh *M = new Mesh(); M->setChild(V); SFVertex *v0 = V->createVertex(); SFVertex *v1 = V->createVertex(); SFVertex *v2 = V->createVertex(); SFVertex *v3 = V->createVertex(); MFInt32 index0, index1; index0.push_back(v0->getIndex()); index0.push_back(v1->getIndex()); index0.push_back(v2->getIndex()); index1.push_back(v1->getIndex()); index1.push_back(v3->getIndex()); index1.push_back(v2->getIndex()); SFFace *f0 = M->createFace(index0); SFFace *f1 = M->createFace(index1); const Mesh::MFFace &faces = M->getFaces(); const Vertex::MFEdge &edges = V->getEdges(); cout << "faces:" << endl; for (Mesh::MFFace::const_iterator f = faces.begin(); f != faces.end(); ++f) cout << **f << endl; cout << "edges:" << endl; for (Vertex::MFEdge::const_iterator e = edges.begin(); e != edges.end(); ++e) cout << **e << endl; M->removeFace(f0); cout << endl; cout << "faces:" << endl; for (Mesh::MFFace::const_iterator fr = faces.begin(); fr != faces.end(); ++fr) cout << **fr << endl; cout << "edges:" << endl; for (Vertex::MFEdge::const_iterator er = edges.begin(); er != edges.end(); ++er) cout << **er << endl; delete M; delete V; return 0; }