Changeset 2206 for GTP/trunk/Lib/Vis
- Timestamp:
- 03/07/07 18:35:10 (18 years ago)
- Location:
- GTP/trunk/Lib/Vis
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/OgreOcclusionCullingSceneManager.cpp
r2184 r2206 1910 1910 bool includeOverlays) 1911 1911 { 1912 if ( 0&& mNormalExecution)1912 if (1 && mNormalExecution) 1913 1913 { 1914 1914 TerrainSceneManager::_renderScene(camera, vp, includeOverlays); -
GTP/trunk/Lib/Vis/Preprocessing/src/BitVectorPvs.h
r2176 r2206 145 145 void MergeInPlace(const BitVectorPvs<T, S> &a) 146 146 { 147 cerr << " not implemented yet" << endl;147 cerr << "bitvector: merge in place not implemented yet" << endl; 148 148 } 149 149 -
GTP/trunk/Lib/Vis/Preprocessing/src/BvHierarchy.cpp
r2199 r2206 237 237 mRoot(NULL), 238 238 mTimeStamp(1), 239 mIsInitialSubdivision(false) 239 mIsInitialSubdivision(false), 240 mCachedObjects(NULL) 240 241 { 241 242 ReadEnvironment(); … … 1940 1941 1941 1942 1942 int BvHierarchy::CollectViewCells(const ObjectContainer &objects, 1943 ViewCellContainer &viewCells, 1944 const bool setCounter, 1945 const bool onlyUnmailedRays)// const 1946 { 1947 ViewCell::NewMail(); 1948 1943 1944 #if STORE_VIEWCELLS_WITH_BVH 1945 1946 1947 void BvHierarchy::ReleaseViewCells(const ObjectContainer &objects) 1948 { 1949 1949 ObjectContainer::const_iterator oit, oit_end = objects.end(); 1950 1950 1951 // use mailing to avoid dublicates 1951 for (oit = objects.begin(); oit != oit_end; ++ oit) 1952 { 1953 (*oit)->DelViewCells(); 1954 } 1955 1956 DEL_PTR(mCachedObjects); 1957 } 1958 1959 1960 void BvHierarchy::AssociateViewCellsWithObjects(const ObjectContainer &objects)// const 1961 { 1962 ObjectContainer::const_iterator oit, oit_end = objects.end(); 1963 1952 1964 const bool useMailBoxing = true; 1953 1965 1954 int numRays = 0;1955 // loop through all object and collect view cell pvs of this node1966 mCachedObjects = new ObjectContainer(); 1967 1956 1968 for (oit = objects.begin(); oit != oit_end; ++ oit) 1957 1969 { 1958 // use mailing to avoid duplicates 1959 numRays += CollectViewCells(*oit, viewCells, useMailBoxing, setCounter, onlyUnmailedRays); 1960 } 1961 1962 return numRays; 1963 } 1964 1965 1966 #if STORE_VIEWCELLS_WITH_BVH 1967 1968 1969 void BvHierarchy::ReleaseViewCells(const ObjectContainer &objects) 1970 { 1971 ObjectContainer::const_iterator oit, oit_end = objects.end(); 1972 1973 for (oit = objects.begin(); oit != oit_end; ++ oit) 1974 { 1975 (*oit)->DelViewCells(); 1976 } 1977 } 1978 1979 1980 void BvHierarchy::AssociateViewCellsWithObjects(const ObjectContainer &objects) const 1981 { 1982 ObjectContainer::const_iterator oit, oit_end = objects.end(); 1983 1984 const bool useMailBoxing = true; 1985 for (oit = objects.begin(); oit != oit_end; ++ oit) 1986 { 1987 ViewCell::NewMail(); 1988 // use mailing to avoid duplicates 1989 AssociateViewCellsWithObject(*oit, useMailBoxing); 1970 if (!(*oit)->GetOrCreateRays()->empty()) 1971 { 1972 ViewCell::NewMail(); 1973 // use mailing to avoid duplicates 1974 AssociateViewCellsWithObject(*oit, useMailBoxing); 1975 1976 mCachedObjects->push_back(*oit); 1977 } 1990 1978 } 1991 1979 } … … 1996 1984 if (!obj->GetOrCreateViewCells()->empty()) 1997 1985 { 1998 cerr << "AssociateViewCellsWithObject: view cells cache not working" << endl; 1986 cerr << "AssociateViewCellsWithObject: view cells cache error" << endl; 1987 exit(0); 1999 1988 } 2000 1989 … … 2025 2014 if (obj->GetOrCreateViewCells()->empty()) 2026 2015 { 2027 //cerr << "h";//CountViewCells: view cells empty, view cells cache not working" << endl;2016 cerr << "h";//CountViewCells: view cells empty, view cells cache not working" << endl; 2028 2017 return CountViewCellsFromRays(obj); 2029 2018 } … … 2188 2177 } 2189 2178 2179 2180 int BvHierarchy::CollectViewCells(const ObjectContainer &objects, 2181 ViewCellContainer &viewCells, 2182 const bool setCounter, 2183 const bool onlyUnmailedRays)// const 2184 { 2185 ViewCell::NewMail(); 2186 2187 // use mailing to avoid dublicates 2188 const bool useMailBoxing = true; 2189 2190 int numRays = 0; 2191 2192 if (mCachedObjects) 2193 { 2194 ObjectContainer::const_iterator oit, oit_end = mCachedObjects->end(); 2195 2196 // loop through all object and collect view cell pvs of this node 2197 for (oit = mCachedObjects->begin(); oit != oit_end; ++ oit) 2198 { 2199 // use mailing to avoid duplicates 2200 numRays += CollectViewCells(*oit, viewCells, useMailBoxing, setCounter, onlyUnmailedRays); 2201 } 2202 } 2203 else 2204 { 2205 ObjectContainer::const_iterator oit, oit_end = objects.end(); 2206 2207 // loop through all object and collect view cell pvs of this node 2208 for (oit = objects.begin(); oit != oit_end; ++ oit) 2209 { 2210 // use mailing to avoid duplicates 2211 numRays += CollectViewCellsFromRays(*oit, viewCells, useMailBoxing, setCounter, onlyUnmailedRays); 2212 } 2213 } 2214 2215 return numRays; 2216 } 2217 2218 2219 int BvHierarchy::CountViewCells(const ObjectContainer &objects)// const 2220 { 2221 int nViewCells = 0; 2222 2223 ViewCell::NewMail(); 2224 2225 if (mCachedObjects) 2226 { 2227 ObjectContainer::const_iterator oit, oit_end = mCachedObjects->end(); 2228 2229 // loop through all object and collect view cell pvs of this node 2230 for (oit = mCachedObjects->begin(); oit != oit_end; ++ oit) 2231 { 2232 // use mailing to avoid duplicates 2233 nViewCells += CountViewCells(*oit); 2234 } 2235 } 2236 else 2237 { 2238 ObjectContainer::const_iterator oit, oit_end = objects.end(); 2239 2240 // loop through all object and collect view cell pvs of this node 2241 for (oit = objects.begin(); oit != oit_end; ++ oit) 2242 { 2243 nViewCells += CountViewCellsFromRays(*oit); 2244 } 2245 } 2246 2247 return nViewCells; 2248 } 2249 2250 2190 2251 #else 2252 2253 int BvHierarchy::CollectViewCells(const ObjectContainer &objects, 2254 ViewCellContainer &viewCells, 2255 const bool setCounter, 2256 const bool onlyUnmailedRays)// const 2257 { 2258 ViewCell::NewMail(); 2259 2260 ObjectContainer::const_iterator oit, oit_end = objects.end(); 2261 2262 // use mailing to avoid dublicates 2263 const bool useMailBoxing = true; 2264 2265 int numRays = 0; 2266 // loop through all object and collect view cell pvs of this node 2267 for (oit = objects.begin(); oit != oit_end; ++ oit) 2268 { 2269 // use mailing to avoid duplicates 2270 numRays += CollectViewCells(*oit, viewCells, useMailBoxing, setCounter, onlyUnmailedRays); 2271 } 2272 2273 return numRays; 2274 } 2275 2276 2277 int BvHierarchy::CountViewCells(const ObjectContainer &objects)// const 2278 { 2279 int nViewCells = 0; 2280 2281 ViewCell::NewMail(); 2282 ObjectContainer::const_iterator oit, oit_end = objects.end(); 2283 2284 // loop through all object and collect view cell pvs of this node 2285 for (oit = objects.begin(); oit != oit_end; ++ oit) 2286 { 2287 nViewCells += CountViewCells(*oit); 2288 } 2289 2290 return nViewCells; 2291 } 2292 2191 2293 2192 2294 int BvHierarchy::CountViewCells(Intersectable *obj) //const … … 2274 2376 #endif 2275 2377 2276 2277 int BvHierarchy::CountViewCells(const ObjectContainer &objects)// const2278 {2279 int nViewCells = 0;2280 2281 ViewCell::NewMail();2282 ObjectContainer::const_iterator oit, oit_end = objects.end();2283 2284 // loop through all object and collect view cell pvs of this node2285 for (oit = objects.begin(); oit != oit_end; ++ oit)2286 {2287 nViewCells += CountViewCells(*oit);2288 }2289 2290 return nViewCells;2291 }2292 2378 2293 2379 -
GTP/trunk/Lib/Vis/Preprocessing/src/BvHierarchy.h
r2199 r2206 860 860 int AssociateViewCellsWithObject(Intersectable *obj, const bool useMailBoxing) const; 861 861 862 void AssociateViewCellsWithObjects(const ObjectContainer &objects) const;862 void AssociateViewCellsWithObjects(const ObjectContainer &objects);// const; 863 863 864 864 void ReleaseViewCells(const ObjectContainer &objects); … … 975 975 HierarchyManager *mHierarchyManager; 976 976 977 978 ObjectContainer *mCachedObjects; 977 979 978 980 //////////////////// -
GTP/trunk/Lib/Vis/Preprocessing/src/Exporter.cpp
r2176 r2206 289 289 } 290 290 default: 291 cout << "merg ingof object type " << obj->Type() << " not implemented yet" << endl;291 cout << "merge of object type " << obj->Type() << " not implemented yet" << endl; 292 292 break; 293 293 } -
GTP/trunk/Lib/Vis/Preprocessing/src/HashPvs.h
r2199 r2206 163 163 void MergeInPlace(const HashPvs<T, S> &a) 164 164 { 165 cerr << " not implemented yet" << endl;165 cerr << "hashpvs: mergeinplace not implemented yet" << endl; 166 166 } 167 167 -
GTP/trunk/Lib/Vis/Preprocessing/src/HierarchyManager.cpp
r2199 r2206 379 379 case SEQUENTIAL: 380 380 ConstructInterleaved(sampleRays, objects, forcedViewSpace); 381 PrintTimings(true); 381 382 break; 382 383 case GRADIENT: 383 384 ConstructInterleavedWithGradient(sampleRays, objects, forcedViewSpace); 385 PrintTimings(true); 384 386 break; 385 387 default: … … 533 535 cout << "\n" << ospSteps << " object space partition steps taken" << endl; 534 536 535 PrintTimings(true);537 //PrintTimings(true); 536 538 537 539 /////////////// … … 555 557 556 558 dirtyList.clear(); 557 PrintTimings(false);559 //PrintTimings(false); 558 560 } 559 561 else … … 647 649 } 648 650 649 PrintTimings(lastSplitWasOsp);651 //PrintTimings(lastSplitWasOsp); 650 652 } 651 653 -
GTP/trunk/Lib/Vis/Preprocessing/src/Intersectable.cpp
r2198 r2206 118 118 float Intersectable::GetArea() const 119 119 { 120 cerr << "GetArea not implemented yet " << endl;120 cerr << "GetArea not implemented yet for this type" << endl; 121 121 return 0; 122 122 } -
GTP/trunk/Lib/Vis/Preprocessing/src/Preprocessor.vcproj
r2199 r2206 222 222 OptimizeForWindowsApplication="TRUE" 223 223 AdditionalIncludeDirectories="..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\MultiLevelRayTracing;"$(QTDIR)\include\QtCore";"$(QTDIR)\include\QtGui";"$(QTDIR)\include";"$(QTDIR)\include\QtOpenGl";"$(CG_INC_PATH)";Timer;..\src\sparsehash\src\google\sparsehash;..\src\sparsehash\src\windows;..\src\sparsehash\src\google;..\src\sparsehash\src;..\src\ootl\;..\src\ootl\src\;..\src\ootl\src\cpp;..\src\ootl\src\cpp\include\;..\src\ootl\src\include\ootl;..\src\ootl\src\include\ootl\sandbox;..\src\ootl\src\cpp\include\ootl\mswin" 224 PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL;USE_QT;USE_HASH_PV S"224 PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL;USE_QT;USE_HASH_PV" 225 225 ExceptionHandling="TRUE" 226 226 RuntimeLibrary="2" … … 260 260 <Configuration 261 261 Name="release_noqt|Win32" 262 OutputDirectory=" Release"263 IntermediateDirectory=" Release"262 OutputDirectory="$(ConfigurationName)" 263 IntermediateDirectory="$(ConfigurationName)" 264 264 ConfigurationType="4" 265 265 CharacterSet="2"> … … 267 267 Name="VCCLCompilerTool" 268 268 Optimization="3" 269 GlobalOptimizations="TRUE" 270 InlineFunctionExpansion="2" 271 EnableIntrinsicFunctions="TRUE" 272 FavorSizeOrSpeed="1" 273 OmitFramePointers="TRUE" 274 EnableFiberSafeOptimizations="TRUE" 275 OptimizeForProcessor="0" 269 InlineFunctionExpansion="0" 270 FavorSizeOrSpeed="0" 271 OptimizeForProcessor="3" 276 272 OptimizeForWindowsApplication="TRUE" 277 AdditionalIncludeDirectories="..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\MultiLevelRayTracing; Timer"273 AdditionalIncludeDirectories="..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\MultiLevelRayTracing;"$(QTDIR)\include\QtCore";"$(QTDIR)\include\QtGui";"$(QTDIR)\include"" 278 274 PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL;NO_QT" 279 StringPooling="TRUE"280 275 ExceptionHandling="TRUE" 281 276 RuntimeLibrary="2" 282 EnableEnhancedInstructionSet="2"283 277 DisableLanguageExtensions="FALSE" 284 278 ForceConformanceInForLoopScope="FALSE" 285 RuntimeTypeInfo=" FALSE"279 RuntimeTypeInfo="TRUE" 286 280 UsePrecompiledHeader="0" 287 281 BrowseInformation="1" … … 495 489 <File 496 490 RelativePath=".\HashPvs.h"> 491 </File> 492 <File 493 RelativePath=".\HashPvs2.h"> 497 494 </File> 498 495 <File … … 1163 1160 </File> 1164 1161 <File 1162 RelativePath=".\sparsehash\src\google\sparsehash\hash_fun.h"> 1163 </File> 1164 <File 1165 1165 RelativePath=".\sparsehash\src\windows\hash_fun.h"> 1166 </File>1167 <File1168 RelativePath=".\sparsehash\src\google\sparsehash\hash_fun.h">1169 1166 </File> 1170 1167 <File -
GTP/trunk/Lib/Vis/Preprocessing/src/TestPreprocessor.vcproj
r2199 r2206 199 199 OptimizeForWindowsApplication="TRUE" 200 200 AdditionalIncludeDirectories="..\include;..\..\..\..\..\..\NonGTP\Boost;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;"$(QTDIR)\include\QtOpenGl";"$(QTDIR)\include\Qt";"$(QTDIR)\include\QtCore";"$(QTDIR)\include";QtInterface;..\src\sparsehash\src\;..\src\ootl\src\include\ootl;..\src\ootl\src\include\ootl\sandbox;$(NOINHERIT)" 201 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;GTP_INTERNAL;USE_QT;USE_CG;USE_HASH_PVS" 201 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;GTP_INTERNAL;USE_QT;USE_CG;USE_HASH_PV" 202 StringPooling="TRUE" 202 203 ExceptionHandling="TRUE" 203 204 RuntimeLibrary="2" … … 247 248 <Configuration 248 249 Name="release_noqt|Win32" 249 OutputDirectory=" Release"250 IntermediateDirectory=" Release"250 OutputDirectory="$(ConfigurationName)" 251 IntermediateDirectory="$(ConfigurationName)" 251 252 ConfigurationType="1" 252 253 CharacterSet="2"> … … 256 257 GlobalOptimizations="TRUE" 257 258 InlineFunctionExpansion="2" 258 EnableIntrinsicFunctions="TRUE" 259 FavorSizeOrSpeed="1" 260 OmitFramePointers="TRUE" 259 FavorSizeOrSpeed="1" 261 260 EnableFiberSafeOptimizations="TRUE" 262 OptimizeForProcessor=" 0"261 OptimizeForProcessor="3" 263 262 OptimizeForWindowsApplication="TRUE" 264 263 AdditionalIncludeDirectories="..\include;..\..\..\..\..\..\NonGTP\Boost;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;"$(QTDIR)\include\QtOpenGl";"$(QTDIR)\include\Qt";"$(QTDIR)\include\QtCore";"$(QTDIR)\include"" 265 264 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;GTP_INTERNAL;NO_QT" 266 StringPooling="TRUE" 267 MinimalRebuild="FALSE" 268 RuntimeLibrary="2" 269 EnableEnhancedInstructionSet="2" 270 RuntimeTypeInfo="FALSE" 265 RuntimeLibrary="2" 266 RuntimeTypeInfo="TRUE" 271 267 UsePrecompiledHeader="0" 272 268 WarningLevel="3" … … 280 276 OutputFile="../bin/release/Preprocessor.exe" 281 277 LinkIncremental="1" 282 AdditionalLibraryDirectories="..\src\GL;..\lib\release;..\..\Preprocessing\lib\release;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib;..\MultiLevelRayTracing\RTScene\Release;..\MultiLevelRayTracing\RTWorld\Release" 283 GenerateDebugInformation="FALSE" 284 SubSystem="1" 285 LargeAddressAware="0" 286 OptimizeReferences="2" 287 EnableCOMDATFolding="2" 288 OptimizeForWindows98="1" 278 AdditionalLibraryDirectories="..\src\GL;..\lib\release;..\..\Preprocessing\lib\release;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib;..\MultiLevelRayTracing\RTScene\Release;..\MultiLevelRayTracing\RTWorld\Release;"$(QTDIR)\lib";.\QtGlRenderer\Release" 279 GenerateDebugInformation="FALSE" 280 SubSystem="1" 281 OptimizeReferences="2" 282 EnableCOMDATFolding="2" 289 283 TargetMachine="1" 290 284 FixedBaseAddress="1"/> -
GTP/trunk/Lib/Vis/Preprocessing/src/ViewCellsManager.cpp
r2205 r2206 107 107 mMixtureDistribution->GenerateSamples(samplesPerPass, rays); 108 108 109 bool doubleRays = true;110 bool pruneInvalidRays = true;109 const bool doubleRays = true; 110 const bool pruneInvalidRays = true; 111 111 mPreprocessor->CastRays(rays, passSamples, doubleRays, pruneInvalidRays); 112 112 … … 118 118 119 119 mStats << 120 "#Pass\n" << pass ++ << endl<<121 "#Time\n" << time << endl<<122 "#TotalSamples\n" << totalRays<<endl;120 "#Pass\n" << pass ++ << endl << 121 "#Time\n" << time << endl << 122 "#TotalSamples\n" << totalRays << endl; 123 123 124 124 float last = 0.0f; … … 128 128 float ratio = 0.0f; 129 129 130 if (k < mMixtureDistribution->mDistributions.size())131 { 132 ratio = mMixtureDistribution->mDistributions[k]->mRatio -last;130 if (k < (int)mMixtureDistribution->mDistributions.size()) 131 { 132 ratio = mMixtureDistribution->mDistributions[k]->mRatio - last; 133 133 last = mMixtureDistribution->mDistributions[k]->mRatio; 134 134 } … … 925 925 cout << "computing sample contribution for " << (int)constructionSamples.size() << " samples ... "; 926 926 927 // computes sample contribution of cast rays TODO: leak?927 // computes sample contribution of cast rays 928 928 if (SAMPLE_AFTER_SUBDIVISION) 929 929 ComputeSampleContributions(constructionSamples, true, false); … … 2083 2083 float 2084 2084 ViewCellsManager::ComputeSampleContributions(const VssRayContainer &rays, 2085 const bool add Rays,2085 const bool addContributions, 2086 2086 const bool storeViewCells, 2087 2087 const bool useHitObjects) … … 2104 2104 else 2105 2105 { 2106 sum += ComputeSampleContribution(*(*it), add Rays, storeViewCells, useHitObjects);2106 sum += ComputeSampleContribution(*(*it), addContributions, storeViewCells, useHitObjects); 2107 2107 } 2108 2108 } … … 6900 6900 6901 6901 long startTime = GetTime(); 6902 Real timeDiff; 6902 6903 6903 6904 cout << "casting " << samplesPerPass << " samples ... "; … … 6905 6906 6906 6907 if (0) 6908 { 6907 6909 CastPassSamples(samplesPerPass, evalStrats, evaluationSamples); 6910 6911 timeDiff = TimeDiff(startTime, GetTime()); 6912 cout << "finished in " << timeDiff * 1e-3f << " secs" << endl; 6913 Debug << "finished in " << timeDiff * 1e-3f << " secs" << endl; 6914 6915 cout << "computing sample contributions of " << (int)evaluationSamples.size() << " samples ... "; 6916 Debug << "computing sample contributions of " << (int)evaluationSamples.size() << " samples ... "; 6917 6918 startTime = GetTime(); 6919 6920 ComputeSampleContributions(evaluationSamples, true, false); 6921 6922 timeDiff = TimeDiff(startTime, GetTime()); 6923 cout << "finished in " << timeDiff * 1e-3 << " secs" << endl; 6924 Debug << "finished in " << timeDiff * 1e-3 << " secs" << endl; 6925 } 6908 6926 else 6927 { 6909 6928 // use mixed distributions 6910 6929 CastEvaluationSamples(samplesPerPass, evaluationSamples); 6911 6930 6931 timeDiff = TimeDiff(startTime, GetTime()); 6932 cout << "finished in " << timeDiff * 1e-3f << " secs" << endl; 6933 Debug << "finished in " << timeDiff * 1e-3f << " secs" << endl; 6934 6935 // don't use sample contributions because already accounted for inside the mixture distribution! 6936 } 6937 6912 6938 castSamples += samplesPerPass; 6913 6914 Real timeDiff = TimeDiff(startTime, GetTime());6915 6916 cout << "finished in " << timeDiff * 1e-3f << " secs" << endl;6917 cout << "computing sample contributions of " << (int)evaluationSamples.size() << " samples ... ";6918 6919 Debug << "finished in " << timeDiff * 1e-3f << " secs" << endl;6920 Debug << "computing sample contributions of " << (int)evaluationSamples.size() << " samples ... ";6921 6922 startTime = GetTime();6923 6924 ComputeSampleContributions(evaluationSamples, true, false);6925 6926 timeDiff = TimeDiff(startTime, GetTime());6927 cout << "finished in " << timeDiff * 1e-3 << " secs" << endl;6928 Debug << "finished in " << timeDiff * 1e-3 << " secs" << endl;6929 6939 6930 6940 if ((castSamples >= samplesForStats + oldSamples) || -
GTP/trunk/Lib/Vis/Preprocessing/src/VspTree.cpp
r2199 r2206 2979 2979 } 2980 2980 default: 2981 cerr << " not implemented yet" << endl;2981 cerr << "collectdirtycandidates not implemented yet" << endl; 2982 2982 candidate = NULL; 2983 2983 break;
Note: See TracChangeset
for help on using the changeset viewer.