Changeset 2387 for GTP/trunk/Lib/Vis


Ignore:
Timestamp:
05/16/07 18:29:58 (17 years ago)
Author:
mattausch
Message:
 
Location:
GTP/trunk/Lib/Vis/Preprocessing/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/ViewCell.h

    r2380 r2387  
    246246        virtual bool IsLeaf() const = 0; 
    247247 
    248         inline bool SmallerPvs(const ViewCell *a, const ViewCell *b)  
    249         { 
    250                 // HACK: take scalar value because pvs may not have been stored properly 
    251 #if 1 
    252                 return a->mPvsCost < b->mPvsCost; 
    253 #else 
    254                 return a->GetPvs().EvalPvsCost() < b->GetPvs().EvalPvsCost(); 
    255 #endif 
    256         } 
    257  
    258         inline bool GreaterOrEqualPvs(const ViewCell *a, const ViewCell *b)  
    259         { 
    260                 return !SmallerPvs(a, b); 
    261         } 
    262  
    263         inline bool SmallerRenderCost(const ViewCell *a, const ViewCell *b)  
    264         { 
    265                 return a->GetRenderCost() < b->GetRenderCost(); 
    266         } 
    267  
    268         inline bool LargerRenderCost(const ViewCell *a, const ViewCell *b)  
    269         { 
    270                 return a->GetRenderCost() > b->GetRenderCost(); 
    271         } 
     248        friend inline bool SmallerPvs(const ViewCell *a, const ViewCell *b); 
     249        friend inline bool GreaterOrEqualPvs(const ViewCell *a, const ViewCell *b); 
     250        friend inline bool SmallerRenderCost(const ViewCell *a, const ViewCell *b); 
     251        friend inline bool LargerRenderCost(const ViewCell *a, const ViewCell *b); 
     252         
    272253 
    273254        /** Sets merge cost used for merging this view cell from other cells.  
     
    344325}; 
    345326 
     327inline bool SmallerPvs(const ViewCell *a, const ViewCell *b)  
     328{ 
     329        // HACK: take scalar value because pvs may not have been stored properly 
     330#if 1 
     331        return a->mPvsCost < b->mPvsCost; 
     332#else 
     333        return a->GetPvs().EvalPvsCost() < b->GetPvs().EvalPvsCost(); 
     334#endif 
     335} 
     336 
     337inline bool GreaterOrEqualPvs(const ViewCell *a, const ViewCell *b)  
     338{ 
     339        return !SmallerPvs(a, b); 
     340} 
     341 
     342inline bool SmallerRenderCost(const ViewCell *a, const ViewCell *b)  
     343{ 
     344        return a->GetRenderCost() < b->GetRenderCost(); 
     345} 
     346 
     347inline bool LargerRenderCost(const ViewCell *a, const ViewCell *b)  
     348{ 
     349        return a->GetRenderCost() > b->GetRenderCost(); 
     350} 
    346351 
    347352class ViewCellInterior: public ViewCell 
  • GTP/trunk/Lib/Vis/Preprocessing/src/ViewCellsManager.cpp

    r2381 r2387  
    12201220 
    12211221        // sort by render cost 
    1222         sort(viewCells.begin(), viewCells.end(), ViewCell::SmallerRenderCost); 
     1222        sort(viewCells.begin(), viewCells.end(), SmallerRenderCost); 
    12231223 
    12241224        minRenderCost = viewCells.front()->GetRenderCost(); 
     
    13231323         
    13241324        // sort by pvs size 
    1325         sort(viewCells.begin(), viewCells.end(), ViewCell::SmallerPvs); 
     1325        sort(viewCells.begin(), viewCells.end(), SmallerPvs); 
    13261326 
    13271327        maxPvs = viewCells.back()->GetTrianglesInPvs(); 
     
    14101410         
    14111411        // sort by pvs size 
    1412         sort(viewCells.begin(), viewCells.end(), ViewCell::SmallerPvs); 
     1412        sort(viewCells.begin(), viewCells.end(), SmallerPvs); 
    14131413 
    14141414        maxPvs = viewCells.back()->GetTrianglesInPvs(); 
     
    19231923  } 
    19241924   
    1925   sort(mViewCells.begin(), mViewCells.end(), ViewCell::SmallerPvs); 
     1925  sort(mViewCells.begin(), mViewCells.end(), SmallerPvs); 
    19261926   
    19271927  int start = (int)(mViewCells.size() * minValid); 
     
    40784078        if (sortViewCells) 
    40794079        {       // sort view cells to visualize the largest view cells 
    4080                 sort(mViewCells.begin(), mViewCells.end(), ViewCell::LargerRenderCost); 
     4080                sort(mViewCells.begin(), mViewCells.end(), LargerRenderCost); 
    40814081        } 
    40824082 
     
    54015401        { 
    54025402                // sort view cells to visualize the largest view cells 
    5403                 sort(mViewCells.begin(), mViewCells.end(), ViewCell::LargerRenderCost); 
     5403                sort(mViewCells.begin(), mViewCells.end(), LargerRenderCost); 
    54045404        } 
    54055405 
     
    64536453        { 
    64546454                // sort view cells to visualize the view cells with highest render cost 
    6455                 sort(mViewCells.begin(), mViewCells.end(), ViewCell::LargerRenderCost); 
     6455                sort(mViewCells.begin(), mViewCells.end(), LargerRenderCost); 
    64566456        } 
    64576457 
Note: See TracChangeset for help on using the changeset viewer.