Ignore:
Timestamp:
07/19/06 18:31:33 (18 years ago)
Author:
mattausch
Message:

worked on vsp osp tree

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/VspOspTree.h

    r1142 r1143  
    3434class OspTree; 
    3535class KdIntersectable; 
    36  
    37  
    38  
     36class KdTree; 
     37class VspTree; 
    3938class KdTreeStatistics; 
     39 
     40 
    4041 
    4142template <typename T> class GtPriority 
     
    410411class VspLeaf: public VspNode  
    411412{ 
     413        friend VspTree; 
    412414 
    413415public: 
     
    802804                                                         float &pBack) const; 
    803805 
    804         void ComputeBoundingBox(const RayInfoContainer &rays, 
    805                 AxisAlignedBox3 *forcedBoundingBox); 
     806        void ComputeBoundingBox(const VssRayContainer &rays, 
     807                                                        AxisAlignedBox3 *forcedBoundingBox); 
    806808 
    807809        /** Evaluates candidate for splitting. 
     
    12621264        OspTree(); 
    12631265 
     1266        OspTree(const KdTree &kdTree); 
     1267 
    12641268        /** Default destructor. 
    12651269        */ 
     
    14811485                OspTraversalData &backData); 
    14821486 
    1483         void SplitObjects(const AxisAlignedPlane & splitPlane, 
     1487        void SplitObjects(KdLeaf *leaf, 
     1488                                          const AxisAlignedPlane & splitPlane, 
    14841489                                          const ObjectContainer &objects, 
    14851490                                          ObjectContainer &front, 
    14861491                                          ObjectContainer &back); 
    14871492 
    1488 #if DEPRECATED 
    1489          /** does some post processing on the objects in the new child leaves. 
    1490          */ 
    1491         void ProcessLeafObjects(KdLeaf *parent, KdLeaf *front, KdLeaf *back) const; 
    1492 #endif 
     1493        /** does some post processing on the objects in the new child leaves. 
     1494        */ 
     1495        void ProcessMultipleRefs(KdLeaf *leaf) const; 
     1496 
    14931497        /** Selects an axis aligned for the next split. 
    14941498                @returns cost for this split 
     
    16031607        */ 
    16041608        void ComputeBoundingBox(const ObjectContainer &objects, 
    1605                 AxisAlignedBox3 *forcedBoundingBox); 
     1609                                                        AxisAlignedBox3 *forcedBoundingBox); 
    16061610 
    16071611        void CollectDirtyCandidates(OspSplitCandidate *sc, 
     
    16161620                RayInfoContainer &rays); 
    16171621 
     1622 
     1623        void ReadEnvironment(); 
    16181624 
    16191625protected: 
     
    17001706        /// stores the kd node intersectables used for pvs 
    17011707        KdIntersectableMap mKdIntersectables; 
     1708 
     1709 
     1710private: 
     1711 
     1712        bool mCopyFromKdTree; 
    17021713}; 
    17031714 
Note: See TracChangeset for help on using the changeset viewer.