Ignore:
Timestamp:
09/18/06 02:23:47 (18 years ago)
Author:
mattausch
Message:

debugging after merge

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/Exporter.cpp

    r1344 r1404  
    146146                { 
    147147                        SetFilled(); 
    148                         ExportGeometry(leaf->mObjects); 
     148                        ExportGeometry(leaf->mObjects, true); 
    149149                } 
    150150        } 
     
    221221 
    222222 
    223  
    224 } 
     223void Exporter::ExportGeometry(const ObjectContainer &objects,  
     224                                                          const bool exportSingleMesh) 
     225{ 
     226        ObjectContainer::const_iterator oit, oit_end = objects.end(); 
     227 
     228        if (!exportSingleMesh) 
     229        { 
     230                for (oit = objects.begin(); oit != oit_end; ++ oit) 
     231                { 
     232                        if (0) SetForcedMaterial(RandomMaterial()); 
     233                        ExportIntersectable(*oit); 
     234                } 
     235 
     236                return; 
     237        } 
     238 
     239        //-- all objects exported as one mesh 
     240        //-- hack: currently it works only for triangles 
     241        PolygonContainer polys; 
     242 
     243        for (oit = objects.begin(); oit != oit_end; ++ oit) 
     244        { 
     245                Intersectable *obj = *oit; 
     246                switch (obj->Type()) 
     247                { 
     248                case Intersectable::TRIANGLE_INTERSECTABLE: 
     249                        { 
     250                                TriangleIntersectable *ti = dynamic_cast<TriangleIntersectable *>(obj); 
     251                                polys.push_back(new Polygon3(ti->GetItem())); 
     252                break; 
     253                        } 
     254                default: 
     255                        cout << "merging of object type " << obj->Type() << " not implemented yet" << endl; 
     256                        break; 
     257                } 
     258        } 
     259 
     260        Mesh dummyMesh; 
     261        PolygonContainer::const_iterator pit, pit_end = polys.end(); 
     262 
     263        for (pit = polys.begin(); pit != pit_end; ++ pit) 
     264        { 
     265                Polygon3 *poly = (*pit); 
     266                IncludePolyInMesh(*poly, dummyMesh); 
     267        } 
     268         
     269        ExportMesh(&dummyMesh); 
     270        CLEAR_CONTAINER(polys); 
     271} 
     272 
     273 
     274 
     275} 
Note: See TracChangeset for help on using the changeset viewer.