Ignore:
Timestamp:
12/23/05 21:35:53 (18 years ago)
Author:
mattausch
Message:

axis aligned split for vsp bsp view cells

File:
1 edited

Legend:

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

    r479 r480  
    976976                                                                  vector<SortableEntry> &splitCandidates) const 
    977977{ 
    978   splitCandidates.clear(); 
    979    
    980   int requestedSize = 2 * (int)polys.size(); 
    981   // creates a sorted split candidates array   
    982   splitCandidates.reserve(requestedSize); 
    983    
    984   PolygonContainer::const_iterator it, it_end = polys.end(); 
    985  
    986   AxisAlignedBox3 box; 
    987  
    988   // insert all queries  
    989   for(it = polys.begin(); it != it_end; ++ it) 
    990   { 
    991           box.Initialize(); 
    992           box.Include(*(*it)); 
    993            
    994           splitCandidates.push_back(SortableEntry(SortableEntry::POLY_MIN, box.Min(axis), *it)); 
    995       splitCandidates.push_back(SortableEntry(SortableEntry::POLY_MAX, box.Max(axis), *it)); 
    996   } 
    997    
    998   stable_sort(splitCandidates.begin(), splitCandidates.end()); 
     978        splitCandidates.clear(); 
     979 
     980        int requestedSize = 2 * (int)polys.size(); 
     981        // creates a sorted split candidates array   
     982        splitCandidates.reserve(requestedSize); 
     983 
     984        PolygonContainer::const_iterator it, it_end = polys.end(); 
     985 
     986        AxisAlignedBox3 box; 
     987 
     988        // insert all queries  
     989        for(it = polys.begin(); it != it_end; ++ it) 
     990        { 
     991                box.Initialize(); 
     992                box.Include(*(*it)); 
     993                 
     994                splitCandidates.push_back(SortableEntry(SortableEntry::POLY_MIN, box.Min(axis), *it)); 
     995                splitCandidates.push_back(SortableEntry(SortableEntry::POLY_MAX, box.Max(axis), *it)); 
     996        } 
     997 
     998        stable_sort(splitCandidates.begin(), splitCandidates.end()); 
    999999} 
    10001000 
     
    26122612        return planePoly; 
    26132613} 
     2614 
     2615void BspNodeGeometry::ComputeBoundingBox(AxisAlignedBox3 &box) 
     2616{ 
     2617        Polygon3::IncludeInBox(mPolys, box); 
     2618} 
Note: See TracChangeset for help on using the changeset viewer.