Ignore:
Timestamp:
06/22/05 11:04:20 (19 years ago)
Author:
mattausch
Message:

added assumed visibility

Location:
trunk/VUT/GtpVisibility/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/GtpVisibility/src/CoherentHierarchicalCullingManager.cpp

    r142 r146  
    66//----------------------------------------------------------------------- 
    77CoherentHierarchicalCullingManager:: CoherentHierarchicalCullingManager(): 
    8 mAssumedVisibility(0) 
     8mAssumedVisibility(0), mThreshold(0) 
    99{ 
    1010        // initialise random generator because of assumed visibility 
     
    111111} 
    112112//----------------------------------------------------------------------- 
    113 void CoherentHierarchicalCullingManager::SetAssumedVisibility(int assumedVisibility) 
     113void CoherentHierarchicalCullingManager::SetAssumedVisibility(unsigned int assumedVisibility) 
    114114{ 
    115115        mAssumedVisibility = assumedVisibility; 
     116         
     117        mThreshold = 0; 
     118 
     119        if (mAssumedVisibility) 
     120        { 
     121                mThreshold =  RAND_MAX / mAssumedVisibility; 
     122        } 
    116123} 
    117124//----------------------------------------------------------------------- 
    118125bool CoherentHierarchicalCullingManager::DecideQueryTest(HierarchyNode *node) const 
    119126{ 
    120         bool result = false; 
    121         rand(); 
    122         return result; 
     127        return rand() < mThreshold; 
    123128} 
    124129} // namespace GtpVisibility 
  • trunk/VUT/GtpVisibility/src/VisibilityManager.cpp

    r130 r146  
    4646                case VisibilityEnvironment::COHERENT_HIERARCHICAL_CULLING: 
    4747                        mCullingManager = new CoherentHierarchicalCullingManager(); 
     48                        dynamic_cast<CoherentHierarchicalCullingManager *>(mCullingManager)-> 
     49                                SetAssumedVisibility(mAssumedVisibility); 
    4850                        break; 
    4951 
     
    9395        return mQueryManager; 
    9496} 
     97void VisibilityManager::SetAssumedVisibility(unsigned int assumedVisibility) 
     98{ 
     99        mAssumedVisibility = assumedVisibility; 
     100 
     101        if (VisibilityManager::GetCullingManagerType() ==  
     102                VisibilityEnvironment::COHERENT_HIERARCHICAL_CULLING) 
     103        { 
     104                dynamic_cast<CoherentHierarchicalCullingManager *>(mCullingManager)-> 
     105                                SetAssumedVisibility(mAssumedVisibility); 
     106        } 
     107} 
    95108} // namespace GtpVisibility 
Note: See TracChangeset for help on using the changeset viewer.