Changeset 450


Ignore:
Timestamp:
12/05/05 10:03:20 (19 years ago)
Author:
bittner
Message:

functional merge

Location:
trunk/VUT/GtpVisibilityPreprocessor/src
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/GtpVisibilityPreprocessor/src/Makefile

    r446 r450  
    11############################################################################# 
    22# Makefile for building: preprocessor 
    3 # Generated by qmake (1.07a) (Qt 3.3.2) on: Sun Dec 04 20:05:51 2005 
     3# Generated by qmake (1.07a) (Qt 3.3.2) on: Mon Dec 05 09:51:45 2005 
    44# Project:  preprocessor.pro 
    55# Template: app 
     
    8080                RayInfo.cpp \ 
    8181                RssTree.cpp \ 
    82                 RssPreprocessor.cpp 
     82                RssPreprocessor.cpp \ 
     83                ViewCellsManager.cpp \ 
     84                VspBspTree.cpp 
    8385OBJECTS =       Preprocessor.obj \ 
    8486                SamplingPreprocessor.obj \ 
     
    118120                RayInfo.obj \ 
    119121                RssTree.obj \ 
    120                 RssPreprocessor.obj 
     122                RssPreprocessor.obj \ 
     123                ViewCellsManager.obj \ 
     124                VspBspTree.obj 
    121125FORMS =  
    122126UICDECLS =       
     
    218222        -$(DEL_FILE) RssTree.obj 
    219223        -$(DEL_FILE) RssPreprocessor.obj 
     224        -$(DEL_FILE) ViewCellsManager.obj 
     225        -$(DEL_FILE) VspBspTree.obj 
    220226        -$(DEL_FILE) preprocessor.pdb 
    221227        -$(DEL_FILE) preprocessor.ilk 
     
    241247                ViewCell.h \ 
    242248                Environment.h \ 
    243                 RenderSimulator.h \ 
     249                ViewCellsManager.h \ 
     250                ViewCellBsp.h \ 
     251                VspBspTree.h \ 
     252                VspKdTree.h \ 
    244253                Containers.h \ 
    245254                AxisAlignedBox3.h \ 
     
    255264                Mesh.h \ 
    256265                KdTree.h \ 
    257                 ViewCellBsp.h \ 
    258                 VspKdTree.h \ 
    259266                Intersectable.h \ 
    260267                Pvs.h \ 
     
    273280                Polygon3.h \ 
    274281                ViewCell.h \ 
     282                ViewCellsManager.h \ 
    275283                RenderSimulator.h \ 
    276284                Containers.h \ 
     
    286294                VssRay.h \ 
    287295                Mesh.h \ 
    288                 ViewCellBsp.h \ 
    289                 VspKdTree.h \ 
    290                 Intersectable.h \ 
    291                 Material.h \ 
    292                 Statistics.h \ 
    293                 RayInfo.h \ 
    294                 Exporter.h \ 
     296                Intersectable.h \ 
     297                Material.h \ 
     298                Exporter.h \ 
     299                Statistics.h \ 
    295300                 
    296301 
     
    301306                Mesh.h \ 
    302307                KdTree.h \ 
    303                 ViewCellBsp.h \ 
    304                 ViewCell.h \ 
    305                 VspKdTree.h \ 
    306                 Intersectable.h \ 
    307                 Plane3.h \ 
    308                 Matrix4x4.h \ 
    309                 AxisAlignedBox3.h \ 
    310                 Material.h \ 
    311                 Pvs.h \ 
    312                 Rectangle3.h \ 
    313                 Vector3.h \ 
    314                 common.h \ 
    315                 Ray.h \ 
    316                 Polygon3.h \ 
    317                 Statistics.h \ 
    318                 VssRay.h \ 
    319                 RayInfo.h \ 
     308                Intersectable.h \ 
     309                Plane3.h \ 
     310                Matrix4x4.h \ 
     311                AxisAlignedBox3.h \ 
     312                Material.h \ 
     313                Pvs.h \ 
     314                Rectangle3.h \ 
     315                Vector3.h \ 
     316                common.h \ 
     317                Ray.h \ 
    320318                 
    321319 
     
    479477                Mesh.h \ 
    480478                KdTree.h \ 
    481                 ViewCellBsp.h \ 
    482                 VspKdTree.h \ 
    483                 Intersectable.h \ 
    484                 Plane3.h \ 
    485                 Matrix4x4.h \ 
    486                 AxisAlignedBox3.h \ 
    487                 Material.h \ 
    488                 Pvs.h \ 
    489                 Rectangle3.h \ 
    490                 Vector3.h \ 
    491                 common.h \ 
    492                 Ray.h \ 
    493                 Polygon3.h \ 
    494                 Statistics.h \ 
    495                 RayInfo.h \ 
     479                Intersectable.h \ 
     480                Plane3.h \ 
     481                Matrix4x4.h \ 
     482                AxisAlignedBox3.h \ 
     483                Material.h \ 
     484                Pvs.h \ 
     485                Rectangle3.h \ 
     486                Vector3.h \ 
     487                common.h \ 
     488                Ray.h \ 
    496489                 
    497490 
     
    550543                SceneGraph.h \ 
    551544                Triangle3.h \ 
    552                 ViewCell.h \ 
     545                ViewCellsManager.h \ 
    553546                Parser.h \ 
    554547                Containers.h \ 
     
    563556                common.h \ 
    564557                Ray.h \ 
     558                VssRay.h \ 
    565559                 
    566560 
     
    726720                VssRay.h \ 
    727721                VssTree.h \ 
     722                ViewCellsManager.h \ 
    728723                Containers.h \ 
    729724                AxisAlignedBox3.h \ 
     
    737732                Preprocessor.h \ 
    738733                Mesh.h \ 
    739                 ViewCellBsp.h \ 
    740                 VspKdTree.h \ 
    741                 Intersectable.h \ 
    742                 Material.h \ 
    743                 Statistics.h \ 
    744                 RayInfo.h \ 
    745                 Exporter.h \ 
     734                Intersectable.h \ 
     735                Material.h \ 
     736                Exporter.h \ 
     737                Statistics.h \ 
    746738                 
    747739 
     
    834826                Preprocessor.h \ 
    835827                Mesh.h \ 
     828                Intersectable.h \ 
     829                Material.h \ 
     830                Exporter.h \ 
     831                Statistics.h \ 
     832                 
     833 
     834ViewCellsManager.obj: ViewCellsManager.cpp  \ 
     835                ViewCellsManager.h \ 
     836                RenderSimulator.h \ 
     837                Mesh.h \ 
     838                Triangle3.h \ 
     839                ViewCell.h \ 
     840                Environment.h \ 
     841                X3dParser.h \ 
    836842                ViewCellBsp.h \ 
     843                KdTree.h \ 
    837844                VspKdTree.h \ 
    838                 Intersectable.h \ 
    839                 Material.h \ 
    840                 Statistics.h \ 
     845                Exporter.h \ 
     846                VspBspTree.h \ 
     847                Ray.h \ 
     848                VssRay.h \ 
     849                Containers.h \ 
     850                Matrix4x4.h \ 
     851                Vector3.h \ 
     852                common.h \ 
     853                Statistics.h \ 
     854                Intersectable.h \ 
     855                Plane3.h \ 
     856                AxisAlignedBox3.h \ 
     857                Material.h \ 
     858                Pvs.h \ 
     859                Rectangle3.h \ 
     860                Parser.h \ 
     861                Polygon3.h \ 
    841862                RayInfo.h \ 
    842                 Exporter.h \ 
     863                 
     864 
     865VspBspTree.obj: VspBspTree.cpp  \ 
     866                Plane3.h \ 
     867                VspBspTree.h \ 
     868                Mesh.h \ 
     869                common.h \ 
     870                ViewCell.h \ 
     871                Environment.h \ 
     872                Polygon3.h \ 
     873                Ray.h \ 
     874                AxisAlignedBox3.h \ 
     875                Exporter.h \ 
     876                Vector3.h \ 
     877                Containers.h \ 
     878                Statistics.h \ 
     879                VssRay.h \ 
     880                RayInfo.h \ 
     881                Intersectable.h \ 
     882                Matrix4x4.h \ 
     883                Material.h \ 
     884                Pvs.h \ 
     885                Rectangle3.h \ 
    843886                 
    844887 
  • trunk/VUT/GtpVisibilityPreprocessor/src/RssPreprocessor.cpp

    r448 r450  
    572572  delete rssTree; 
    573573   
    574  
    575574  return true; 
    576575} 
  • trunk/VUT/GtpVisibilityPreprocessor/src/RssPreprocessor.h

    r447 r450  
    9898                                ); 
    9999   
    100   void CastRay(const BspTree &tree, const VssRay & vssRay); 
    101          
    102   int AddObjectSamples(Intersectable *obj, const Ray &ray); 
    103100 
    104101  void 
     
    106103                        RssTree *rssTree 
    107104                        ); 
     105 
     106  void 
     107  CastRay(const BspTree &tree, const VssRay & vssRay); 
     108 
     109  int 
     110  AddObjectSamples(Intersectable *obj, const Ray &ray); 
     111 
     112 
    108113         
    109114}; 
  • trunk/VUT/GtpVisibilityPreprocessor/src/ViewCellBsp.cpp

    r448 r450  
    818818 
    819819#ifdef _DEBUG    
    820         if (frontPolys->empty() && backPolys->empty() && (coincident.size() > 2)) 
    821         {       for (PolygonContainer::iterator it = coincident.begin(); it != coincident.end(); ++it) 
    822                         Debug << (*it) << " " << (*it)->GetArea() << " " << (*it)->mParent << endl ; 
    823                 Debug << endl;} 
     820//      if (frontPolys->empty() && backPolys->empty() && (coincident.size() > 2)) 
     821//      {       for (PolygonContainer::iterator it = coincident.begin(); it != coincident.end(); ++it) 
     822//                      Debug << (*it) << " " << (*it)->GetArea() << " " << (*it)->mParent << endl ; 
     823//              Debug << endl;} 
    824824#endif 
    825825 
  • trunk/VUT/GtpVisibilityPreprocessor/src/VspBspTree.cpp

    r448 r450  
    365365 
    366366#ifdef _DEBUG    
    367         if (frontPolys->empty() && backPolys->empty() && (coincident.size() > 2)) 
    368         {       for (PolygonContainer::iterator it = coincident.begin(); it != coincident.end(); ++it) 
    369                         Debug << (*it) << " " << (*it)->GetArea() << " " << (*it)->mParent << endl ; 
    370                 Debug << endl;} 
     367//      if (frontPolys->empty() && backPolys->empty() && (coincident.size() > 2)) 
     368//      {       for (PolygonContainer::iterator it = coincident.begin(); it != coincident.end(); ++it) 
     369//                      Debug << (*it) << " " << (*it)->GetArea() << " " << (*it)->mParent << endl ; 
     370//              Debug << endl;} 
    371371#endif 
    372372 
     
    953953 
    954954#ifdef _DEBUG 
    955         Debug << "totalpvs: " << pvs << " ptotal: " << pOverall 
    956                   << " frontpvs: " << frontPvs << " pFront: " << pFront  
    957                   << " backpvs: " << backPvs << " pBack: " << pBack << endl << endl; 
     955//      Debug << "totalpvs: " << pvs << " ptotal: " << pOverall 
     956//                << " frontpvs: " << frontPvs << " pFront: " << pFront  
     957//                << " backpvs: " << backPvs << " pBack: " << pBack << endl << endl; 
    958958#endif 
    959959        return val; 
  • trunk/VUT/GtpVisibilityPreprocessor/src/X3dExporter.cpp

    r449 r450  
    1212#include "VssTree.h" 
    1313#include "VspBspTree.h" 
     14#include "RssTree.h" 
    1415 
    1516 
     
    12201221        } 
    12211222} 
     1223 
     1224 
     1225bool 
     1226X3dExporter::ExportRssTree2(const RssTree &tree, 
     1227                                                        const Vector3 direction 
     1228                                                        ) 
     1229{ 
     1230  stack<RssTreeNode *> tStack; 
     1231   
     1232   
     1233  mUseForcedMaterial = true; 
     1234 
     1235  Vector3 dirParam; 
     1236 
     1237  dirParam.x = VssRay::GetDirParam(0, Normalize(direction)); 
     1238  dirParam.y = VssRay::GetDirParam(1, Normalize(direction)); 
     1239 
     1240  float maxImportance = 0.0f; 
     1241  tStack.push(tree.GetRoot()); 
     1242  while (!tStack.empty()) { 
     1243         
     1244        RssTreeNode *node = tStack.top(); 
     1245    tStack.pop(); 
     1246         
     1247    if (!node->IsLeaf()) { 
     1248      RssTreeInterior *interior = (RssTreeInterior *)node; 
     1249          if (interior->axis < 3) { 
     1250                tStack.push(interior->front); 
     1251                tStack.push(interior->back); 
     1252          } else { 
     1253                if (dirParam[interior->axis-3] < interior->position) 
     1254                  tStack.push(interior->back); 
     1255                else 
     1256                  tStack.push(interior->front); 
     1257          } 
     1258    } else { 
     1259          RssTreeLeaf *leaf = (RssTreeLeaf *)node; 
     1260          if (tree.ValidLeaf(leaf)) { 
     1261                float i = leaf->GetImportance(); 
     1262                if (i > maxImportance) 
     1263                  maxImportance = i; 
     1264          } 
     1265        } 
     1266  } 
     1267 
     1268  tStack.push(tree.GetRoot()); 
     1269  while (!tStack.empty()) { 
     1270 
     1271        RssTreeNode *node = tStack.top(); 
     1272    tStack.pop(); 
     1273         
     1274                         
     1275    if (!node->IsLeaf()) { 
     1276      RssTreeInterior *interior = (RssTreeInterior *)node; 
     1277          if (interior->axis < 3) { 
     1278                tStack.push(interior->front); 
     1279                tStack.push(interior->back); 
     1280          } else { 
     1281                if (dirParam[interior->axis-3] < interior->position) 
     1282                  tStack.push(interior->back); 
     1283                else 
     1284                  tStack.push(interior->front); 
     1285          } 
     1286    } else { 
     1287          RssTreeLeaf *leaf = (RssTreeLeaf *)node; 
     1288          if (tree.ValidLeaf(leaf)) { 
     1289                AxisAlignedBox3 box; 
     1290                box = tree.GetShrankedBBox(leaf); 
     1291                Mesh *mesh = new Mesh; 
     1292                AddBoxToMesh(box, mesh); 
     1293                 
     1294                // get 4 corners of the ray directions 
     1295                 
     1296                mForcedMaterial.mDiffuseColor.b = 1.0f; 
     1297                mForcedMaterial.mDiffuseColor.r = leaf->GetImportance()/maxImportance; 
     1298                mForcedMaterial.mDiffuseColor.g = 1.0f - mForcedMaterial.mDiffuseColor.r; 
     1299                 
     1300                ExportMesh(mesh); 
     1301                delete mesh; 
     1302          } 
     1303        } 
     1304  } 
     1305 
     1306  mUseForcedMaterial = false; 
     1307 
     1308  return true; 
     1309} 
  • trunk/VUT/GtpVisibilityPreprocessor/src/main.cpp

    r448 r450  
    5858        p->KdTreeStatistics(cout); 
    5959         
     60   
    6061        // parse view cells related options 
    6162        p->PrepareViewCells(); 
  • trunk/VUT/GtpVisibilityPreprocessor/src/preprocessor.pro

    r446 r450  
    3939MutualVisibility.cpp Triangle3.cpp Rectangle3.cpp Plane3.cpp Polygon3.cpp \ 
    4040ViewCell.cpp ViewCellBsp.cpp Halton.cpp VssRay.cpp VssTree.cpp VssPreprocessor.cpp \ 
    41 RenderSimulator.cpp VspKdTree.cpp RayInfo.cpp RssTree.cpp RssPreprocessor.cpp 
     41RenderSimulator.cpp VspKdTree.cpp RayInfo.cpp RssTree.cpp RssPreprocessor.cpp \ 
     42ViewCellsManager.cpp VspBspTree.cpp 
    4243 
Note: See TracChangeset for help on using the changeset viewer.