Ignore:
Timestamp:
09/05/06 09:51:56 (18 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

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

    r1315 r1323  
    4646                mOspTree = new OspTree(); 
    4747                mOspTree->mVspTree = mVspTree; 
    48                 //mOspTree->mHierarchyManager = this; 
     48                 
    4949                Debug << "creating osp tree" << endl; 
    5050                break; 
     
    5252        mBvHierarchy = new BvHierarchy(); 
    5353                mBvHierarchy->mVspTree = mVspTree; 
    54                 //mBvHierarchy->mHierarchyManager = this; 
     54                 
    5555                Debug << "creating bv hierachy" << endl; 
    5656                break; 
     
    7474        mOspTree->mVspTree = mVspTree; 
    7575 
    76         //mOspTree->mHierarchyManager = this; 
    7776        Debug << "creating osp tree" << endl; 
    7877 
     
    216215        cout << "Constructing view space / object space tree ... \n"; 
    217216         
     217        // use objects for evaluating vsp tree construction in the first levels 
     218        // of the subdivision 
     219        mSavedObjectSpaceSubdivisionType = mObjectSpaceSubdivisionType; 
     220        mObjectSpaceSubdivisionType = NO_OBJ_SUBDIV; 
     221 
     222        // start with view space subdivison: prepare vsp tree for traversal 
     223        PrepareViewSpaceSubdivision(sampleRays, objects, forcedViewSpace); 
     224 
     225        // start object space subdivision immediately? 
     226        if (StartObjectSpaceSubdivision()) 
     227        { 
     228                mObjectSpaceSubdivisionType = mSavedObjectSpaceSubdivisionType; 
     229                PrepareObjectSpaceSubdivision(sampleRays, objects); 
     230        } 
     231 
    218232        // process object space candidates 
    219233        RunConstruction(sampleRays, objects, forcedViewSpace); 
     
    328342        const bool ospDepthReached =  
    329343                (mMinDepthForObjectSpaceSubdivion <= mVspTree->mVspStats.maxDepth); 
    330         const bool stillNotOsp = (mObjectSpaceSubdivisionType == NO_OBJ_SUBDIV); 
    331344     
    332         return stillNotOsp && (mTQueue.Empty() || ((mConstructionType == 1) && ospDepthReached)); 
     345        return !ObjectSpaceSubdivisionConstructed() &&  
     346                   (mTQueue.Empty() || ((mConstructionType == INTERLEAVED) && ospDepthReached)); 
    333347} 
    334348 
     
    340354        mHierarchyStats.nodes = 0; 
    341355        mGlobalCostMisses = 0; 
    342  
    343         // use objects for evaluating vsp tree construction in the first levels 
    344         // of the subdivision 
    345         const int savedObjectSpaceSubdivisionType = mObjectSpaceSubdivisionType; 
    346         mObjectSpaceSubdivisionType = NO_OBJ_SUBDIV; 
    347  
    348         // start with view space subdivison: prepare vsp tree for traversal 
    349         PrepareViewSpaceSubdivision(sampleRays, objects, forcedViewSpace); 
    350  
    351         // start object space subdivision immediately? 
    352         if (StartObjectSpaceSubdivision()) 
    353         {cout << "here1155 "; 
    354                 mObjectSpaceSubdivisionType = savedObjectSpaceSubdivisionType; 
    355                 PrepareObjectSpaceSubdivision(sampleRays, objects); 
    356         } 
    357356 
    358357        int i = 0; 
     
    389388                if (StartObjectSpaceSubdivision()) 
    390389                { 
    391                         mObjectSpaceSubdivisionType = savedObjectSpaceSubdivisionType; 
     390                        mObjectSpaceSubdivisionType = mSavedObjectSpaceSubdivisionType; 
    392391 
    393392                        cout << "starting object space subdivision at maximal view space subdivison depth " << mVspTree->mVspStats.maxDepth << " (" << mMinDepthForObjectSpaceSubdivion << ") " << endl; 
     
    401400                DEL_PTR(mCurrentCandidate); 
    402401        } 
    403          
    404         mObjectSpaceSubdivisionType = savedObjectSpaceSubdivisionType; 
     402 
     403        mObjectSpaceSubdivisionType = mSavedObjectSpaceSubdivisionType; 
    405404} 
    406405 
Note: See TracChangeset for help on using the changeset viewer.