- Timestamp:
- 11/07/05 23:17:14 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/VUT/GtpVisibilityPreprocessor/src/VssPreprocessor.cpp
r386 r387 76 76 77 77 if (mKdTree->CastRay(ray)) { 78 78 79 objectB = ray.intersections[0].mObject; 79 80 pointB = ray.Extrap(ray.intersections[0].mT); 81 80 82 } else { 81 83 objectB = NULL; … … 92 94 VssRay *vssRay = NULL; 93 95 94 if (objectA) { 95 vssRay = new VssRay(pointB, 96 pointA, 97 objectB, 98 objectA); 99 mVssRays.push_back(vssRay); 100 hits ++; 101 } 102 103 if (objectB) { 104 vssRay = new VssRay(pointA, 105 pointB, 106 objectA, 107 objectB); 108 mVssRays.push_back(vssRay); 109 hits ++; 110 96 bool validSample = true; 97 if (detectEmptyViewSpace) { 98 if (Distance(pointA, pointB) < 99 Distance(viewPoint, pointA) + Distance(viewPoint, pointB) - Limits::Small) { 100 validSample = false; 101 } 102 } 103 104 if (validSample) { 105 if (objectA) { 106 vssRay = new VssRay(pointB, 107 pointA, 108 objectB, 109 objectA); 110 mVssRays.push_back(vssRay); 111 hits ++; 112 } 113 114 if (objectB) { 115 vssRay = new VssRay(pointA, 116 pointB, 117 objectA, 118 objectB); 119 mVssRays.push_back(vssRay); 120 hits ++; 121 } 111 122 } 112 123 … … 122 133 if (viewSpaceBox) 123 134 box =*viewSpaceBox; 124 else 135 else 125 136 box = mKdTree->GetBox(); 126 137 … … 146 157 147 158 mSceneGraph->CollectObjects(&mObjects); 148 cout<<"#NUM_OBJECTS (Total numner of objects)\n"<<mObjects.size()<<endl;149 159 150 160 long startTime = GetTime(); … … 155 165 156 166 AxisAlignedBox3 box = mKdTree->GetBox(); 157 box.Enlarge(box.Size()*-Vector3(0.45, 0.45, 0.45)); 158 159 bool useViewSpaceBox = false; 167 168 169 if (1) 170 box.Enlarge(box.Size()*-Vector3(0.45, 0.45, 0.45)); 171 else { 172 // sample city like heights 173 box.SetMin(1, box.Min(1) + box.Size(1)*0.1); 174 box.SetMax(1, box.Min(1) + box.Size(1)*0.2); 175 } 176 177 bool useViewSpaceBox = true; 160 178 if (useViewSpaceBox) 161 179 viewSpaceBox = &box; … … 243 261 vssTree->Construct(mVssRays, viewSpaceBox); 244 262 263 cout<<"VssTree root PVS size = "<<vssTree->GetRootPvsSize()<<endl; 245 264 246 265
Note: See TracChangeset
for help on using the changeset viewer.