Ignore:
Timestamp:
08/20/06 22:48:01 (18 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

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

    r1201 r1233  
    196196 
    197197 
    198         mLocalSplitCandidates = new vector<SortableEntry>; 
     198        mLocalSubdivisionCandidates = new vector<SortableEntry>; 
    199199 
    200200        Debug << endl; 
     
    230230{ 
    231231        DEL_PTR(mRoot); 
    232         DEL_PTR(mLocalSplitCandidates); 
     232        DEL_PTR(mLocalSubdivisionCandidates); 
    233233} 
    234234 
     
    639639 
    640640        // compute first split candidate 
    641         VspBspSplitCandidate splitCandidate; 
     641        VspBspSubdivisionCandidate splitCandidate; 
    642642        splitCandidate.mParentData = tData; 
    643643 
    644         EvalSplitCandidate(splitCandidate); 
     644        EvalSubdivisionCandidate(splitCandidate); 
    645645 
    646646        tQueue.push(splitCandidate); 
     
    742742                        << "#ViewCells\n" << viewCells << endl 
    743743                        << "#RenderCostDecrease\n" << renderCostDecr << endl  
    744                         << "#SplitCandidateCost\n" << splitCandidateCost << endl 
     744                        << "#SubdivisionCandidateCost\n" << splitCandidateCost << endl 
    745745                        << "#TotalRenderCost\n" << totalRenderCost << endl 
    746746                        << "#AvgRenderCost\n" << avgRenderCost << endl; 
     
    895895// subdivide node using a split plane queue 
    896896BspNode *VspBspTree::Subdivide(VspBspSplitQueue &tQueue, 
    897                                                            VspBspSplitCandidate &splitCandidate) 
     897                                                           VspBspSubdivisionCandidate &splitCandidate) 
    898898{ 
    899899        VspBspTraversalData &tData = splitCandidate.mParentData; 
     
    953953         
    954954                //-- push the new split candidates on the stack 
    955                 VspBspSplitCandidate frontCandidate; 
     955                VspBspSubdivisionCandidate frontCandidate; 
    956956                frontCandidate.mParentData = tFrontData; 
    957957 
    958                 VspBspSplitCandidate backCandidate; 
     958                VspBspSubdivisionCandidate backCandidate; 
    959959                backCandidate.mParentData = tBackData; 
    960960 
    961                 EvalSplitCandidate(frontCandidate); 
    962                 EvalSplitCandidate(backCandidate); 
     961                EvalSubdivisionCandidate(frontCandidate); 
     962                EvalSubdivisionCandidate(backCandidate); 
    963963         
    964964                tQueue.push(frontCandidate); 
     
    10421042 
    10431043/* 
    1044 void VspBspTree::EvalSplitCandidate(VspBspTraversalData &tData, 
    1045                                                                         VspBspSplitCandidate &splitData) 
     1044void VspBspTree::EvalSubdivisionCandidate(VspBspTraversalData &tData, 
     1045                                                                        VspBspSubdivisionCandidate &splitData) 
    10461046{ 
    10471047        VspBspTraversalData frontData; 
     
    10651065*/ 
    10661066 
    1067 void VspBspTree::EvalSplitCandidate(VspBspSplitCandidate &splitCandidate) 
     1067void VspBspTree::EvalSubdivisionCandidate(VspBspSubdivisionCandidate &splitCandidate) 
    10681068{ 
    10691069        VspBspTraversalData frontData; 
     
    13061306 
    13071307 
    1308 void VspBspTree::SortSplitCandidates(const RayInfoContainer &rays,  
     1308void VspBspTree::SortSubdivisionCandidates(const RayInfoContainer &rays,  
    13091309                                                                         const int axis,  
    13101310                                                                         float minBand,  
    13111311                                                                         float maxBand) 
    13121312{ 
    1313         mLocalSplitCandidates->clear(); 
     1313        mLocalSubdivisionCandidates->clear(); 
    13141314 
    13151315        int requestedSize = 2 * (int)(rays.size()); 
    13161316        // creates a sorted split candidates array 
    1317         if (mLocalSplitCandidates->capacity() > 500000 && 
    1318                 requestedSize < (int)(mLocalSplitCandidates->capacity() / 10) ) 
    1319         { 
    1320         delete mLocalSplitCandidates; 
    1321                 mLocalSplitCandidates = new vector<SortableEntry>; 
    1322         } 
    1323  
    1324         mLocalSplitCandidates->reserve(requestedSize); 
     1317        if (mLocalSubdivisionCandidates->capacity() > 500000 && 
     1318                requestedSize < (int)(mLocalSubdivisionCandidates->capacity() / 10) ) 
     1319        { 
     1320        delete mLocalSubdivisionCandidates; 
     1321                mLocalSubdivisionCandidates = new vector<SortableEntry>; 
     1322        } 
     1323 
     1324        mLocalSubdivisionCandidates->reserve(requestedSize); 
    13251325 
    13261326        if (0) 
     
    13391339                if (0) ClipValue(pos, minBand, maxBand); 
    13401340                 
    1341                 mLocalSplitCandidates->push_back(SortableEntry(positive ? SortableEntry::ERayMin : SortableEntry::ERayMax,  
     1341                mLocalSubdivisionCandidates->push_back(SortableEntry(positive ? SortableEntry::ERayMin : SortableEntry::ERayMax,  
    13421342                                                                        pos, (*ri).mRay)); 
    13431343 
     
    13471347                if (0) ClipValue(pos, minBand, maxBand); 
    13481348 
    1349                 mLocalSplitCandidates->push_back(SortableEntry(positive ? SortableEntry::ERayMax : SortableEntry::ERayMin,  
     1349                mLocalSubdivisionCandidates->push_back(SortableEntry(positive ? SortableEntry::ERayMax : SortableEntry::ERayMin,  
    13501350                                                                        pos, (*ri).mRay)); 
    13511351        } 
    13521352 
    1353         stable_sort(mLocalSplitCandidates->begin(), mLocalSplitCandidates->end()); 
     1353        stable_sort(mLocalSubdivisionCandidates->begin(), mLocalSubdivisionCandidates->end()); 
    13541354} 
    13551355 
     
    13801380        const float maxBand = minBox + mMaxBand * sizeBox; 
    13811381 
    1382         SortSplitCandidates(usedRays, axis, minBand, maxBand); 
     1382        SortSubdivisionCandidates(usedRays, axis, minBand, maxBand); 
    13831383 
    13841384        // go through the lists, count the number of objects left and right 
     
    14421442        Intersectable::NewMail(); 
    14431443 
    1444         vector<SortableEntry>::const_iterator ci, ci_end = mLocalSplitCandidates->end(); 
    1445  
    1446         for (ci = mLocalSplitCandidates->begin(); ci != ci_end; ++ ci) 
     1444        vector<SortableEntry>::const_iterator ci, ci_end = mLocalSubdivisionCandidates->end(); 
     1445 
     1446        for (ci = mLocalSubdivisionCandidates->begin(); ci != ci_end; ++ ci) 
    14471447        { 
    14481448                VssRay *ray; 
Note: See TracChangeset for help on using the changeset viewer.