Show
Ignore:
Timestamp:
03/21/12 18:36:20 (2 years ago)
Author:
robert
Message:

Ran script to remove trailing spaces and tabs

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/src/osgUtil/TriStripVisitor.cpp

    r12457 r13041  
    1 /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield  
     1/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield 
    22 * 
    3  * This library is open source and may be redistributed and/or modified under   
    4  * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or  
     3 * This library is open source and may be redistributed and/or modified under 
     4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 
    55 * (at your option) any later version.  The full license is in LICENSE file 
    66 * included with this distribution, and on the openscenegraph.org website. 
    7  *  
     7 * 
    88 * This library is distributed in the hope that it will be useful, 
    99 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
    10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
     10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
    1111 * OpenSceneGraph Public License for more details. 
    1212*/ 
     
    3434    public: 
    3535        WriteValue(std::ostream& o):_o(o) {} 
    36          
     36 
    3737        std::ostream& _o; 
    38                 
     38 
    3939        virtual void apply(const GLbyte& v) { _o << v; } 
    4040        virtual void apply(const GLshort& v) { _o << v; } 
     
    5050 
    5151    protected: 
    52      
     52 
    5353        WriteValue& operator = (const WriteValue&) { return *this; } 
    5454}; 
     
    7474        } 
    7575    } 
    76      
     76 
    7777    void add(osg::Array* array, osg::Geometry::AttributeBinding binding) 
    7878    { 
     
    8383                ++itr) 
    8484            { 
    85                 if ((*itr) == array)  
     85                if ((*itr) == array) 
    8686                    return; 
    8787            } 
     
    8989        } 
    9090    } 
    91      
     91 
    9292    typedef std::vector<osg::Array*> ArrayList; 
    93      
     93 
    9494    ArrayList _arrayList; 
    95      
     95 
    9696    bool operator() (unsigned int lhs, unsigned int rhs) const 
    9797    { 
     
    105105        } 
    106106        return false; 
    107     }    
     107    } 
    108108 
    109109    int compare(unsigned int lhs, unsigned int rhs) 
     
    117117            if (compare==1) return 1; 
    118118        } 
    119 //          
     119// 
    120120//         WriteValue wv(std::cout); 
    121 //          
     121// 
    122122//         std::cout<<"Values equal"<<std::endl; 
    123123//         for(ArrayList::iterator itr=_arrayList.begin(); 
     
    129129//             std::cout<<std::endl; 
    130130//         } 
    131          
     131 
    132132 
    133133        return 0; 
    134134    } 
    135      
     135 
    136136    void accept(osg::ArrayVisitor& av) 
    137137    { 
     
    146146protected: 
    147147 
    148     VertexAttribComparitor& operator = (const VertexAttribComparitor&) { return *this; }     
     148    VertexAttribComparitor& operator = (const VertexAttribComparitor&) { return *this; } 
    149149 
    150150}; 
     
    154154    public: 
    155155        RemapArray(const IndexList& remapping):_remapping(remapping) {} 
    156          
     156 
    157157        const IndexList& _remapping; 
    158          
     158 
    159159        template<class T> 
    160160        inline void remap(T& array) 
     
    169169            array.erase(array.begin()+_remapping.size(),array.end()); 
    170170        } 
    171          
     171 
    172172        virtual void apply(osg::Array&) {} 
    173173        virtual void apply(osg::ByteArray& array) { remap(array); } 
     
    221221    if (geom.getColorBinding()==osg::Geometry::BIND_PER_PRIMITIVE || 
    222222        geom.getColorBinding()==osg::Geometry::BIND_PER_PRIMITIVE_SET) return; 
    223      
     223 
    224224    if (geom.getSecondaryColorBinding()==osg::Geometry::BIND_PER_PRIMITIVE || 
    225225        geom.getSecondaryColorBinding()==osg::Geometry::BIND_PER_PRIMITIVE_SET) return; 
     
    261261                ++numNonSurfacePrimitives; 
    262262                break; 
    263                  
    264         } 
    265     } 
    266      
     263 
     264        } 
     265    } 
     266 
    267267    // nothitng to tri strip leave. 
    268268    if (!numSurfacePrimitives) return; 
    269      
     269 
    270270    // compute duplicate vertices 
    271      
     271 
    272272    typedef std::vector<unsigned int> IndexList; 
    273273    unsigned int numVertices = geom.getVertexArray()->getNumElements(); 
     
    278278        indices[i] = i; 
    279279    } 
    280      
     280 
    281281    VertexAttribComparitor arrayComparitor(geom); 
    282282    std::sort(indices.begin(),indices.end(),arrayComparitor); 
     
    292292            ++numDuplicate; 
    293293        } 
    294         else  
     294        else 
    295295        { 
    296296            //std::cout<<"  unique "<<indices[i]<<std::endl; 
     
    298298            ++numUnique; 
    299299        } 
    300          
     300 
    301301    } 
    302302//     std::cout<<"  Number of duplicates "<<numDuplicate<<std::endl; 
     
    304304//     std::cout<<"  Total number of vertices required "<<numUnique<<" vs original "<<numVertices<<std::endl; 
    305305//     std::cout<<"  % size "<<(float)numUnique/(float)numVertices*100.0f<<std::endl; 
    306      
     306 
    307307    IndexList remapDuplicatesToOrignals(numVertices); 
    308308    lastUnique = 0; 
     
    324324            lastUnique = i; 
    325325        } 
    326          
     326 
    327327    } 
    328328    unsigned int min_index = indices[lastUnique]; 
     
    337337 
    338338 
    339     // copy the arrays.     
     339    // copy the arrays. 
    340340    IndexList finalMapping(numVertices); 
    341341    IndexList copyMapping; 
     
    344344    for(i=0;i<numVertices;++i) 
    345345    { 
    346         if (remapDuplicatesToOrignals[i]==i)  
     346        if (remapDuplicatesToOrignals[i]==i) 
    347347        { 
    348348            finalMapping[i] = currentIndex; 
     
    351351        } 
    352352    } 
    353      
     353 
    354354    for(i=0;i<numVertices;++i) 
    355355    { 
    356         if (remapDuplicatesToOrignals[i]!=i)  
     356        if (remapDuplicatesToOrignals[i]!=i) 
    357357        { 
    358358            finalMapping[i] = finalMapping[remapDuplicatesToOrignals[i]]; 
    359359        } 
    360360    } 
    361     
    362      
     361 
     362 
    363363    MyTriangleIndexFunctor taf; 
    364364    taf._remapIndices.swap(finalMapping); 
     
    387387        } 
    388388    } 
    389      
     389 
    390390    float minimum_ratio_of_indices_to_unique_vertices = 1; 
    391391    float ratio_of_indices_to_unique_vertices = ((float)taf._in_indices.size()/(float)numUnique); 
     
    393393    OSG_INFO<<"TriStripVisitor::stripify(Geometry&): Number of indices"<<taf._in_indices.size()<<" numUnique"<< numUnique << std::endl; 
    394394    OSG_INFO<<"TriStripVisitor::stripify(Geometry&):     ratio indices/numUnique"<< ratio_of_indices_to_unique_vertices << std::endl; 
    395      
     395 
    396396    // only tri strip if there is point in doing so. 
    397397    if (!taf._in_indices.empty() && ratio_of_indices_to_unique_vertices>=minimum_ratio_of_indices_to_unique_vertices) 
     
    409409        // so increment to give to the corrent number of verticies. 
    410410        ++in_numVertices; 
    411          
     411 
    412412        // remap any shared vertex attributes 
    413413        RemapArray ra(copyMapping); 
     
    435435            QuadMap quadMap; 
    436436 
    437             // pick out quads and place them in the quadMap, and also look for the max  
     437            // pick out quads and place them in the quadMap, and also look for the max 
    438438            for(pitr=outPrimitives.begin(); 
    439439                pitr!=outPrimitives.end(); 
     
    455455                indices.reserve(4*quadMap.size()); 
    456456 
    457                 // adds all the quads into the quad primitive, in ascending order  
     457                // adds all the quads into the quad primitive, in ascending order 
    458458                // and the QuadMap stores the quad's in ascending order. 
    459459                for(QuadMap::iterator qitr=quadMap.begin(); 
     
    473473                    indices.push_back(pitr->Indices[(min_pos+2)%4]); 
    474474                    indices.push_back(pitr->Indices[(min_pos+3)%4]); 
    475                 }             
     475                } 
    476476 
    477477                bool inOrder = true; 
     
    507507                    } 
    508508                } 
    509             }     
    510         }         
    511  
    512         // handle non quad primitives     
     509            } 
     510        } 
     511 
     512        // handle non quad primitives 
    513513        for(pitr=outPrimitives.begin(); 
    514514            pitr!=outPrimitives.end(); 
     
    554554        geom.setPrimitiveSetList(new_primitives); 
    555555 
    556         #if 0  
    557         // debugging code for indentifying the tri-strips.        
     556        #if 0 
     557        // debugging code for indentifying the tri-strips. 
    558558                osg::Vec4Array* colors = new osg::Vec4Array(new_primitives.size()); 
    559559                for(i=0;i<colors->size();++i) 
     
    566566                geom.setColorArray(colors); 
    567567                geom.setColorBinding(osg::Geometry::BIND_PER_PRIMITIVE_SET); 
    568         #endif         
     568        #endif 
    569569    } 
    570570    else 
     
    582582    { 
    583583        stripify(*(*itr)); 
    584          
     584 
    585585        // osgUtil::SmoothingVisitor sv; 
    586586        // sv.smooth(*(*itr));