Ignore:
Timestamp:
07/12/06 00:52:51 (18 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/Exporter.cpp

    r863 r1121  
    1  
    21#include "X3dExporter.h" 
    32#include "VrmlExporter.h" 
     3#include "VspOspTree.h" 
     4#include "KdTree.h" 
     5 
    46 
    57namespace GtpVisibilityPreprocessor { 
     
    2628} 
    2729 
     30 
     31bool Exporter::ExportOspTree(const OspTree &ospTree, const int maxPvs) 
     32{ 
     33        vector<KdLeaf *> leaves; 
     34        ospTree.CollectLeaves(leaves); 
     35 
     36        mUseForcedMaterial = true; 
     37 
     38        vector<KdLeaf *>::const_iterator it, it_end = leaves.end(); 
     39 
     40        Material white;  
     41        white.mDiffuseColor.r = 1; 
     42        white.mDiffuseColor.g = 1; 
     43        white.mDiffuseColor.b = 1; 
     44         
     45        for (it = leaves.begin(); it != it_end; ++ it) 
     46        { 
     47                KdLeaf *leaf = *it; 
     48 
     49                SetWireframe(); 
     50                SetForcedMaterial(white); 
     51                ExportBox(ospTree.GetBBox(leaf)); 
     52 
     53                SetFilled(); 
     54 
     55                if (maxPvs) // color code pvs 
     56                { 
     57                        mForcedMaterial.mDiffuseColor.b = 1.0f; 
     58                        const float importance = (float)ospTree.ComputePvsSize(leaf->mObjects) / (float)maxPvs; 
     59 
     60                        mForcedMaterial.mDiffuseColor.r = importance; 
     61                        mForcedMaterial.mDiffuseColor.g = 1.0f - mForcedMaterial.mDiffuseColor.r; 
     62                } 
     63                else 
     64                { 
     65                        SetForcedMaterial(RandomMaterial()); 
     66                } 
     67 
     68                ExportGeometry(leaf->mObjects);  
     69        } 
     70 
     71        return true; 
    2872} 
     73 
     74} 
Note: See TracChangeset for help on using the changeset viewer.