Ignore:
Timestamp:
01/15/06 04:23:51 (18 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/GtpVisibilityPreprocessor/src/VssPreprocessor.cpp

    r538 r540  
    360360                                                                          const ObjectContainer &objects) 
    361361{ 
     362        //debuggerWidget = new GlDebuggerWidget(renderer); 
     363        //  renderer->resize(640, 480); 
     364        //debuggerWidget->resize(640, 480); 
     365 
    362366        vector<VssTreeLeaf *> leaves; 
    363367        tree->CollectLeaves(leaves); 
     
    366370 
    367371        exporter->SetWireframe(); 
    368         //exporter->ExportGeometry(objects); 
     372        exporter->ExportGeometry(objects); 
    369373        exporter->SetFilled(); 
    370374        //Randomize(); 
    371         for (int i = 0; i < 1; ++ i) 
     375        debuggerWidget = new GlDebuggerWidget(renderer); 
     376 
     377        /*debuggerWidget->mBeam = beam; 
     378        debuggerWidget->mSourceObject = sourceObj; 
     379        debuggerWidget->mSamples = 10000; 
     380         
     381        Debug << "showing window" << endl; 
     382        debuggerWidget->show();*/ 
     383         
     384        renderer->makeCurrent(); 
     385 
     386        for (int i = 0; i < 10; ++ i) 
    372387        { 
     388                Beam beam; 
     389                Intersectable *sourceObj = mObjects[5]; 
     390 
    373391                const int index = (int)RandomValue(0, (Real)((int)leaves.size() - 1)); 
    374392                VssTreeLeaf *leaf = leaves[index]; 
    375393 
    376                 Beam beam; 
    377394                AxisAlignedBox3 dirBox = tree->GetDirBBox(leaf); 
    378395                AxisAlignedBox3 box = tree->GetBBox(leaf); 
     
    387404                          << beam.mKdNodes.size() << " kd nodes" << endl; 
    388405 
    389                 Intersectable *sourceObj = mObjects[5]; 
    390406                BeamSampleStatistics stats; 
    391407 
    392408                renderer->SampleBeamContributions(sourceObj, 
    393409                                                                                  beam, 
    394                                                                                   10000, 
     410                                                                                  200000, 
    395411                                                                                  stats); 
    396412 
     413                char s[64]; sprintf(s, "shaft%04d.png", i); 
     414 
     415                QImage image = renderer->toImage(); 
     416                image.save(s, "PNG"); 
    397417                Debug << "beam statistics: " << stats << endl << endl; 
     418 
     419                if (1) 
     420                { 
     421                        AxisAlignedBox3 sbox = mSceneGraph->GetBox(); 
     422                        Vector3 bmin = sbox.Min() - 150.0f; 
     423                        Vector3 bmax = sbox.Max() + 150.0f; 
     424                        AxisAlignedBox3 vbox(bmin, bmax); 
    398425                 
    399                 AxisAlignedBox3 sbox = mSceneGraph->GetBox(); 
    400                 Vector3 bmin = sbox.Min() - 150.0f; 
    401                 Vector3 bmax = sbox.Max() + 150.0f; 
    402                 AxisAlignedBox3 vbox(bmin, bmax); 
    403                  
    404                 exporter->ExportBeam(beam, vbox); 
    405  
    406                 bool exportViewCells = true; 
     426                        exporter->ExportBeam(beam, vbox); 
     427                } 
     428 
     429                bool exportViewCells = false; 
    407430                 
    408431                if (exportViewCells) 
     
    431454                } 
    432455        } 
     456        /*while (1) 
     457        { debuggerWidget->repaint(); 
     458        };*/ 
    433459        delete exporter; 
    434460} 
     461 
    435462 
    436463float 
     
    591618 
    592619   
    593   int numExportRays = 5000; 
    594   //int numExportRays = 0; 
     620  //int numExportRays = 5000; 
     621  int numExportRays = 0; 
    595622 
    596623  if (numExportRays) { 
     
    723750  mViewCellsManager->PostProcess(mObjects, viewCellRays); 
    724751 
    725   if (mTestBeamSampling) 
     752  if (mTestBeamSampling && mUseGlRenderer) 
     753  {      
    726754          TestBeamCasting(vssTree, mViewCellsManager, mObjects); 
     755  } 
    727756 
    728757  //-- several visualizations and statistics 
Note: See TracChangeset for help on using the changeset viewer.