Ignore:
Timestamp:
03/22/07 18:24:13 (18 years ago)
Author:
mattausch
Message:

removed dependency on ogre in gtpvisibility

Location:
GTP/trunk/Lib/Vis/OnlineCullingCHC/include
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingManager.h

    r2278 r2280  
    22#define _CullingManager_H__ 
    33 
     4#include <iostream> 
     5#include <fstream> 
    46#include "HierarchyInterface.h" 
     7 
    58 
    69 
     
    811 
    912/** This abstract class implements an interface for a specific culling  
    10         algorithm. The algorithm is either used to render a scene  
    11         or to make a visibility query. 
     13        algorithm. The algorithm is either used to render a scene or to make a visibility query. 
    1214*/ 
    1315class CullingManager 
     
    5456        void SetVisualizeCulledNodes(bool visualizeCulledNodes); 
    5557 
     58 
    5659protected: 
    5760         
     
    6366        HierarchyInterface *mHierarchyInterface; 
    6467        bool mVisualizeCulledNodes; 
     68 
    6569}; 
     70 
    6671} // namespace GtpVisibility 
    6772#endif // CullingManager 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyPreprocessingManager.h

    r2278 r2280  
    4242      Returns false if no viewcell was found. 
    4343    */ 
    44   virtual bool LocateViewCellIds(const Vector3 &center, 
    45                                 const float radius, 
    46                                 vector<int> *viewCellIds 
    47                                  ); 
    48  
     44  /*virtual bool LocateViewCellIds(const Vector3 &center, 
     45                                                                const float radius, 
     46                                                                vector<int> *viewCellIds 
     47                                                                ); 
     48*/ 
    4949 
    5050  /** 
     
    5252     a union with visibleNodes and visibleMeshes. Returns the number of added entries. 
    5353  */ 
    54   virtual int AddViewCellPVS(const int cellID, 
    55                             NodeInfoContainer *visibleNodes, 
    56                             MeshInfoContainer *visibleMeshes); 
     54  //virtual int AddViewCellPVS(const int cellID, 
     55//                                              NodeInfoContainer *visibleNodes, 
     56//                                              MeshInfoContainer *visibleMeshes); 
    5757 
    5858}; 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyQueryManager.h

    r2255 r2280  
    1919      QueryManager(hierarchyInterface, 0) {} 
    2020     
    21     /** 
    22        @sa QueryManager::ComputeCameraVisibility() 
    23      */ 
     21    /** @sa QueryManager::ComputeCameraVisibility() 
     22    */ 
    2423    virtual void ComputeCameraVisibility(const Camera &camera, 
    2524                                                                                 NodeInfoContainer *visibleNodes, 
     
    2928                                                                                 const bool approximateVisibility); 
    3029     
    31     /** 
    32        @sa QueryManager::ComputeFromPointVisibility() 
     30    /** @sa QueryManager::ComputeFromPointVisibility() 
    3331    */ 
    3432    virtual void ComputeFromPointVisibility(const Vector3 &point, 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/HierarchyInterface.h

    r2259 r2280  
    33 
    44#include "DistanceQueue.h" 
    5 #include "VisibilityMesh.h" 
     5//#include "VisibilityMesh.h" 
    66#include <stack> 
    77 
     
    1111 
    1212typedef std::vector<HierarchyNode *> NodeVector; 
    13 typedef std::vector<GtpVisibility::Mesh *> GeometryVector; 
    14 typedef std::vector<GtpVisibility::Patch *> PatchVector; 
     13//typedef std::vector<GtpVisibility::Mesh *> GeometryVector; 
     14//typedef std::vector<GtpVisibility::Patch *> PatchVector; 
     15 
    1516typedef std::pair<HierarchyNode *, OcclusionQuery *> QueryPair; 
    1617typedef std::pair<HierarchyNode *, bool> PendingQuery; 
     
    139140        */ 
    140141         
    141         /** Returns the geometry of a given hierarchy node.  
    142                 @param node the hierarchy node containing the geometry 
    143                 @param geometryList geometry is returned in this list 
    144                 @param includeChildren if the geometry of the children should be taken into account 
    145         */ 
    146         virtual void GetNodeGeometryList(GtpVisibility::HierarchyNode *node,     
    147                                                                          GeometryVector *geometryList,  
    148                                                                          bool includeChildren) = 0; 
    149  
    150142         
    151143        /** This is an optimization when issuing the occlusion test.  
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/PreprocessingManager.h

    r316 r2280  
    77#include "HierarchyInterface.h" 
    88#include "VisibilityInfo.h" 
    9 #include "VisibilityVector3.h" 
     9//#include "VisibilityVector3.h" 
    1010 
    1111namespace GtpVisibility { 
     
    8080        added to the container. Returns true if the corresponding PVS exists. 
    8181    */ 
    82     virtual bool GetPVS(const Vector3 &point, 
     82 /*   virtual bool GetPVS(const Vector3 &point, 
    8383                        const float radius, 
    8484                        NodeInfoContainer *visibleNodes, 
    8585                        MeshInfoContainer *visibleMeshes); 
    86      
     86   */  
    8787     
    8888   
     
    115115        Returns false if no viewcell was found. 
    116116    */ 
    117     virtual bool LocateViewCellIds(const Vector3 &center, 
     117/*    virtual bool LocateViewCellIds(const Vector3 &center, 
    118118                                   const float radius, 
    119119                                   vector<int> *viewCellIds 
    120120                                   ) = 0; 
    121      
     121  */   
    122122    /** 
    123123       Add a PVS of the given viewcell to the already evaluated PVS by computing 
    124124       a union with visibleNodes and visibleMeshes. Returns the number of added entries. 
    125125    */ 
    126     virtual int AddViewCellPVS(const int cellID, 
     126   /* virtual int AddViewCellPVS(const int cellID, 
    127127                                                           NodeInfoContainer *visibleNodes, 
    128128                                                           MeshInfoContainer *visibleMeshes ) = 0; 
    129      
     129    */ 
    130130    HierarchyInterface *mSceneTraverser; 
    131131  }; 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/QueryManager.h

    r2255 r2280  
    55 
    66#include "VisibilityInfo.h" 
    7 #include "VisibilityVector3.h" 
    8 #include "VisibilityCamera.h" 
    9 #include "VisibilityRay.h" 
     7//#include "VisibilityCamera.h" 
     8//#include "VisibilityRay.h" 
     9 
    1010 
    1111namespace GtpVisibility { 
    12    
     12 
     13 
    1314typedef std::vector<OcclusionQuery *> QueryList; 
    1415 
     
    2526public: 
    2627    /** Constructor taking a hierarchy interface as an argument. This allows to operate 
    27         on different hierarchy types, while reusing the implementation of the query methods. 
     28                on different hierarchy types, while reusing the implementation of the query methods. 
    2829     */ 
    29     QueryManager(HierarchyInterface *hierarchyInterface, int queryModes); 
    30      
    31     /**  
    32         Computes restricted visibility from point by using an explicit camera to execute 
    33         the visibility query. 
    34         @param camera The camera to be used 
     30    //QueryManager(HierarchyInterface *hierarchyInterface, int queryModes); 
     31    QueryManager(int queryModes); 
    3532 
    36         @param visibleNodes Pointer to the container where visible nodes should be added. 
    37         This set is formed of visible leafs or fully visible interior nodes. 
    38         If NULL no visible nodes are not evaluated. 
     33    /** Computes restricted visibility from point by using an explicit camera to execute 
     34                the visibility query. 
     35                @param camera The camera to be used 
    3936 
    40         @param visibleGeometry Pointer to the container where visible meshes should be added. 
    41         If NULL no visible meshes are not evaluated. 
     37                @param visibleNodes Pointer to the container where visible nodes should be added. 
     38                This set is formed of visible leafs or fully visible interior nodes. 
     39                If NULL no visible nodes are not evaluated. 
    4240 
    43         @param visiblePatches Pointer to the container where visible patches should be added. 
    44         If NULL no visible meshes are not evaluated. 
     41                @param visibleGeometry Pointer to the container where visible meshes should be added. 
     42                If NULL no visible meshes are not evaluated. 
    4543 
    46         @param relativeVisibility If true the visibility member for 
    47         NodeInfo and MeshInfo represent relative visibility; i.e. the number of visible 
    48         pixels divided by the the number of projected pixels. 
     44                @param visiblePatches Pointer to the container where visible patches should be added. 
     45                If NULL no visible meshes are not evaluated. 
    4946 
    50         @return true if the corresponding PVS exists. 
     47                @param relativeVisibility If true the visibility member for 
     48                NodeInfo and MeshInfo represent relative visibility; i.e. the number of visible 
     49                pixels divided by the the number of projected pixels. 
     50 
     51                @return true if the corresponding PVS exists. 
    5152    */ 
    52     virtual void 
    53     ComputeCameraVisibility(const Camera &camera, 
    54                             NodeInfoContainer *visibleNodes, 
    55                             MeshInfoContainer *visibleGeometry, 
    56                                 PatchInfoContainer *visiblePatches, 
    57                             const bool relativeVisibility, 
    58                                 const bool approximateVisibility 
    59                             ) = 0; 
    60      
     53    /*virtual void ComputeCameraVisibility(const Camera &camera, 
     54                                                                                 NodeInfoContainer *visibleNodes, 
     55                                                                                 MeshInfoContainer *visibleGeometry, 
     56                                                                                 PatchInfoContainer *visiblePatches, 
     57                                                                                 const bool relativeVisibility, 
     58                                                                                 const bool approximateVisibility) = 0; 
     59    */ 
    6160    /**  
    6261        Uses the specified point to execute the visibility query in all directions.  
    6362        @sa ComputeCameraVisibility() 
    6463    */ 
    65     virtual void 
     64    /*virtual void 
    6665    ComputeFromPointVisibility(const Vector3 &point, 
    67                                NodeInfoContainer *visibleNodes, 
    68                                MeshInfoContainer *visibleGeometry, 
    69                                    PatchInfoContainer *visiblePatches, 
    70                                const bool relativeVisibility, 
    71                                    const bool approximateVisibility 
    72                                ) = 0; 
    73      
     66                                                           NodeInfoContainer *visibleNodes, 
     67                                                           MeshInfoContainer *visibleGeometry, 
     68                                                           PatchInfoContainer *visiblePatches, 
     69                                                           const bool relativeVisibility, 
     70                                                           const bool approximateVisibility) = 0; 
     71    */ 
    7472  /**  
    7573      Ray shooting interface: finds an intersection with objects in the scene. 
    7674 
    7775      @param ray The given input ray (assuming the ray direction is normalized) 
    78  
    7976      @param visibleMeshes List of meshes intersecting the ray 
    80  
    8177      @param isGlobalLine If false only first intersection with opaque object is returned. 
    8278      Otherwise all intersections of the ray with the scene are found. 
    8379 
    84       @return true if there is any intersection.  
     80          @return true if there is any intersection.  
    8581        */ 
    86     virtual bool 
    87                 ShootRay(const Ray &ray, 
    88              std::vector<Mesh *> *visibleMeshes, 
    89              bool isGlobalLine = false 
    90              ); 
    91    
     82    /*virtual bool ShootRay(const Ray &ray, 
     83                                                  std::vector<Mesh *> *visibleMeshes, 
     84                                                  bool isGlobalLine = false); 
     85*/ 
    9286        /** Sets the hierarchy interface. 
    9387      @remark the traversal depends on the type of hierarchyInterface the scene consists of. 
     
    10195protected: 
    10296   
    103         HierarchyInterface *mHierarchyInterface; 
     97        //HierarchyInterface *mHierarchyInterface; 
    10498        int mQueryModes;   
    10599}; 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityInfo.h

    r318 r2280  
    44#include <vector> 
    55 
    6 #include "VisibilityMesh.h" 
     6//#include "VisibilityMesh.h" 
    77#include "HierarchyInterface.h" 
    88 
     
    132132} 
    133133 
    134 typedef VisibilityInfo<Patch *> PatchInfo; 
    135 typedef VisibilityInfo<Mesh *> MeshInfo; 
    136 typedef VisibilityInfo<HierarchyNode *> NodeInfo; 
    137  
    138  
    139134template<class T> 
    140135struct InfoContainer 
     
    143138}; 
    144139 
    145 typedef std::vector<PatchInfo> PatchInfoContainer; 
    146 typedef std::vector<MeshInfo> MeshInfoContainer; 
    147 typedef std::vector<NodeInfo> NodeInfoContainer; 
    148140 
    149141} // namespace GtpVisibility 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityManager.h

    r2278 r2280  
    6868        VisibilityEnvironment *GetVisibilityEnvironment(); 
    6969 
     70 
    7071protected: 
    7172         
Note: See TracChangeset for help on using the changeset viewer.