#include "SceneGraph.h" #include "Polygon3.h" #include "Mesh.h" #include "ObjExporter.h" namespace GtpVisibilityPreprocessor { ObjExporter::ObjExporter(const string filename):Exporter(filename) { stream.open(mFilename.c_str()); stream<<"#File exported by GTP visibility preprocessor"<mChildren.begin(); for (; ni != node->mChildren.end(); ni++) ExportSceneNode(*ni); ObjectContainer::const_iterator mi = node->mGeometry.begin(); for (; mi != node->mGeometry.end(); mi++) { // export the transform... ExportIntersectable(*mi); } } void ObjExporter::ExportMesh(Mesh *mesh) { int vertexOffset = vertexIndex; VertexContainer::const_iterator vi = mesh->mVertices.begin(); for (; vi != mesh->mVertices.end(); vi++) { stream<<"v "<<(*vi).x<<" "<<(*vi).y<<" "<<(*vi).z<mFaces.begin(); for (; fi != mesh->mFaces.end(); fi++) { Face *face = *fi; VertexIndexContainer::const_iterator vi = face->mVertexIndices.begin(); stream<<"f "; for (; vi != face->mVertexIndices.end(); vi++) stream<mVertices.begin(); for (; vi != poly->mVertices.end(); vi++) { stream<<"v "<<(*vi).x<<" "<<(*vi).y<<" "<<(*vi).z<mVertices.begin(); for (; vi != poly->mVertices.end(); vi++, i++) stream<