Ignore:
Timestamp:
11/11/05 21:28:02 (19 years ago)
Author:
mattausch
Message:

started kd based bottom-up view cells

File:
1 edited

Legend:

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

    r369 r406  
    172172int 
    173173Ray::ClassifyPlane(const Plane3 &plane,  
    174                                                                          const float minT,  
    175                                                                          const float maxT) const 
    176 { 
    177         const Vector3 entp = Extrap(minT); 
    178         const Vector3 extp = Extrap(maxT); 
    179    
    180         const int entSide = plane.Side(entp); 
    181         const int extSide = plane.Side(extp); 
     174                                   const float minT,  
     175                                   const float maxT, 
     176                                   Vector3 &entP, 
     177                                   Vector3 &extP) const 
     178{ 
     179        entP = Extrap(minT); 
     180        extP = Extrap(maxT); 
     181   
     182        const int entSide = plane.Side(entP); 
     183        const int extSide = plane.Side(extP); 
    182184 
    183185        if (entSide < 0) 
     186        { 
     187                if (extSide >= 0) 
    184188                { 
    185                         if (extSide >= 0) 
    186                                 { 
    187                                         return BACK_FRONT; 
    188                                 } 
    189                         return BACK; 
     189                        return BACK_FRONT; 
    190190                } 
     191                return BACK; 
     192        } 
    191193        else if (entSide > 0) 
    192                 { 
    193                         if (extSide <= 0) 
    194                                 return FRONT_BACK; 
     194        { 
     195                if (extSide <= 0) 
     196                        return FRONT_BACK; 
    195197                         
    196                         return FRONT; 
    197                 } 
     198                return FRONT; 
     199        } 
    198200        else if (entSide == 0) 
    199                 { 
    200                         if (extSide > 0) 
    201                                 return BACK_FRONT; 
    202                         else if (extSide < 0) 
    203                                 return FRONT_BACK; 
    204                 } 
     201        { 
     202                if (extSide > 0) 
     203                        return BACK_FRONT; 
     204                else if (extSide < 0) 
     205                        return FRONT_BACK; 
     206        } 
    205207         
    206208        return COINCIDENT; 
Note: See TracChangeset for help on using the changeset viewer.