summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Redfern <tim@eclectronics.org>2012-05-14 19:00:08 +0100
committerTim Redfern <tim@eclectronics.org>2012-05-14 19:00:08 +0100
commitdbf9692b03ac2485f771993184222f7170e71cf2 (patch)
tree9a17e44304856b5daa9d91172eb40f6e1783b1da
parente333ec0659a74899fbd75c5ed490089d0fd7d244 (diff)
working on background segmentation
-rw-r--r--cvtest/addons.make3
-rw-r--r--cvtest/config.make34
-rw-r--r--cvtest/cvtest.cbp54
-rw-r--r--cvtest/cvtest.layout19
-rw-r--r--cvtest/cvtest_win.cbp388
-rw-r--r--cvtest/cvtest_win.depend1402
-rw-r--r--cvtest/cvtest_win.layout16
-rwxr-xr-xcvtest/src/imageComparator.h71
-rw-r--r--cvtest/src/main.cpp16
-rw-r--r--cvtest/src/testApp.cpp280
-rw-r--r--cvtest/src/testApp.h88
-rw-r--r--gaunt01/gaunt01.cbp56
-rw-r--r--gaunt01/src/bird.cpp15
-rw-r--r--gaunt01/src/main.cpp4
-rw-r--r--gaunt01/src/player.cpp2
-rw-r--r--gaunt01/src/testApp.cpp216
-rw-r--r--gaunt01/src/testApp.h29
-rw-r--r--gaunt01/src/trapdoor.cpp22
-rw-r--r--gaunt01/src/trapdoor.h5
19 files changed, 2530 insertions, 190 deletions
diff --git a/cvtest/addons.make b/cvtest/addons.make
new file mode 100644
index 0000000..e690c7b
--- /dev/null
+++ b/cvtest/addons.make
@@ -0,0 +1,3 @@
+ofxOpenCv
+ofxBlobsManager
+
diff --git a/cvtest/config.make b/cvtest/config.make
new file mode 100644
index 0000000..9ce3e2f
--- /dev/null
+++ b/cvtest/config.make
@@ -0,0 +1,34 @@
+# add custom variables to this file
+
+# OF_ROOT allows to move projects outside apps/* just set this variable to the
+# absoulte path to the OF root folder
+
+OF_ROOT = ../../openFrameworks-020912
+
+
+# USER_CFLAGS allows to pass custom flags to the compiler
+# for example search paths like:
+# USER_CFLAGS = -I src/objects
+
+USER_CFLAGS =
+
+
+# USER_LDFLAGS allows to pass custom flags to the linker
+# for example libraries like:
+# USER_LD_FLAGS = libs/libawesomelib.a
+
+USER_LDFLAGS =
+
+
+# use this to add system libraries for example:
+# USER_LIBS = -lpango
+
+USER_LIBS =
+
+
+# change this to add different compiler optimizations to your project
+
+USER_COMPILER_OPTIMIZATION = -march=native -mtune=native -Os
+
+
+EXCLUDE_FROM_SOURCE="bin,.xcodeproj,obj"
diff --git a/cvtest/cvtest.cbp b/cvtest/cvtest.cbp
new file mode 100644
index 0000000..9b3cf08
--- /dev/null
+++ b/cvtest/cvtest.cbp
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<CodeBlocks_project_file>
+ <FileVersion major="1" minor="6" />
+ <Project>
+ <Option title="cvtest" />
+ <Option makefile_is_custom="1" />
+ <Option pch_mode="2" />
+ <Option compiler="gcc" />
+ <Option virtualFolders="addons/;src/;build config/;" />
+ <Build>
+ <Target title="Debug">
+ <Option output="bin/$(PROJECT_NAME)_debug" prefix_auto="1" extension_auto="1" />
+ <Option working_dir="bin" />
+ <Option object_output="obj/Debug/" />
+ <Option external_deps="../../../libs/openFrameworksCompiled/lib/linux/libopenFrameworksDebug.a;" />
+ <Option type="1" />
+ <Option compiler="gcc" />
+ <Option projectLinkerOptionsRelation="2" />
+ </Target>
+ <Target title="Release">
+ <Option output="bin/$(PROJECT_NAME)" prefix_auto="1" extension_auto="1" />
+ <Option working_dir="bin" />
+ <Option object_output="obj/Release/" />
+ <Option external_deps="../../../libs/openFrameworksCompiled/lib/linux/libopenFrameworks.a;" />
+ <Option type="1" />
+ <Option compiler="gcc" />
+ <Option projectLinkerOptionsRelation="2" />
+ </Target>
+ </Build>
+ <Unit filename="Makefile">
+ <Option virtualFolder="build config/" />
+ </Unit>
+ <Unit filename="addons.make">
+ <Option virtualFolder="build config/" />
+ </Unit>
+ <Unit filename="config.make">
+ <Option virtualFolder="build config" />
+ </Unit>
+ <Unit filename="src/main.cpp">
+ <Option virtualFolder="src/" />
+ </Unit>
+ <Unit filename="src/testApp.cpp">
+ <Option virtualFolder="src/" />
+ </Unit>
+ <Unit filename="src/testApp.h">
+ <Option virtualFolder="src/" />
+ </Unit>
+ <Extensions>
+ <code_completion />
+ <envvars />
+ <debugger />
+ </Extensions>
+ </Project>
+</CodeBlocks_project_file>
diff --git a/cvtest/cvtest.layout b/cvtest/cvtest.layout
new file mode 100644
index 0000000..f61050e
--- /dev/null
+++ b/cvtest/cvtest.layout
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<CodeBlocks_layout_file>
+ <ActiveTarget name="Debug" />
+ <File name="Makefile" open="0" top="0" tabpos="5">
+ <Cursor position="0" topLine="24" />
+ </File>
+ <File name="addons.make" open="1" top="0" tabpos="1">
+ <Cursor position="26" topLine="0" />
+ </File>
+ <File name="config.make" open="0" top="0" tabpos="2">
+ <Cursor position="361" topLine="0" />
+ </File>
+ <File name="src/testApp.cpp" open="1" top="1" tabpos="3">
+ <Cursor position="3019" topLine="86" />
+ </File>
+ <File name="src/testApp.h" open="1" top="0" tabpos="2">
+ <Cursor position="371" topLine="0" />
+ </File>
+</CodeBlocks_layout_file>
diff --git a/cvtest/cvtest_win.cbp b/cvtest/cvtest_win.cbp
new file mode 100644
index 0000000..00a88b3
--- /dev/null
+++ b/cvtest/cvtest_win.cbp
@@ -0,0 +1,388 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<CodeBlocks_project_file>
+ <FileVersion major="1" minor="6" />
+ <Project>
+ <Option title="gaunt01" />
+ <Option makefile="makefile" />
+ <Option pch_mode="2" />
+ <Option compiler="gcc" />
+ <Option virtualFolders="addons\;src\;addons\ofxOpenCv\libs\opencv\include\opencv2\core\;addons\ofxOpenCv\libs\opencv\include\opencv2\flann\;addons\ofxOpenCv\libs\opencv\include\opencv2\highgui\;addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc\;addons\ofxOpenCv\libs\opencv\include\opencv\;addons\ofxOpenCv\src\;" />
+ <Build>
+ <Target title="release">
+ <Option output="bin\$(PROJECT_NAME)" prefix_auto="1" extension_auto="1" />
+ <Option working_dir="bin" />
+ <Option object_output="obj\release" />
+ <Option external_deps="..\..\openFrameworks-020912\libs\openFrameworksCompiled\lib\win_cb\openFrameworks.lib;" />
+ <Option type="1" />
+ <Option compiler="gcc" />
+ <Option projectLinkerOptionsRelation="2" />
+ <Compiler>
+ <Add option="-O2" />
+ </Compiler>
+ <Linker>
+ <Add option="-s" />
+ <Add option="../../openFrameworks-020912/libs/openFrameworksCompiled/lib/win_cb/openFrameworks.lib" />
+ </Linker>
+ </Target>
+ <Target title="debug">
+ <Option output="bin\$(PROJECT_NAME)_DEBUG" prefix_auto="1" extension_auto="1" />
+ <Option working_dir="bin" />
+ <Option object_output="obj\debug\" />
+ <Option external_deps="..\..\openFrameworks-020912\libs\openFrameworksCompiled\lib\win_cb\openFrameworksDebug.lib;" />
+ <Option type="1" />
+ <Option compiler="gcc" />
+ <Option projectLinkerOptionsRelation="2" />
+ <Compiler>
+ <Add option="-g" />
+ </Compiler>
+ <Linker>
+ <Add option="../../openFrameworks-020912/libs/openFrameworksCompiled/lib/win_cb/openFrameworksDebug.lib" />
+ </Linker>
+ </Target>
+ </Build>
+ <Compiler>
+ <Add option="-Wno-multichar" />
+ <Add directory="..\..\openFrameworks-020912\libs\glu\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\freetype\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\freetype\include\freetype2" />
+ <Add directory="..\..\openFrameworks-020912\libs\FreeImage\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\quicktime\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\rtAudio\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\fmodex\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\videoInput\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\glew\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\glut\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\3d" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\app" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\communication" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\events" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\gl" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\graphics" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\math" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\sound" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\types" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\utils" />
+ <Add directory="..\..\openFrameworks-020912\libs\openFrameworks\video" />
+ <Add directory="..\..\openFrameworks-020912\libs\poco\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\tess2\include" />
+ <Add directory="..\..\openFrameworks-020912\libs\cairo\include\cairo" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\src" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\calib3d" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\contrib" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\core" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\features2d" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\gpu" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\highgui" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\legacy" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\ml" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\objdetect" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\video" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\android" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\iphone" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\linux" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\linux64" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\osx" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\vs2010" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\win_cb" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\android\armeabi" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\lib\android\armeabi-v7a" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\addons\ofxRay\src" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxOpenCv\addons\ofxGrabCam\src" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxRay\src" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxXmlSettings\src" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxXmlSettings\libs" />
+ <Add directory="..\..\openFrameworks-020912\addons\ofxBlobsManager\src" />
+ </Compiler>
+ <Linker>
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_legacy220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_haartraining_engine.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_features2d220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_calib3d220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_objdetect220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_imgproc220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_video220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_highgui220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_ml220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_core220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_lapack.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_flann220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_contrib220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libopencv_gpu220.a" />
+ <Add option="../../openFrameworks-020912/addons/ofxOpenCv/libs/opencv/lib/win_cb/libzlib.a" />
+ <Add library="..\..\openFrameworks-020912\libs\FreeImage\lib\win_cb\FreeImage.lib" />
+ <Add library="..\..\openFrameworks-020912\libs\rtAudio\lib\win_cb\librtaudio.a" />
+ <Add library="..\..\openFrameworks-020912\libs\quicktime\lib\win_cb\qtmlClient.lib" />
+ <Add library="..\..\openFrameworks-020912\libs\cairo\lib\win_cb\libcairo.a" />
+ <Add library="..\..\openFrameworks-020912\libs\cairo\lib\win_cb\libpixman-1.a" />
+ <Add library="..\..\openFrameworks-020912\libs\freetype\lib\win_cb\libfreetype.a" />
+ <Add library="..\..\openFrameworks-020912\libs\glut\lib\win_cb\libglut.a" />
+ <Add library="..\..\openFrameworks-020912\libs\videoInput\lib\win_cb\videoInputLib.a" />
+ <Add library="..\..\openFrameworks-020912\libs\fmodex\lib\win_cb\libfmodex.a" />
+ <Add library="..\..\openFrameworks-020912\libs\glew\lib\win_cb\glew32s.lib" />
+ <Add library="..\..\openFrameworks-020912\libs\glu\lib\win_cb\glu32.lib" />
+ <Add library="..\..\openFrameworks-020912\libs\poco\lib\win_cb\libPocoNetmt.a" />
+ <Add library="..\..\openFrameworks-020912\libs\poco\lib\win_cb\libPocoUtilmt.a" />
+ <Add library="..\..\openFrameworks-020912\libs\poco\lib\win_cb\libPocoXMLmt.a" />
+ <Add library="..\..\openFrameworks-020912\libs\poco\lib\win_cb\libPocoFoundationmt.a" />
+ <Add library="..\..\openFrameworks-020912\libs\tess2\lib\win_cb\libtess2.a" />
+ <Add library="opengl32" />
+ <Add library="gdi32" />
+ <Add library="msimg32" />
+ <Add library="glu32" />
+ <Add library="dsound" />
+ <Add library="winmm" />
+ <Add library="dxguid" />
+ <Add library="strmbase" />
+ <Add library="strmiids" />
+ <Add library="z" />
+ <Add library="uuid" />
+ <Add library="ole32" />
+ <Add library="oleaut32" />
+ <Add library="setupapi" />
+ <Add library="wsock32" />
+ <Add library="ws2_32" />
+ <Add library="Iphlpapi" />
+ </Linker>
+ <ExtraCommands>
+ <Add after='xcopy /e /i /y &quot;$(PROJECT_DIR)..\..\openFrameworks-020912\export\win_cb\*.dll&quot; &quot;$(PROJECT_DIR)bin&quot;' />
+ <Add after='cmd /c if not exist &quot;$(PROJECT_DIR)bin/data&quot; mkdir &quot;$(PROJECT_DIR)bin/data&quot;' />
+ <Mode after="always" />
+ </ExtraCommands>
+ <Unit filename="src\bird.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\bird.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\main.cpp">
+ <Option virtualFolder="src" />
+ </Unit>
+ <Unit filename="src\morphmesh.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\morphmesh.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\normBindTexture.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\normBindTexture.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\outsidePolygon.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\outsidePolygon.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\player.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\player.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\testApp.cpp">
+ <Option virtualFolder="src" />
+ </Unit>
+ <Unit filename="src\testApp.h">
+ <Option virtualFolder="src" />
+ </Unit>
+ <Unit filename="src\trapdoor.cpp">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="src\trapdoor.h">
+ <Option virtualFolder="src\" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxBlobsManager\src\ofxBlobsManager.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxBlobsManager\src\ofxBlobsManager.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxBlobsManager\src\ofxStoredBlobVO.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxBlobsManager\src\ofxStoredBlobVO.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\core\core_c.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\core" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\core\types_c.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\core" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\all_indices.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\allocator.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\autotuned_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\composite_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\dist.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\general.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\ground_truth.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\hdf5.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\heap.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\index_testing.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\kdtree_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\kmeans_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\linear_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\logger.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\matrix.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\nn_index.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\object_factory.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\random.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\result_set.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\sampling.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\saving.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\simplex_downhill.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\flann\timer.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\flann" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\highgui\highgui_c.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\highgui" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc\imgproc_c.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc\types_c.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv2\imgproc" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\cv.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\cvaux.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\cvwimage.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\cxcore.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\cxmisc.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\highgui.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\libs\opencv\include\opencv\ml.h">
+ <Option virtualFolder="addons\ofxOpenCv\libs\opencv\include\opencv" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvBlob.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvColorImage.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvColorImage.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvConstants.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvContourFinder.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvContourFinder.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvFloatImage.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvFloatImage.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvGrayscaleImage.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvGrayscaleImage.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvHaarFinder.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvHaarFinder.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvImage.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvImage.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvMain.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvShortImage.cpp">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvShortImage.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxOpenCv.h">
+ <Option virtualFolder="addons\ofxOpenCv\src" />
+ </Unit>
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Base.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Base.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Plane.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Plane.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Projector.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Projector.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Ray.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxRay\src\ofxRay\Ray.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\libs\tinyxml.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\libs\tinyxml.h" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\libs\tinyxmlerror.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\libs\tinyxmlparser.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\src\ofxXmlSettings.cpp" />
+ <Unit filename="..\..\openFrameworks-020912\addons\ofxXmlSettings\src\ofxXmlSettings.h" />
+ <Extensions>
+ <code_completion />
+ <debugger />
+ <envvars />
+ </Extensions>
+ </Project>
+</CodeBlocks_project_file>
diff --git a/cvtest/cvtest_win.depend b/cvtest/cvtest_win.depend
new file mode 100644
index 0000000..68d0d16
--- /dev/null
+++ b/cvtest/cvtest_win.depend
@@ -0,0 +1,1402 @@
+# depslib dependency file v1.0
+1334150636 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\main.cpp
+ "ofMain.h"
+ "testApp.h"
+ "ofAppGlutWindow.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\ofmain.h
+ "ofConstants.h"
+ "ofFileUtils.h"
+ "ofLog.h"
+ "ofSystemUtils.h"
+ "ofThread.h"
+ "ofURLFileLoader.h"
+ "ofUtils.h"
+ "ofBaseTypes.h"
+ "ofTypes.h"
+ "ofColor.h"
+ "ofPoint.h"
+ "ofRectangle.h"
+ "ofMath.h"
+ "ofVectorMath.h"
+ "ofSerial.h"
+ "ofArduino.h"
+ "ofFbo.h"
+ "ofGLRenderer.h"
+ "ofGLUtils.h"
+ "ofLight.h"
+ "ofMaterial.h"
+ "ofShader.h"
+ "ofTexture.h"
+ "ofVbo.h"
+ "ofVboMesh.h"
+ "ofCairoRenderer.h"
+ "ofGraphics.h"
+ "ofImage.h"
+ "ofPath.h"
+ "ofPixels.h"
+ "ofPolyline.h"
+ "ofRendererCollection.h"
+ "ofTessellator.h"
+ "ofTrueTypeFont.h"
+ "ofBaseApp.h"
+ "ofAppRunner.h"
+ "ofSoundStream.h"
+ "ofSoundPlayer.h"
+ "ofVideoGrabber.h"
+ "ofVideoPlayer.h"
+ "ofEvents.h"
+ "of3dUtils.h"
+ "ofCamera.h"
+ "ofEasyCam.h"
+ "ofMesh.h"
+ "ofNode.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\ofconstants.h
+ <TargetConditionals.h>
+ <windows.h>
+ "GL\glew.h"
+ "GL\wglew.h"
+ "glu.h"
+ <unistd.h>
+ "GL/glew.h"
+ <OpenGL/gl.h>
+ <ApplicationServices/ApplicationServices.h>
+ <unistd.h>
+ <GL/glew.h>
+ <GL/gl.h>
+ <GL/glx.h>
+ <unistd.h>
+ <GLES/gl.h>
+ <GLES/glext.h>
+ "glu.h"
+ "tesselator.h"
+ <cstdlib>
+ <cstdio>
+ <cstdarg>
+ <cmath>
+ <ctime>
+ <cstdlib>
+ <string>
+ <iostream>
+ <vector>
+ <cstring>
+ <sstream>
+ <iomanip>
+ <fstream>
+
+1332328529 g:\home\tim\workspace\openframeworks-020912\libs\glew\include\gl\glew.h
+ <stddef.h>
+ <inttypes.h>
+ <stdint.h>
+ <inttypes.h>
+ <OpenGL/glu.h>
+ <GL/glu.h>
+
+1332328529 g:\home\tim\workspace\openframeworks-020912\libs\glew\include\gl\wglew.h
+ <windows.h>
+
+1332328529 g:\home\tim\workspace\openframeworks-020912\libs\glu\include\glu.h
+ "glu_mangle.h"
+ <GL/gl.h>
+
+1332328543 g:\home\tim\workspace\openframeworks-020912\libs\tess2\include\tesselator.h
+ <TargetConditionals.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\offileutils.h
+ "ofConstants.h"
+ "Poco/File.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file.h
+ "Poco/Foundation.h"
+ "Poco/Timestamp.h"
+ <vector>
+ "File_WINCE.h"
+ "Poco/File_WIN32U.h"
+ "Poco/File_WIN32.h"
+ "Poco/File_UNIX.h"
+ "Poco/File_VMS.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\foundation.h
+ "Poco/Config.h"
+ "Poco/Platform.h"
+ "Poco/Platform_WIN32.h"
+ "Poco/Platform_VMS.h"
+ "Poco/Platform_POSIX.h"
+ "Poco/Bugcheck.h"
+ "Poco/Types.h"
+ <string>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\config.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\platform.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\platform_win32.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\platform_vms.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\platform_posix.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\bugcheck.h
+ "Poco/Foundation.h"
+ <string>
+ <iostream>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\types.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\timestamp.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file_wince.h
+ "Poco/Foundation.h"
+ "Poco/Timestamp.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file_win32u.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file_win32.h
+ "Poco/Foundation.h"
+ "Poco/Timestamp.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file_unix.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\file_vms.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\oflog.h
+ "ofConstants.h"
+ "ofFileUtils.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\types\oftypes.h
+ "ofConstants.h"
+ "ofColor.h"
+ <memory>
+ <tr1/memory>
+ "Poco/Mutex.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\types\ofcolor.h
+ <limits>
+ "ofMath.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofmath.h
+ "ofPoint.h"
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\types\ofpoint.h
+ "ofVec3f.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofvec3f.h
+ "ofVec2f.h"
+ "ofVec4f.h"
+ "ofConstants.h"
+ <cmath>
+ <iostream>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofvec2f.h
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofvec4f.h
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\mutex.h
+ "Poco/Foundation.h"
+ "Poco/Exception.h"
+ "Poco/ScopedLock.h"
+ "Poco/Mutex_WINCE.h"
+ "Poco/Mutex_WIN32.h"
+ "Poco/Mutex_POSIX.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\exception.h
+ "Poco/Foundation.h"
+ <stdexcept>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\scopedlock.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\mutex_wince.h
+ "Poco/Foundation.h"
+ "Poco/Exception.h"
+ "Poco/UnWindows.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\unwindows.h
+ <windows.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\mutex_win32.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\mutex_posix.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\ofsystemutils.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\ofthread.h
+ "ofConstants.h"
+ "ofTypes.h"
+ <process.h>
+ <pthread.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\ofurlfileloader.h
+ <deque>
+ <queue>
+ "ofThread.h"
+ "ofEvents.h"
+ "ofFileUtils.h"
+ "Poco/Condition.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\events\ofevents.h
+ "ofConstants.h"
+ "ofPoint.h"
+ "ofEventUtils.h"
+ "ofxEventUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\events\ofeventutils.h
+ "ofConstants.h"
+ "Poco/FIFOEvent.h"
+ "Poco/Delegate.h"
+ <stdio.h>
+ <stdlib.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\fifoevent.h
+ "Poco/AbstractEvent.h"
+ "Poco/FIFOStrategy.h"
+ "Poco/AbstractDelegate.h"
+ "Poco/CompareFunctions.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\abstractevent.h
+ "Poco/Foundation.h"
+ "Poco/SingletonHolder.h"
+ "Poco/SharedPtr.h"
+ "Poco/ActiveResult.h"
+ "Poco/ActiveMethod.h"
+ "Poco/Mutex.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\singletonholder.h
+ "Poco/Foundation.h"
+ "Poco/Mutex.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\sharedptr.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\activeresult.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\activemethod.h
+ "Poco/Foundation.h"
+ "Poco/ActiveResult.h"
+ "Poco/ActiveRunnable.h"
+ "Poco/ActiveStarter.h"
+ "Poco/AutoPtr.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\activerunnable.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\activestarter.h
+ "Poco/Foundation.h"
+ "Poco/ThreadPool.h"
+ "Poco/ActiveRunnable.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\threadpool.h
+ "Poco/Foundation.h"
+ "Poco/Thread.h"
+ "Poco/Mutex.h"
+ <vector>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\thread.h
+ "Poco/Foundation.h"
+ "Poco/Mutex.h"
+ "Poco/Thread_WINCE.h"
+ "Poco/Thread_WIN32.h"
+ "Poco/Thread_POSIX.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\thread_wince.h
+ "Poco/Foundation.h"
+ "Poco/Runnable.h"
+ "Poco/UnWindows.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\runnable.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\thread_win32.h
+ "Poco/Foundation.h"
+ "Poco/Runnable.h"
+ "Poco/UnWindows.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\thread_posix.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\autoptr.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\fifostrategy.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\abstractdelegate.h
+ "Poco/Foundation.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\comparefunctions.h
+ "Poco/Foundation.h"
+ <functional>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\delegate.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\poco\include\poco\condition.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\utils\ofutils.h
+ "ofConstants.h"
+ <bitset>
+ "ofLog.h"
+ <shellapi.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\types\ofbasetypes.h
+ "ofPoint.h"
+ "ofRectangle.h"
+ "ofConstants.h"
+ "ofColor.h"
+ "ofMesh.h"
+ "ofPixels.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\types\ofrectangle.h
+ "ofPoint.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\3d\ofmesh.h
+ "ofVec3f.h"
+ "ofVec2f.h"
+ "ofColor.h"
+ "ofUtils.h"
+ "ofConstants.h"
+ "ofGLUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofglutils.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofpixels.h
+ "ofConstants.h"
+ "ofUtils.h"
+ "ofColor.h"
+ "ofMath.h"
+ <limits>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofvectormath.h
+ "ofVec2f.h"
+ "ofVec3f.h"
+ "ofVec4f.h"
+ "ofMatrix3x3.h"
+ "ofMatrix4x4.h"
+ "ofQuaternion.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofmatrix3x3.h
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofmatrix4x4.h
+ "ofVec3f.h"
+ "ofVec4f.h"
+ "ofQuaternion.h"
+ "ofConstants.h"
+ <cmath>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\math\ofquaternion.h
+ "ofConstants.h"
+ "ofVec3f.h"
+ "ofVec4f.h"
+ <cmath>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\communication\ofserial.h
+ "ofConstants.h"
+ "ofTypes.h"
+ <termios.h>
+ <winbase.h>
+ <tchar.h>
+ <iostream>
+ <string.h>
+ <setupapi.h>
+ <regstr.h>
+ <winioctl.h>
+ <initguid.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\communication\ofarduino.h
+ <list>
+ <vector>
+ <string>
+ <iostream>
+ "ofEvents.h"
+ "ofSerial.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\offbo.h
+ "ofTexture.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\oftexture.h
+ "ofPoint.h"
+ "ofRectangle.h"
+ "ofBaseTypes.h"
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofglrenderer.h
+ "ofBaseTypes.h"
+ "ofPolyline.h"
+ <stack>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofpolyline.h
+ "ofPoint.h"
+ "ofConstants.h"
+ <deque>
+ "ofRectangle.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\oflight.h
+ "ofNode.h"
+ "ofColor.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\3d\ofnode.h
+ "ofVectorMath.h"
+ "of3dUtils.h"
+ "ofGraphics.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\3d\of3dutils.h
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofgraphics.h
+ "ofConstants.h"
+ "ofColor.h"
+ "ofPoint.h"
+ "ofMatrix4x4.h"
+ "ofRectangle.h"
+ "ofTypes.h"
+ "ofBaseTypes.h"
+ "ofGLRenderer.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofmaterial.h
+ "ofColor.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofshader.h
+ "ofConstants.h"
+ "ofBaseTypes.h"
+ "ofTexture.h"
+ <map>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofvbo.h
+ "ofConstants.h"
+ "ofVec3f.h"
+ "ofColor.h"
+ "ofUtils.h"
+ "ofMesh.h"
+ "ofGLUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\gl\ofvbomesh.h
+ "ofMesh.h"
+ "ofVbo.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofcairorenderer.h
+ "cairo-features.h"
+ "cairo-pdf.h"
+ "cairo-svg.h"
+ "cairo.h"
+ <deque>
+ <stack>
+ "ofMatrix4x4.h"
+ "ofBaseTypes.h"
+ "ofPath.h"
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo-features.h
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo-pdf.h
+ "cairo.h"
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo.h
+ "cairo-version.h"
+ "cairo-features.h"
+ "cairo-deprecated.h"
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo-version.h
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo-deprecated.h
+
+1332328527 g:\home\tim\workspace\openframeworks-020912\libs\cairo\include\cairo\cairo-svg.h
+ "cairo.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofpath.h
+ "ofConstants.h"
+ "ofPoint.h"
+ "ofColor.h"
+ "ofPolyline.h"
+ "ofBaseTypes.h"
+ "ofMesh.h"
+ "ofTessellator.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\oftessellator.h
+ "ofConstants.h"
+ "ofMesh.h"
+ "ofTypes.h"
+ "ofPolyline.h"
+ "tesselator.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofimage.h
+ "ofFileUtils.h"
+ "ofTexture.h"
+ "ofPixels.h"
+ "ofBaseTypes.h"
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\ofrenderercollection.h
+ "ofBaseTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\graphics\oftruetypefont.h
+ <vector>
+ "ofPoint.h"
+ "ofRectangle.h"
+ "ofConstants.h"
+ "ofPath.h"
+ "ofTexture.h"
+ "ofMesh.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\app\ofbaseapp.h
+ "ofPoint.h"
+ "ofEvents.h"
+ "ofBaseTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\app\ofapprunner.h
+ "ofConstants.h"
+ "ofPoint.h"
+ "ofRectangle.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofsoundstream.h
+ "ofConstants.h"
+ "ofBaseTypes.h"
+ "ofBaseApp.h"
+ "ofTypes.h"
+ "ofBaseSoundStream.h"
+ "ofRtAudioSoundStream.h"
+ "ofPASoundStream.h"
+ "ofxAndroidSoundStream.h"
+ "ofxiPhoneSoundStream.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofbasesoundstream.h
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofrtaudiosoundstream.h
+ "ofConstants.h"
+ "ofBaseSoundStream.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofpasoundstream.h
+ "ofConstants.h"
+ "ofBaseSoundStream.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofxiphonesoundstream.h
+ "ofConstants.h"
+ "ofBaseSoundStream.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofsoundplayer.h
+ "ofConstants.h"
+ "ofTypes.h"
+ "ofBaseTypes.h"
+ "ofBaseSoundPlayer.h"
+ "ofQuicktimeSoundPlayer.h"
+ "ofFmodSoundPlayer.h"
+ "ofOpenALSoundPlayer.h"
+ "ofxOpenALSoundPlayer.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofbasesoundplayer.h
+ "ofConstants.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\offmodsoundplayer.h
+ "ofConstants.h"
+ "ofBaseSoundPlayer.h"
+ "fmod.h"
+ "fmod_errors.h"
+
+1332328528 g:\home\tim\workspace\openframeworks-020912\libs\fmodex\include\fmod.h
+ "fmod_codec.h"
+ "fmod_dsp.h"
+ "fmod_memoryinfo.h"
+
+1332328528 g:\home\tim\workspace\openframeworks-020912\libs\fmodex\include\fmod_codec.h
+
+1332328528 g:\home\tim\workspace\openframeworks-020912\libs\fmodex\include\fmod_dsp.h
+
+1332328528 g:\home\tim\workspace\openframeworks-020912\libs\fmodex\include\fmod_memoryinfo.h
+
+1332328528 g:\home\tim\workspace\openframeworks-020912\libs\fmodex\include\fmod_errors.h
+ "fmod.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\sound\ofopenalsoundplayer.h
+ "ofConstants.h"
+ "ofBaseSoundPlayer.h"
+ "ofEvents.h"
+ "ofThread.h"
+ <OpenAL/al.h>
+ <OpenAL/alc.h>
+ <AL/al.h>
+ <AL/alc.h>
+ "kiss_fft.h"
+ "kiss_fftr.h"
+ <sndfile.h>
+ <mpg123.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofvideograbber.h
+ "ofConstants.h"
+ "ofTexture.h"
+ "ofBaseTypes.h"
+ "ofPixels.h"
+ "ofTypes.h"
+ "ofiPhoneVideoGrabber.h"
+ "ofQuickTimeGrabber.h"
+ "ofDirectShowGrabber.h"
+ "ofGstVideoGrabber.h"
+ "ofxAndroidVideoGrabber.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofiphonevideograbber.h
+ "ofVideoGrabber.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofquicktimegrabber.h
+ "ofConstants.h"
+ "ofQtUtils.h"
+ "ofTexture.h"
+ "ofBaseTypes.h"
+ "ofPixels.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofqtutils.h
+ "ofConstants.h"
+ <QuickTime/QuickTime.h>
+ <CoreServices/CoreServices.h>
+ <ApplicationServices/ApplicationServices.h>
+ <QTML.h>
+ <FixMath.h>
+ <QuickTimeComponents.h>
+ <TextUtils.h>
+ <MediaHandlers.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\qtml.h
+ <MacTypes.h>
+ <MacMemory.h>
+ <MacWindows.h>
+ <OSUtils.h>
+ <Files.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\mactypes.h
+ <ConditionalMacros.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\conditionalmacros.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\macmemory.h
+ <MacTypes.h>
+ <MixedMode.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\mixedmode.h
+ <MacTypes.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\macwindows.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\osutils.h
+ <MacTypes.h>
+ <MixedMode.h>
+ <MacMemory.h>
+ <Patches.h>
+ <DateTimeUtils.h>
+ <Endian.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\patches.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\datetimeutils.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\endian.h
+ <ConditionalMacros.h>
+ <MacTypes.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\files.h
+ <MacTypes.h>
+ <MixedMode.h>
+ <OSUtils.h>
+ <TextCommon.h>
+ <UTCUtils.h>
+ <Finder.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\textcommon.h
+ <MacTypes.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\utcutils.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\finder.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\fixmath.h
+ <MacTypes.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\quicktimecomponents.h
+ <MacTypes.h>
+ <MixedMode.h>
+ <Components.h>
+ <ImageCompression.h>
+ <Movies.h>
+ <Quickdraw.h>
+ <Video.h>
+ <Sound.h>
+ <QuickTimeMusic.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\components.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\imagecompression.h
+ <MacTypes.h>
+ <Quickdraw.h>
+ <QDOffscreen.h>
+ <Components.h>
+ <StandardFile.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\quickdraw.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\qdoffscreen.h
+ <MacErrors.h>
+ <Quickdraw.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\macerrors.h
+ <ConditionalMacros.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\standardfile.h
+ <MacTypes.h>
+ <Dialogs.h>
+ <Files.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\dialogs.h
+ <MacTypes.h>
+ <MixedMode.h>
+ <Events.h>
+ <MacWindows.h>
+ <TextEdit.h>
+ <Controls.h>
+ <MacErrors.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\events.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\textedit.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\controls.h
+ <MacTypes.h>
+ <Quickdraw.h>
+ <Menus.h>
+ <TextEdit.h>
+ <Drag.h>
+ <Icons.h>
+ <Collections.h>
+ <MacErrors.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\menus.h
+ <MacTypes.h>
+ <Events.h>
+ <Quickdraw.h>
+ <Fonts.h>
+ <TextCommon.h>
+ <Processes.h>
+ <AppleEvents.h>
+ <Collections.h>
+ <MacErrors.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\fonts.h
+ <MacTypes.h>
+ <Files.h>
+ <Quickdraw.h>
+ <TextCommon.h>
+ <MacErrors.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\processes.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\appleevents.h
+ <MacTypes.h>
+ <MixedMode.h>
+ <Notification.h>
+ <Events.h>
+ <AEDataModel.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\notification.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\aedatamodel.h
+ <MacTypes.h>
+ <MixedMode.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\collections.h
+ <MacTypes.h>
+ <MixedMode.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\drag.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\icons.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\movies.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\video.h
+ <Quickdraw.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\sound.h
+ <MacTypes.h>
+ <Dialogs.h>
+ <Components.h>
+ <MixedMode.h>
+ <Movies.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\quicktimemusic.h
+ <Components.h>
+ <ImageCompression.h>
+ <Movies.h>
+ <Quickdraw.h>
+ <Video.h>
+ <MacMemory.h>
+ <Sound.h>
+ <Endian.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\textutils.h
+ <MacTypes.h>
+ <NumberFormatting.h>
+ <StringCompare.h>
+ <DateTimeUtils.h>
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\numberformatting.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\stringcompare.h
+
+1332328540 g:\home\tim\workspace\openframeworks-020912\libs\quicktime\include\mediahandlers.h
+ <ConditionalMacros.h>
+ <MacTypes.h>
+ <Components.h>
+ <Movies.h>
+ <Sound.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofdirectshowgrabber.h
+ "ofConstants.h"
+ "ofTexture.h"
+ "ofBaseTypes.h"
+ "ofPixels.h"
+ "videoInput.h"
+
+1332328543 g:\home\tim\workspace\openframeworks-020912\libs\videoinput\include\videoinput.h
+ <stdlib.h>
+ <stdio.h>
+ <math.h>
+ <string.h>
+ <wchar.h>
+ <windows.h>
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofgstvideograbber.h
+ "ofGstUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofgstutils.h
+ "ofConstants.h"
+ <gst/gst.h>
+ <gst/app/gstappsink.h>
+ "ofConstants.h"
+ "ofBaseTypes.h"
+ "ofPixels.h"
+ "ofTypes.h"
+ "ofEvents.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofvideoplayer.h
+ "ofConstants.h"
+ "ofTexture.h"
+ "ofBaseTypes.h"
+ "ofTypes.h"
+ "ofGstVideoPlayer.h"
+ "ofQuickTimePlayer.h"
+ "ofiPhoneVideoPlayer.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofgstvideoplayer.h
+ "ofGstUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofquicktimeplayer.h
+ "ofConstants.h"
+ "ofBaseTypes.h"
+ "ofPixels.h"
+ "ofQtUtils.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\video\ofiphonevideoplayer.h
+ "ofPixels.h"
+ "ofBaseTypes.h"
+ "ofTexture.h"
+ "ofVideoPlayer.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\3d\ofcamera.h
+ "ofRectangle.h"
+ "ofAppRunner.h"
+ "ofNode.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\3d\ofeasycam.h
+ "ofCamera.h"
+ "ofEvents.h"
+
+1334910772 g:\home\tim\workspace\nonzerosum\gaunt01\src\testapp.h
+ <set>
+ "ofMain.h"
+ "tesselator.h"
+ "ofxOpenCv.h"
+ "ofxRay.h"
+ "ofxXmlSettings.h"
+ "ofxBlobsManager.h"
+ "trapdoor.h"
+ "bird.h"
+ "player.h"
+ "outsidePolygon.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxopencv.h
+ "ofxCvConstants.h"
+ "ofxCvImage.h"
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvShortImage.h"
+ "ofxCvContourFinder.h"
+ "ofxCvHaarFinder.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvconstants.h
+ "cv.h"
+ <vector>
+ "ofMain.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv\cv.h
+ "opencv2/core/core_c.h"
+ "opencv2/core/core.hpp"
+ "opencv2/imgproc/imgproc_c.h"
+ "opencv2/imgproc/imgproc.hpp"
+ "opencv2/video/tracking.hpp"
+ "opencv2/features2d/features2d.hpp"
+ "opencv2/flann/flann.hpp"
+ "opencv2/calib3d/calib3d.hpp"
+ "opencv2/objdetect/objdetect.hpp"
+ "opencv2/legacy/compat.hpp"
+ "opencv2/core/internal.hpp"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\core_c.h
+ "opencv2/core/types_c.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\types_c.h
+ <assert.h>
+ <stdlib.h>
+ <string.h>
+ <float.h>
+ <stdint.h>
+ <intrin.h>
+ <emmintrin.h>
+ <fastmath.h>
+ <math.h>
+ <ipl.h>
+ <ipl/ipl.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\core.hpp
+ "opencv2/core/types_c.h"
+ "opencv2/core/version.hpp"
+ <limits.h>
+ <algorithm>
+ <cmath>
+ <complex>
+ <map>
+ <new>
+ <string>
+ <vector>
+ "opencv2/core/operations.hpp"
+ "opencv2/core/mat.hpp"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\version.hpp
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\operations.hpp
+ <string.h>
+ <limits.h>
+ <ext/atomicity.h>
+ <bits/atomicity.h>
+ "windows.h"
+ <limits>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\mat.hpp
+ <limits.h>
+ <string.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\imgproc\imgproc_c.h
+ "opencv2/core/core_c.h"
+ "opencv2/imgproc/types_c.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\imgproc\types_c.h
+ "opencv2/core/core_c.h"
+ "opencv2/imgproc/types_c.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\imgproc\imgproc.hpp
+ "opencv2/core/core.hpp"
+ "opencv2/imgproc/types_c.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\video\tracking.hpp
+ "opencv2/core/core.hpp"
+ "opencv2/imgproc/imgproc_c.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\features2d\features2d.hpp
+ "opencv2/core/core.hpp"
+ "opencv2/flann/flann.hpp"
+ <limits>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\flann.hpp
+ "opencv2/flann/flann_base.hpp"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\flann_base.hpp
+ <vector>
+ <string>
+ <cassert>
+ <cstdio>
+ "opencv2/flann/general.h"
+ "opencv2/flann/matrix.h"
+ "opencv2/flann/result_set.h"
+ "opencv2/flann/index_testing.h"
+ "opencv2/flann/object_factory.h"
+ "opencv2/flann/saving.h"
+ "opencv2/flann/all_indices.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\general.h
+ <stdexcept>
+ <cassert>
+ "opencv2/flann/object_factory.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\object_factory.h
+ "opencv2/core/types_c.h"
+ <map>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\matrix.h
+ <stdio.h>
+ "opencv2/flann/general.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\result_set.h
+ <algorithm>
+ <limits>
+ <vector>
+ "opencv2/flann/dist.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\dist.h
+ <cmath>
+ "opencv2/flann/general.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\index_testing.h
+ <cstring>
+ <cassert>
+ "opencv2/flann/matrix.h"
+ "opencv2/flann/nn_index.h"
+ "opencv2/flann/result_set.h"
+ "opencv2/flann/logger.h"
+ "opencv2/flann/timer.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\nn_index.h
+ <string>
+ "opencv2/flann/general.h"
+ "opencv2/flann/matrix.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\logger.h
+ <cstdio>
+ <stdarg.h>
+ "opencv2/flann/general.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\timer.h
+ <time.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\saving.h
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+ <cstdio>
+ <cstring>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\all_indices.h
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+ "opencv2/flann/kdtree_index.h"
+ "opencv2/flann/kmeans_index.h"
+ "opencv2/flann/composite_index.h"
+ "opencv2/flann/linear_index.h"
+ "opencv2/flann/autotuned_index.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\kdtree_index.h
+ <algorithm>
+ <map>
+ <cassert>
+ <cstring>
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+ "opencv2/flann/matrix.h"
+ "opencv2/flann/result_set.h"
+ "opencv2/flann/heap.h"
+ "opencv2/flann/allocator.h"
+ "opencv2/flann/random.h"
+ "opencv2/flann/saving.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\heap.h
+ <algorithm>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\allocator.h
+ <stdlib.h>
+ <stdio.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\random.h
+ <algorithm>
+ <cstdlib>
+ <cassert>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\kmeans_index.h
+ <algorithm>
+ <string>
+ <map>
+ <cassert>
+ <limits>
+ <cmath>
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+ "opencv2/flann/matrix.h"
+ "opencv2/flann/result_set.h"
+ "opencv2/flann/heap.h"
+ "opencv2/flann/allocator.h"
+ "opencv2/flann/random.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\composite_index.h
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\linear_index.h
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\autotuned_index.h
+ "opencv2/flann/general.h"
+ "opencv2/flann/nn_index.h"
+ "opencv2/flann/ground_truth.h"
+ "opencv2/flann/index_testing.h"
+ "opencv2/flann/sampling.h"
+ "opencv2/flann/all_indices.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\ground_truth.h
+ "opencv2/flann/dist.h"
+ "opencv2/flann/matrix.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\flann\sampling.h
+ "opencv2/flann/matrix.h"
+ "opencv2/flann/random.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\calib3d\calib3d.hpp
+ "opencv2/core/core.hpp"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\objdetect\objdetect.hpp
+ "opencv2/core/core.hpp"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\legacy\compat.hpp
+ "opencv2/core/core_c.h"
+ "opencv2/imgproc/types_c.h"
+ <math.h>
+ <string.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\internal.hpp
+ <vector>
+ <windows.h>
+ <pthread.h>
+ <sys/mman.h>
+ "ipp.h"
+ "emmintrin.h"
+ "pmmintrin.h"
+ "tbb/tbb_stddef.h"
+ "tbb/tbb.h"
+ <Eigen/Core>
+ "opencv2/core/eigen.hpp"
+ <malloc.h>
+ <alloca.h>
+ <stdlib.h>
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv2\core\eigen.hpp
+ "cxcore.h"
+
+1332328507 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\libs\opencv\include\opencv\cxcore.h
+ "opencv2/core/core_c.h"
+ "opencv2/core/core.hpp"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvimage.h
+ "ofxCvConstants.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvgrayscaleimage.h
+ "ofxCvImage.h"
+ "ofxCvBlob.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvblob.h
+ "ofxCvConstants.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvcolorimage.h
+ "ofxCvImage.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvfloatimage.h
+ "ofxCvImage.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvshortimage.h
+ "ofxCvImage.h"
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvcontourfinder.h
+ "ofxCvConstants.h"
+ "ofxCvBlob.h"
+ "ofxCvGrayscaleImage.h"
+ <algorithm>
+
+1332328517 g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvhaarfinder.h
+ "ofMain.h"
+ "ofxOpenCv.h"
+
+1332327367 g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray.h
+ "ofMain.h"
+ "ofxRay/Ray.h"
+ "ofxRay/Plane.h"
+ "ofxRay/Projector.h"
+
+1332327367 g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\ray.h
+ "ofMain.h"
+ "ofxRay/Base.h"
+
+1332327367 g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\base.h
+ "ofMain.h"
+
+1332327367 g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\plane.h
+ "ofMain.h"
+ "ofxRay/Base.h"
+ "ofxRay/Ray.h"
+
+1332327367 g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\projector.h
+ "ofxRay/Ray.h"
+ "ofxRay/Base.h"
+
+1332328520 g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\src\ofxxmlsettings.h
+ "ofMain.h"
+ <string.h>
+ "tinyxml.h"
+
+1332328520 g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\libs\tinyxml.h
+ <ctype.h>
+ <stdio.h>
+ <stdlib.h>
+ <string.h>
+ <assert.h>
+ <string>
+ <iostream>
+ <sstream>
+ "tinystr.h"
+
+1333489671 g:\home\tim\workspace\openframeworks-020912\addons\ofxblobsmanager\src\ofxblobsmanager.h
+ "ofMain.h"
+ "ofxStoredBlobVO.h"
+ "ofxOpenCv.h"
+
+1333489671 g:\home\tim\workspace\openframeworks-020912\addons\ofxblobsmanager\src\ofxstoredblobvo.h
+ "ofMain.h"
+ "ofxOpenCv.h"
+
+1334911333 g:\home\tim\workspace\nonzerosum\gaunt01\src\trapdoor.h
+ "ofMain.h"
+ "morphmesh.h"
+ "normBindTexture.h"
+ "player.h"
+
+1334085836 g:\home\tim\workspace\nonzerosum\gaunt01\src\morphmesh.h
+ <iostream>
+ <iterator>
+ <ofMesh.h>
+ <ofxXmlSettings.h>
+
+1333101841 g:\home\tim\workspace\nonzerosum\gaunt01\src\normbindtexture.h
+ "ofMain.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\app\ofappglutwindow.h
+ "ofConstants.h"
+ "ofAppBaseWindow.h"
+ "ofEvents.h"
+ "ofTypes.h"
+
+1332328530 g:\home\tim\workspace\openframeworks-020912\libs\openframeworks\app\ofappbasewindow.h
+ "ofPoint.h"
+ "ofTypes.h"
+
+1334085836 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\morphmesh.cpp
+ "morphmesh.h"
+
+1333101841 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\normbindtexture.cpp
+ "normBindTexture.h"
+ "ofMain.h"
+
+1334912456 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\testapp.cpp
+ "testApp.h"
+
+1334912256 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\trapdoor.cpp
+ "trapdoor.h"
+
+1333489671 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxblobsmanager\src\ofxblobsmanager.cpp
+
+1333489671 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxblobsmanager\src\ofxstoredblobvo.cpp
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvcolorimage.cpp
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvShortImage.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvcontourfinder.cpp
+ "ofxCvContourFinder.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvfloatimage.cpp
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvShortImage.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvgrayscaleimage.cpp
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvShortImage.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvhaarfinder.cpp
+ "ofxCvHaarFinder.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvimage.cpp
+ "ofxCvImage.h"
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvBlob.h"
+
+1332328517 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxopencv\src\ofxcvshortimage.cpp
+ "ofxCvGrayscaleImage.h"
+ "ofxCvColorImage.h"
+ "ofxCvFloatImage.h"
+ "ofxCvShortImage.h"
+
+1332327367 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\base.cpp
+ "ofxRay/Base.h"
+
+1332331920 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\plane.cpp
+ "Plane.h"
+
+1332327367 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\projector.cpp
+ "ofxRay/Projector.h"
+
+1332331876 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxray\src\ofxray\ray.cpp
+ "ofxRay/Ray.h"
+
+1332328520 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\libs\tinyxml.cpp
+ <ctype.h>
+ <sstream>
+ <iostream>
+ "tinyxml.h"
+
+1332328520 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\libs\tinyxmlerror.cpp
+ "tinyxml.h"
+
+1332328520 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\libs\tinyxmlparser.cpp
+ <ctype.h>
+ <stddef.h>
+ "tinyxml.h"
+ <windows.h>
+
+1332328520 source:g:\home\tim\workspace\openframeworks-020912\addons\ofxxmlsettings\src\ofxxmlsettings.cpp
+ "ofxXmlSettings.h"
+ <vector>
+ <string>
+ <iostream>
+
+1334887259 g:\home\tim\workspace\nonzerosum\gaunt01\src\bird.h
+ "ofMain.h"
+ "morphmesh.h"
+ "normBindTexture.h"
+ "player.h"
+ "outsidePolygon.h"
+ "ofxRay.h"
+
+1334911998 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\bird.cpp
+ "bird.h"
+
+1334792529 g:\home\tim\workspace\nonzerosum\gaunt01\src\player.h
+ "ofMain.h"
+ "ofxOpenCv.h"
+
+1334825171 g:\home\tim\workspace\nonzerosum\gaunt01\src\outsidepolygon.h
+ "ofMain.h"
+
+1334825456 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\outsidepolygon.cpp
+ "outsidePolygon.h"
+
+1334841640 source:g:\home\tim\workspace\nonzerosum\gaunt01\src\player.cpp
+ "player.h"
+
diff --git a/cvtest/cvtest_win.layout b/cvtest/cvtest_win.layout
new file mode 100644
index 0000000..9a356ef
--- /dev/null
+++ b/cvtest/cvtest_win.layout
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<CodeBlocks_layout_file>
+ <ActiveTarget name="release" />
+ <File name="src\main.cpp" open="1" top="1" tabpos="3">
+ <Cursor position="159" topLine="0" />
+ </File>
+ <File name="src\testApp.cpp" open="1" top="0" tabpos="1">
+ <Cursor position="2019" topLine="59" />
+ </File>
+ <File name="src\testApp.h" open="1" top="0" tabpos="2">
+ <Cursor position="1218" topLine="43" />
+ </File>
+ <File name="..\..\openFrameworks-020912\addons\ofxOpenCv\src\ofxCvColorImage.h" open="1" top="0" tabpos="4">
+ <Cursor position="5047" topLine="83" />
+ </File>
+</CodeBlocks_layout_file>
diff --git a/cvtest/src/imageComparator.h b/cvtest/src/imageComparator.h
new file mode 100755
index 0000000..c1904c6
--- /dev/null
+++ b/cvtest/src/imageComparator.h
@@ -0,0 +1,71 @@
+/*------------------------------------------------------------------------------------------*\
+ This file contains material supporting chapter 4 of the cookbook:
+ Computer Vision Programming using the OpenCV Library.
+ by Robert Laganiere, Packt Publishing, 2011.
+
+ This program is free software; permission is hereby granted to use, copy, modify,
+ and distribute this source code, or portions thereof, for any purpose, without fee,
+ subject to the restriction that the copyright notice may not be removed
+ or altered from any source or altered source distribution.
+ The software is released on an as-is basis and without any warranties of any kind.
+ In particular, the software is not guaranteed to be fault-tolerant or free from failure.
+ The author disclaims all warranties with regard to this software, any use,
+ and any consequent failure, is purely the responsibility of the user.
+
+ Copyright (C) 2010-2011 Robert Laganiere, www.laganiere.name
+\*------------------------------------------------------------------------------------------*/
+
+#if !defined ICOMPARATOR
+#define ICOMPARATOR
+
+#include <opencv2/opencv.hpp>
+#include "colorhistogram.h"
+
+class ImageComparator {
+
+ private:
+
+ cv::Mat reference;
+ cv::Mat input;
+ cv::MatND refH;
+ cv::MatND inputH;
+
+ ColorHistogram hist;
+ int div;
+
+ public:
+
+ ImageComparator() : div(32) {
+
+ }
+
+ // Color reduction factor
+ // The comparaison will be made on images with
+ // color space reduced by this factor in each dimension
+ void setColorReduction( int factor) {
+
+ div= factor;
+ }
+
+ int getColorReduction() {
+
+ return div;
+ }
+
+ void setReferenceImage(const cv::Mat& image) {
+
+ reference= hist.colorReduce(image,div);
+ refH= hist.getHistogram(reference);
+ }
+
+ double compare(const cv::Mat& image) {
+
+ input= hist.colorReduce(image,div);
+ inputH= hist.getHistogram(input);
+
+ return cv::compareHist(refH,inputH,CV_COMP_CHISQR);
+ }
+};
+
+
+#endif
diff --git a/cvtest/src/main.cpp b/cvtest/src/main.cpp
new file mode 100644
index 0000000..42c1e8d
--- /dev/null
+++ b/cvtest/src/main.cpp
@@ -0,0 +1,16 @@
+#include "ofMain.h"
+#include "testApp.h"
+#include "ofAppGlutWindow.h"
+
+//========================================================================
+int main( ){
+
+ ofAppGlutWindow window;
+ ofSetupOpenGL(&window, 1280,480, OF_WINDOW ); // <-------- setup the GL context
+ printf("%ix%i on screen %ix%i\n",ofGetWidth(),ofGetHeight(),ofGetScreenWidth(),ofGetScreenHeight());
+ // this kicks off the running of my app
+ // can be OF_WINDOW or OF_FULLSCREEN
+ // pass in width and height too:
+ ofRunApp( new testApp());
+
+}
diff --git a/cvtest/src/testApp.cpp b/cvtest/src/testApp.cpp
new file mode 100644
index 0000000..a05cc49
--- /dev/null
+++ b/cvtest/src/testApp.cpp
@@ -0,0 +1,280 @@
+#include "testApp.h"
+
+//--------------------------------------------------------------
+//units ~ 10cm
+//
+/*
+Can use a floating point image or array to accumulate the screen and generate averaged background?
+
+Is this too much work for every frame? Should it be put in a seperate thread?
+
+*/
+
+void testApp::setup(){
+
+ printf("setup: %ix%i on screen %ix%i\n",ofGetWidth(),ofGetHeight(),ofGetScreenWidth(),ofGetScreenHeight());
+
+ int windowMode = ofGetWindowMode();
+ if(windowMode == OF_FULLSCREEN){
+ windowWidth = ofGetScreenWidth();
+ windowHeight = ofGetScreenHeight();
+ }
+ else if(windowMode == OF_WINDOW){
+ windowWidth = ofGetWidth();
+ windowHeight = ofGetHeight();
+ }
+
+
+ vidPlayer.loadMovie("camoutput3.mov"); //cam-grass-01.mov"); //footage/ camera needs to be the same res as opencv planes and output
+ vidPlayer.setLoopState(OF_LOOP_NORMAL);
+
+ vidPlayer.play();
+
+ currentFrame.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ background.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+
+ grayFrame.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ grayBg.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ grayDiff.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+
+ mogoutput.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+
+ learningRate = 0.001f;
+ bFirstFrame=true;
+
+ threshold=10.0;
+
+ mogf=0.008;
+ /*
+ fg = new ofxOpenCvUtilsForeground();
+
+ //method(ACCUMULATE_WEIGHTED)
+ //,learningRate(0.01)
+ //,threshold(10)
+ //,blockSize(6)
+ //,blur(0)
+ //,backgroundSet(false));
+
+
+
+ fg->threshold = 10.0f; //threshold;
+ fg->learningRate = 0.01f; // learningRate;
+ fg->blockSize = 5.0f; //blockSize;
+ fg->blur = 1.0f; //blockSize;
+ fg->shadowThreshold = 10.0f; //shadowThreshold;
+
+
+
+ meanShift = new ofxOpenCvUtilsMeanShift();
+
+
+ resultFrame.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ blobFrame.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ trackFrame.allocate(CAM_WIDTH_FG, CAM_HEIGHT_FG);
+
+ selectEnabled = false;
+ */
+
+ ofSetFrameRate(30);
+
+}
+
+
+//--------------------------------------------------------------
+void testApp::update(){
+
+ bool bNewFrame = false;
+
+
+ vidPlayer.idleMovie();
+ bNewFrame = vidPlayer.isFrameNew();
+
+ if (bNewFrame) {
+
+ currentFrame.setFromPixels(vidPlayer.getPixels(), CAM_WIDTH_FG, CAM_HEIGHT_FG);
+ cv::Mat img = currentFrame.getCvImage();
+
+
+ cv::Mat im3;
+ img.convertTo(im3, CV_32FC3);
+
+ if (bFirstFrame) {
+ img.convertTo(accumulator, CV_32FC3);
+ bFirstFrame=false;
+ }
+
+ //accumulator;
+ accumulateWeighted(im3, accumulator, max(1.0f/(ofGetElapsedTimef()*30.0f),learningRate));
+
+ accumulator.convertTo(outmat,CV_8UC3);
+ IplImage* tmp = new IplImage(outmat);
+ //printf("tmp: %ix%i channels: %i depth:%i\n",tmp->width,tmp->height,tmp->nChannels,tmp->depth);
+ //printf("output: %ix%i channels: %i depth:%i\n",output.getCvImage()->width,output.getCvImage()->height,output.getCvImage()->nChannels,output.getCvImage()->depth);
+ background=tmp;
+
+ //grayBg = background;
+ //grayFrame = currentFrame;
+
+
+ // take the abs value of the difference between background and incoming and then threshold:
+ //grayDiff.absDiff(grayBg, grayFrame);
+ //grayDiff.threshold(threshold);
+ //grayDiff.adaptiveThreshold( threshold,1,false,true); //int blockSize, int offset=0,bool invert=false, bool gauss=false);
+ //grayDiff.erode_3x3();
+ //grayDiff.resize(windowWidth,windowHeight);
+ //contourFinder.findContours(grayDiff, 200, (640*480)/3, 20, false); // don't find holes
+
+ //MOG
+ mog(img, outmat, mogf);
+
+ // Complement the image
+ //cv::threshold(outmat, output, threshold, 255, cv::THRESH_BINARY_INV);
+ IplImage* tmp1 = new IplImage(outmat);
+ //printf("tmp: %ix%i channels: %i depth:%i\n",tmp->width,tmp->height,tmp->nChannels,tmp->depth);
+ //printf("grayDiff: %ix%i channels: %i depth:%i\n",grayDiff.getCvImage()->width,grayDiff.getCvImage()->height,grayDiff.getCvImage()->nChannels,grayDiff.getCvImage()->depth);
+ grayDiff=tmp1; //copy to ofx
+
+
+
+ /*
+ if (!fg->backgroundSet) fg->setBackground(currentFrame.getCvImage());
+
+ if(isTracking) {
+ // define ROI
+ cv::Mat img = currentFrame.getCvImage();
+ cv::Mat img2;
+
+ IplImage imgf = fg->update(currentFrame.getCvImage());
+
+ cvNot(&imgf, &imgf);
+ resultFrame = &imgf;
+
+ blobFrame = resultFrame;
+ cv::Mat mask = blobFrame.getCvImage();
+ cv::threshold(mask,mask,128,255,cv::THRESH_BINARY_INV);
+ cv::add(mask,img,img2);
+
+ IplImage* tmp = new IplImage(img2);
+ trackFrame = tmp;
+
+ meanShift->update(tmp);
+
+ return;
+ }
+
+ if(bNewFrame && fg->backgroundSet) {
+
+
+ if((int)blur%2==0) {
+ blur++;
+ }
+ fg->blur = blur;
+
+ if(useMoG) {
+ fg->setMethod(MIXTURE_OF_GUASSIAN);
+ } else {
+ fg->setMethod(ACCUMULATE_WEIGHTED);
+ }
+
+ // Update the fg
+ IplImage img = fg->update(currentFrame.getCvImage());
+ cvNot(&img, &img);
+ resultFrame = &img;
+
+ blobFrame = resultFrame;
+ }
+ */
+
+ }
+
+
+
+
+}
+
+//--------------------------------------------------------------
+void testApp::draw(){
+
+ ofSetHexColor(0xffffff);
+
+ background.draw(0, 0);
+ grayDiff.draw(640, 0);
+ //mogoutput.draw(640, 0);
+
+ /*
+
+ if(fg->backgroundSet) {
+
+ resultFrame.draw(0, 0);
+ //if(isTracking) {
+ // trackFrame.draw(320,240);
+ //} else {
+ blobFrame.draw(640,0);
+ //}
+ }
+ */
+ ofSetHexColor(0xffffff);
+ char reportStr[1024];
+ //sprintf(reportStr, "fps: %f\nthreshold: %f", ofGetFrameRate(),threshold);
+ sprintf(reportStr, "fps: %f\nmog: %f", ofGetFrameRate(),mogf);
+ ofDrawBitmapString(reportStr, 1100, 440);
+
+
+}
+
+//--------------------------------------------------------------
+void testApp::keyPressed(int key){
+ switch (key){
+ case '+':
+ threshold ++;
+ mogf +=.001;
+ if (threshold > 255) threshold = 255;
+ break;
+ case '-':
+ threshold --;
+ mogf-=.001;
+ if (threshold < 0) threshold = 0;
+ break;
+ }
+}
+
+//--------------------------------------------------------------
+void testApp::keyReleased(int key){
+
+}
+
+//--------------------------------------------------------------
+void testApp::mouseMoved(int x, int y ){
+
+}
+
+//--------------------------------------------------------------
+void testApp::mouseDragged(int x, int y, int button){
+
+}
+
+//--------------------------------------------------------------
+void testApp::mousePressed(int x, int y, int button){
+
+}
+
+//--------------------------------------------------------------
+void testApp::mouseReleased(int x, int y, int button){
+
+}
+
+//--------------------------------------------------------------
+void testApp::windowResized(int w, int h){
+
+}
+
+//--------------------------------------------------------------
+void testApp::gotMessage(ofMessage msg){
+
+}
+
+//--------------------------------------------------------------
+void testApp::dragEvent(ofDragInfo dragInfo){
+
+}
+
diff --git a/cvtest/src/testApp.h b/cvtest/src/testApp.h
new file mode 100644
index 0000000..4ec8fe5
--- /dev/null
+++ b/cvtest/src/testApp.h
@@ -0,0 +1,88 @@
+#pragma once
+
+#include <set>
+
+#include "ofMain.h"
+#include "tesselator.h"
+
+#include "ofxOpenCv.h"
+//#include "ofxOpenCvUtilsForeground.h"
+#include <opencv2/opencv.hpp>
+
+#include "ofxBlobsManager.h"
+
+#define CAM_WIDTH_FG 640
+#define CAM_HEIGHT_FG 480
+
+
+class testApp : public ofBaseApp{
+
+ public:
+ void setup();
+ void update();
+ void draw();
+
+ void keyPressed(int key);
+ void keyReleased(int key);
+ void mouseMoved(int x, int y );
+ void mouseDragged(int x, int y, int button);
+ void mousePressed(int x, int y, int button);
+ void mouseReleased(int x, int y, int button);
+ void windowResized(int w, int h);
+ void dragEvent(ofDragInfo dragInfo);
+ void gotMessage(ofMessage msg);
+
+ int windowWidth, windowHeight;
+
+ ofVideoPlayer vidPlayer;
+
+ //matrix types in ofxOpenCv\libs\opencv\include\opencv2\core\types_c.h
+ //cv::Mat is dynamic
+
+ //try to accumulate background using SHORT datatype ie CV_16UC / 4 (would 4 be faster, 64 bits)
+
+ cv::Mat accumulator,outmat,output; // background accumulation
+
+ ofxCvColorImage currentFrame;
+ ofxCvColorImage background;
+
+ ofxCvColorImage mogoutput;
+
+ ofxCvGrayscaleImage grayFrame;
+ ofxCvGrayscaleImage grayBg;
+ ofxCvGrayscaleImage grayDiff;
+
+ float learningRate;
+ bool bFirstFrame;
+
+ ofxCvContourFinder contourFinder;
+
+ float threshold;
+
+ cv::BackgroundSubtractorMOG mog;
+
+ float mogf;
+
+ /*
+ ofxOpenCvUtilsForeground* fg;
+ ofxOpenCvUtilsMeanShift* meanShift;
+
+
+ ofxCvColorImage blobFrame;
+ ofxCvColorImage trackFrame;
+ ofxCvGrayscaleImage resultFrame;
+
+
+
+ float blockSize;
+ float minBlobSize;
+ float maxBlobSize;
+ float shadowThreshold;
+ float blur;
+ bool selectEnabled;
+ bool useMoG;
+ bool isTracking;
+ */
+
+};
+
diff --git a/gaunt01/gaunt01.cbp b/gaunt01/gaunt01.cbp
index daba2ed..e8a613c 100644
--- a/gaunt01/gaunt01.cbp
+++ b/gaunt01/gaunt01.cbp
@@ -6,7 +6,7 @@
<Option makefile_is_custom="1" />
<Option pch_mode="2" />
<Option compiler="gcc" />
- <Option virtualFolders="addons/;src/;addons/ofxOpenCv/src/;build config/;" />
+ <Option virtualFolders="addons/;src/;build config/;" />
<Build>
<Target title="Debug">
<Option output="bin/$(PROJECT_NAME)_debug" prefix_auto="1" extension_auto="1" />
@@ -27,60 +27,6 @@
<Option projectLinkerOptionsRelation="2" />
</Target>
</Build>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvBlob.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvColorImage.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvColorImage.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvConstants.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvContourFinder.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvContourFinder.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvFloatImage.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvFloatImage.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvGrayscaleImage.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvGrayscaleImage.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvHaarFinder.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvHaarFinder.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvImage.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvImage.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvMain.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvShortImage.cpp">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxCvShortImage.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
- <Unit filename="../../../addons/ofxOpenCv/src/ofxOpenCv.h">
- <Option virtualFolder="addons/ofxOpenCv/src" />
- </Unit>
<Unit filename="Makefile">
<Option virtualFolder="build config/" />
</Unit>
diff --git a/gaunt01/src/bird.cpp b/gaunt01/src/bird.cpp
index a6dfcf8..49567bc 100644
--- a/gaunt01/src/bird.cpp
+++ b/gaunt01/src/bird.cpp
@@ -30,11 +30,11 @@ bird::bird()
turnRate=20;
diveRate=0;
-
+
fieldofview=60;
lastTime=ofGetElapsedTimef();
-
+
centrePoint=ofVec2f(ofGetWidth()/2,600); //quick and dirty
}
@@ -52,18 +52,18 @@ void bird::update(map<int,player>& players, float angle,vector<ofPoint> border){
while (heading <-180) heading=heading+360;
position-=direction.rotated(heading,ofVec3f(0,0,-1))*velocity*timeSeg; //.rotate(heading,ofVec3f(0,1,0))
-
+
//absolute ray pointer
pointer=ofRay(position.rotated(angle,ofVec3f(1,0,0)),-direction.rotated(heading,ofVec3f(0,0,-1)).rotated(angle,ofVec3f(1,0,0))*1000.0f,false);
ofRay relpointer=ofRay(position,-direction.rotated(heading,ofVec3f(0,0,-1))*1000.0f,false);
-
+
playang.clear();
playdist.clear();
playpos.clear();
playhead.clear();
playdip.clear();
-
+
map<int,player>::iterator it;
for (it=players.begin();it!=players.end();it++) {
if (it->second.active) {
@@ -83,7 +83,8 @@ void bird::update(map<int,player>& players, float angle,vector<ofPoint> border){
centrehead=atan2(position.x-centrePoint.x,position.y-centrePoint.y)*RAD_TO_DEG;
while (centrehead>180) centrehead=centrehead-360;
while (centrehead <-180) centrehead=centrehead+360;
- if (OutsidePolygon(border,futurepoint)) {
+
+ if (0) { //OutsidePolygon(border,futurepoint)) {
//if (ofVec
leaving=true;
turnRate=centrehead/5;
@@ -101,7 +102,7 @@ void bird::update(map<int,player>& players, float angle,vector<ofPoint> border){
}
if (nearest>-1) turnRate=-playhead[nearest];
}
-
+
}
void bird::draw(){
glEnable(GL_DEPTH_TEST);
diff --git a/gaunt01/src/main.cpp b/gaunt01/src/main.cpp
index 24b1857..1f3ac12 100644
--- a/gaunt01/src/main.cpp
+++ b/gaunt01/src/main.cpp
@@ -6,8 +6,8 @@
int main( ){
ofAppGlutWindow window;
- ofSetupOpenGL(&window, 1024,768, OF_WINDOW ); // <-------- setup the GL context
-
+ ofSetupOpenGL(&window, 1024,768, OF_FULLSCREEN ); // <-------- setup the GL context
+ printf("%ix%i on screen %ix%i\n",ofGetWidth(),ofGetHeight(),ofGetScreenWidth(),ofGetScreenHeight());
// this kicks off the running of my app
// can be OF_WINDOW or OF_FULLSCREEN
// pass in width and height too:
diff --git a/gaunt01/src/player.cpp b/gaunt01/src/player.cpp
index efcdd0a..c81881a 100644
--- a/gaunt01/src/player.cpp
+++ b/gaunt01/src/player.cpp
@@ -59,4 +59,4 @@ void player::caught(){
void player::setCatchTransform(ofVec3f _catchPos,ofVec3f _catchScale){
catchPos=_catchPos;
catchScale=_catchScale;
-} \ No newline at end of file
+}
diff --git a/gaunt01/src/testApp.cpp b/gaunt01/src/testApp.cpp
index fe8b28f..853a23f 100644
--- a/gaunt01/src/testApp.cpp
+++ b/gaunt01/src/testApp.cpp
@@ -12,6 +12,18 @@ Is this too much work for every frame? Should it be put in a seperate thread?
void testApp::setup(){
+ printf("setup: %ix%i on screen %ix%i\n",ofGetWidth(),ofGetHeight(),ofGetScreenWidth(),ofGetScreenHeight());
+
+ int windowMode = ofGetWindowMode();
+ if(windowMode == OF_FULLSCREEN){
+ this->windowWidth = ofGetScreenWidth();
+ this->windowHeight = ofGetScreenHeight();
+ }
+ else if(windowMode == OF_WINDOW){
+ this->windowWidth = ofGetWidth();
+ this->windowHeight = ofGetHeight();
+ }
+
bLearnBakground = true;
cam_angle=0;
threshold = 80;
@@ -49,19 +61,19 @@ void testApp::setup(){
blobsManager.minDetectedTime = 500;
blobsManager.debugDrawCandidates = true;
- ofVec3f centre=ofVec3f(ofGetWidth()/2,0,0);
+ ofVec3f centre=ofVec3f(windowWidth/2,0,0);
ofVec3f normal=ofVec3f(0,0,-1);
ray=ofRay();
plane=ofPlane(centre,normal);
plane.color=ofColor(255,255,255);
- projector=ofProjector(2.0f, ofVec2f(0.0f, 0.0f),ofGetWidth(),ofGetHeight()); //1.535f
- projector.setPosition(ofGetWidth()/2,ofGetHeight()/2,-ofGetWidth());
- projector.lookAt(ofVec3f(ofGetWidth()/2,ofGetHeight()/2,0),ofVec3f(0, -1, 0));
+ projector=ofProjector(2.0f, ofVec2f(0.0f, 0.0f),windowWidth,windowHeight); //1.535f
+ projector.setPosition(windowWidth/2,windowHeight/2,-windowWidth);
+ projector.lookAt(ofVec3f(windowWidth/2,windowHeight/2,0),ofVec3f(0, -1, 0));
cam=ofCamera();
- cam.setPosition(ofGetWidth()/2,ofGetHeight()/2,-ofGetWidth());
- cam.lookAt(ofVec3f(ofGetWidth()/2,ofGetHeight()/2,0),ofVec3f(0, -1, 0));
+ cam.setPosition(windowWidth/2,windowHeight/2,-windowWidth);
+ cam.lookAt(ofVec3f(windowWidth/2,windowHeight/2,0),ofVec3f(0, -1, 0));
cam.setFov(41.1); //39.85); //53.13);
cam.cacheMatrices(); //stop error messages
@@ -69,14 +81,14 @@ void testApp::setup(){
bounds=new ofPlane[4];
- //trapDoor=trapdoor(screen2plane(ofVec2f(ofGetWidth(),0)),screen2plane(ofVec2f(ofGetWidth(),ofGetHeight())),35);
+ //trapDoor=trapdoor(screen2plane(ofVec2f(windowWidth,0)),screen2plane(ofVec2f(windowWidth,windowHeight)),35);
trapdoorSize=35;
trapdoorSlotSize=50;
-
-
+
+
trapdoorTime=10.0; //time per trapdoor;
-
-
+
+
mode=PLAY;
@@ -85,7 +97,7 @@ void testApp::setup(){
bgnum=1000;
firstframe=true;
- light.setPosition(ofGetWidth(),0,ofGetHeight());
+ light.setPosition(windowWidth,0,windowHeight);
light.enable();
drawingborder=false;
@@ -99,7 +111,7 @@ void testApp::setup(){
for (int i=0;i<4;i++) {
billboards[i].setAnchorPercent(0.5,0.5);
}
- scaleFactor=ofVec2f(ofGetWidth()/1280.0f,ofGetHeight()/768.0f);
+ scaleFactor=ofVec2f(windowWidth/1280.0f,windowHeight/768.0f);
gameState=TITLES;
@@ -113,16 +125,19 @@ void testApp::setup(){
sounds=new ofSoundPlayer[1];
sounds[0].loadSound("arp5.mp3"); //game start
-
-
+
+
doorsounds=new ofSoundPlayer[4];
doorsounds[0].loadSound("creeky door short1.wav");
doorsounds[1].loadSound("creeky door short2.wav");
doorsounds[2].loadSound("creeky door short3.wav");
doorsounds[3].loadSound("voice falling down hole.wav");
-
+
+ cam.begin();
+ cam.end();
+
updatePlane();
-
+
}
ofVec2f testApp::screen2plane(ofVec2f screenpos){
@@ -153,29 +168,54 @@ bool testApp::rectsCross(ofRectangle rect1,ofRectangle rect2) {
return overlap;
}
-void testApp::makeGround(int doornumber){
+void testApp::tessGround(int num){
//updates ground and makes texture coords;
- /*
+
+ if (num==0) {
+ groundlines.clear();
+ ofPolyline pol;
+ pol.addVertex(0,0);
+ pol.addVertex(windowWidth,0);
+ pol.addVertex(windowWidth,windowHeight);
+ pol.addVertex(0,windowHeight);
+ pol.close();
+ groundlines.push_back(pol);
+ }
+
+ vector<ofVec2f> corners=trapdoors[num].getCorners();
+ ofPolyline pol2;
+ for (int i=0;i<corners.size();i++) {
+
+ ofVec3f cw=ofVec3f(corners[i].x,corners[i].y,0).rotated(cam_angle,ofVec3f(1,0,0));
+ ofVec3f s=cam.worldToScreen(cam.worldToScreen(cw));
+ //printf("corner %i: %f,%f to %f,%f,%f\n",i,corners[i].x,corners[i].y,s.x/s.z,s.y/s.z,s.z);
+ pol2.addVertex(s.x,s.y);
+ }
+ pol2.close();
+ groundlines.push_back(pol2);
+
ground=ofMesh();
tess.tessellateToMesh(groundlines,OF_POLY_WINDING_ODD,ground,true);
for (int i=0;i<ground.getNumVertices();i++) {
ofVec3f v=ground.getVertex(i);
- ground.addTexCoord(ofVec2f(v.x/ofGetWidth(),v.y/ofGetHeight()));
+ ground.addTexCoord(ofVec2f(v.x/windowWidth,v.y/windowHeight));
}
- */
-
+
+}
+
+void testApp::makeGround(int doornumber){
//create ground mesh with hole for trapdoor
-
+
//IS NOT WORKING!??
//it is building a hole somewhere.. whats.. the.. problem..
ground=ofMesh();
ground.addVertex(ofVec3f(0,0,0));
ground.addTexCoord(ofVec2f(0,0));
- ground.addVertex(ofVec3f(ofGetWidth(),0,0));
+ ground.addVertex(ofVec3f(windowWidth,0,0));
ground.addTexCoord(ofVec2f(1,0));
- ground.addVertex(ofVec3f(ofGetWidth(),ofGetHeight(),0));
+ ground.addVertex(ofVec3f(windowWidth,windowHeight,0));
ground.addTexCoord(ofVec2f(1,1));
- ground.addVertex(ofVec3f(0,ofGetHeight(),0));
+ ground.addVertex(ofVec3f(0,windowHeight,0));
ground.addTexCoord(ofVec2f(0,1));
vector<ofVec2f> corners=trapdoors[doornumber].getCorners();
@@ -199,7 +239,7 @@ void testApp::makeGround(int doornumber){
screenCorners[i]=ofVec2f(s.x,s.y);
ground.addVertex(s);
- ground.addTexCoord(ofVec2f(s.x/ofGetWidth(),s.y/ofGetHeight()));
+ ground.addTexCoord(ofVec2f(s.x/windowWidth,s.y/windowHeight));
}
//join a quad for each side
// the 2 rear sides should always point towards the rear
@@ -222,31 +262,31 @@ void testApp::updatePlane(){
plane.setNormal(ofVec3f(0,sin(cam_angle*DEG_TO_RAD),-cos(cam_angle*DEG_TO_RAD)));
//bird intersect planes
- ofVec2f l=ofVec2f(ofGetWidth()/20,ofGetHeight()/2);
+ ofVec2f l=ofVec2f(windowWidth/20,windowHeight/2);
ofRay r=projector.castPixel(l.x,l.y);
ofVec3f p;
plane.intersect(r,p);
ofVec3f pn=(p-projector.getGlobalPosition()).getPerpendicular(ofVec3f(0,1,0));
bounds[0]=ofPlane(p,pn,pn,ofVec2f(1000,1000));
- l=ofVec2f(ofGetWidth()/2,ofGetHeight()/20);
+ l=ofVec2f(windowWidth/2,windowHeight/20);
r=projector.castPixel(l.x,l.y);
plane.intersect(r,p);
pn=(p-projector.getGlobalPosition()).getPerpendicular(ofVec3f(1,0,0));
bounds[1]=ofPlane(p,pn,-pn,ofVec2f(1000,1000));
- l=ofVec2f(19*ofGetWidth()/20,ofGetHeight()/2);
+ l=ofVec2f(19*windowWidth/20,windowHeight/2);
r=projector.castPixel(l.x,l.y);
plane.intersect(r,p);
pn=(p-projector.getGlobalPosition()).getPerpendicular(ofVec3f(0,1,0));
bounds[2]=ofPlane(p,pn,-pn,ofVec2f(1000,1000));
- l=ofVec2f(ofGetWidth()/2,19*ofGetHeight()/20);
+ l=ofVec2f(windowWidth/2,19*windowHeight/20);
r=projector.castPixel(l.x,l.y);
plane.intersect(r,p);
pn=(p-projector.getGlobalPosition()).getPerpendicular(ofVec3f(1,0,0));
bounds[1]=ofPlane(p,pn,-pn,ofVec2f(1000,1000));
-
+
// vector<trapdoor> trapdoors;
// float trapdoorSize;
// float trapdoorSlotSize;
@@ -260,84 +300,63 @@ void testApp::updatePlane(){
trapdoors.clear();
- l=ofVec2f(ofGetWidth()/2,19*ofGetHeight()/20);
+ l=ofVec2f(windowWidth/2,19*windowHeight/20);
r=projector.castPixel(l.x,l.y);
plane.intersect(r,p);
float closestY=p.rotated(cam_angle,ofVec3f(-1,0,0)).y;
numtrapdoorSlots=closestY/trapdoorSlotSize;
//get middle position in the slot on the ground visible at front of screen
- ofVec3f rp=ofVec3f(ofGetWidth()/2,closestY-(0.5*trapdoorSlotSize),0);
+ ofVec3f rp=ofVec3f(windowWidth/2,closestY-(0.5*trapdoorSlotSize),0);
//translate to the screen
ofVec3f sp=cam.worldToScreen(rp.rotated(cam_angle,ofVec3f(1,0,0)));
- printf("front slot: %f,%f to %f,%f,%f\n",rp.x,rp.y,sp.x,sp.y,sp.z);
+ //printf("front slot: %f,%f to %f,%f,%f\n",rp.x,rp.y,sp.x,sp.y,sp.z);
//get point at left of this line
//project back on ground
- ofVec2f gb=screen2plane(ofVec2f(ofGetWidth()/8,sp.y));
+ ofVec2f gb=screen2plane(ofVec2f(windowWidth/8,sp.y));
r=projector.castPixel(sp.x,sp.y);
plane.intersect(r,p);
- float range=(((ofGetWidth()/2)-p.x)*2);
+ float range=(((windowWidth/2)-p.x)*2);
for (int i=0;i<numtrapdoorSlots;i++) {
//get middle position in the slot on the ground visible on screen
- ofVec3f rp=ofVec3f(ofGetWidth()/2,closestY-((i+0.5)*trapdoorSlotSize),0);
+ ofVec3f rp=ofVec3f(windowWidth/2,closestY-((i+0.5)*trapdoorSlotSize),0);
//randomise horizontal pos
- rp.x=ofRandom(trapdoorSlotSize*5)-(trapdoorSlotSize*2.5)+(+ofGetWidth()/2);
+ rp.x=ofRandom(trapdoorSlotSize*5)-(trapdoorSlotSize*2.5)+(+windowWidth/2);
- //gb.x=ofRandom((ofGetWidth()-gb.x)*2)+gb.x;
+ //gb.x=ofRandom((windowWidth-gb.x)*2)+gb.x;
if (border.size()<3||!OutsidePolygon(border,ofPoint(rp.x,rp.y))) {
trapdoors.push_back(trapdoor(ofVec2f(rp.x,rp.y),trapdoorSize));
}
}
random_shuffle ( trapdoors.begin(), trapdoors.end() );
-
+
trapdoorCounter=0;
trapdoors[trapdoorCounter].active=true;
-
- makeGround(0);
-
- /*
- groundlines.clear();
- ofPolyline pol;
- pol.addVertex(0,0);
- pol.addVertex(ofGetWidth(),0);
- pol.addVertex(ofGetWidth(),ofGetHeight());
- pol.addVertex(0,ofGetHeight());
- pol.close();
- groundlines.push_back(pol);
- vector<ofVec2f> corners=trapdoors[0].getCorners();
- ofPolyline pol2;
- for (int i=0;i<corners.size();i++) {
+ //makeGround(0);
- ofVec3f cw=ofVec3f(corners[i].x,corners[i].y,0).rotated(cam_angle,ofVec3f(1,0,0));
- ofVec3f s=cam.worldToScreen(cam.worldToScreen(cw));
- //printf("corner %i: %f,%f to %f,%f,%f\n",i,corners[i].x,corners[i].y,s.x/s.z,s.y/s.z,s.z);
- pol2.addVertex(s.x,s.y);
- }
- pol2.close();
- groundlines.push_back(pol2);
-
+ tessGround(0);
- */
+ /*
//create ground mesh with hole for trapdoor
-
+
//IS NOT WORKING!??
//it is building a hole somewhere.. whats.. the.. problem..
/*
ground=ofMesh();
ground.addVertex(ofVec3f(0,0,0));
ground.addTexCoord(ofVec2f(0,0));
- ground.addVertex(ofVec3f(ofGetWidth(),0,0));
+ ground.addVertex(ofVec3f(windowWidth,0,0));
ground.addTexCoord(ofVec2f(1,0));
- ground.addVertex(ofVec3f(ofGetWidth(),ofGetHeight(),0));
+ ground.addVertex(ofVec3f(windowWidth,windowHeight,0));
ground.addTexCoord(ofVec2f(1,1));
- ground.addVertex(ofVec3f(0,ofGetHeight(),0));
+ ground.addVertex(ofVec3f(0,windowHeight,0));
ground.addTexCoord(ofVec2f(0,1));
vector<ofVec2f> corners=trapdoors[0].getCorners();
@@ -361,7 +380,7 @@ void testApp::updatePlane(){
screenCorners[i]=ofVec2f(s.x,s.y);
ground.addVertex(s);
- ground.addTexCoord(ofVec2f(s.x/ofGetWidth(),s.y/ofGetHeight()));
+ ground.addTexCoord(ofVec2f(s.x/windowWidth,s.y/windowHeight));
}
//join a quad for each side
// the 2 rear sides should always point towards the rear
@@ -423,7 +442,7 @@ void testApp::update(){
//test the scaling
/*
- grayImage.resize(ofGetWidth(),ofGetHeight());
+ grayImage.resize(windowWidth,windowHeight);
if (bLearnBakground == true){
grayBg = grayImage; // the = sign copys the pixels from grayImage into grayBg (operator overloading)
bLearnBakground = false;
@@ -437,7 +456,7 @@ void testApp::update(){
grayDiff.threshold(threshold);
//grayDiff.adaptiveThreshold( threshold); //int blockSize, int offset=0,bool invert=false, bool gauss=false);
//grayDiff.erode_3x3();
- grayDiff.resize(ofGetWidth(),ofGetHeight());
+ grayDiff.resize(windowWidth,windowHeight);
// find contours which are between the size of 20 pixels and 1/3 the w*h pixels.
// also, find holes is set to true so we will get interior contours as well....
@@ -474,7 +493,7 @@ void testApp::update(){
}
for (int i=0;i<trapdoorCounter;i++) {
if (trapdoors[i].checkUpdate(players)) {
- makeGround(i);
+ //makeGround(i);
int whichsound=(int)ofRandom(2.9999999);
doorsounds[whichsound].play();
doorsounds[3].play(); //falling down hole
@@ -484,7 +503,7 @@ void testApp::update(){
}
}
}
-
+
Bird.update(players,cam_angle,border);
}
@@ -499,38 +518,34 @@ void testApp::draw(){
ofSetHexColor(0xffffff);
glDisable(GL_BLEND);
- if (gameState<PLAYING) colorImg.draw(0,0,ofGetWidth(),ofGetHeight());
+ if (gameState<PLAYING) colorImg.draw(0,0,windowWidth,windowHeight);
else {
-
+
//trapdoor logic
if (ofGetElapsedTimef()-trapdoorTimer>trapdoorTime) {
if (trapdoors.size()>trapdoorCounter+1) {
trapdoorCounter++;
trapdoorTimer=ofGetElapsedTimef();
+ tessGround(trapdoorCounter);
}
- else updatePlane();
+ //else updatePlane();
}
-
-
- //should be in front with holes being recreated for activated trapdoors
- ofSetHexColor(0xffffff);
- bindTexture(bgImg);
- ground.draw();
- unbindTexture(bgImg);
-
+
ofSetHexColor(0xffffff);
ofPushMatrix();
ofRotate(cam_angle,1,0,0);
//trapDoor.draw();
- for (int i=0;i<trapdoorCounter;i++) {
+ for (int i=0;i<=trapdoorCounter;i++) {
trapdoors[i].draw();
}
ofPopMatrix();
-
-
-
+//should be in front with holes being recreated for activated trapdoors
+ ofSetHexColor(0xffffff);
+ bindTexture(bgImg);
+ ground.draw();
+ unbindTexture(bgImg);
ofPushMatrix();
ofRotate(cam_angle,1,0,0);
@@ -543,8 +558,9 @@ void testApp::draw(){
ofRotate(cam_angle,1,0,0);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- for (int i=0;i<trapdoorCounter;i++) {
+ for (int i=0;i<=trapdoorCounter;i++) {
trapdoors[i].drawSplash(cam_angle);
+
}
glDisable(GL_BLEND);
@@ -606,19 +622,19 @@ void testApp::draw(){
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
switch(gameState) {
case TITLES:
- billboards[0].draw(ofGetWidth()/6
+ billboards[0].draw(windowWidth/6
,scaleFactor.y*((-billboards[0].height/2)+(billboards[0].height*pow(sin(segElapsed*PI),0.5)))
,billboards[0].width*scaleFactor.x
,billboards[0].height*scaleFactor.y);
break;
case CREDIT:
- billboards[1].draw(ofGetWidth()/6
- ,ofGetHeight()+(scaleFactor.y*((billboards[1].height/2)-(billboards[1].height*pow(sin(segElapsed*PI),0.5))))
+ billboards[1].draw(windowWidth/6
+ ,windowHeight+(scaleFactor.y*((billboards[1].height/2)-(billboards[1].height*pow(sin(segElapsed*PI),0.5))))
,billboards[1].width*scaleFactor.x
,billboards[1].height*scaleFactor.y);
break;
case EXPLAIN:
- billboards[2].draw(ofGetWidth()/2
+ billboards[2].draw(windowWidth/2
,scaleFactor.y*((-billboards[2].height/2)+(billboards[2].height*pow(sin(segElapsed*PI),0.5)))
,billboards[2].width*scaleFactor.x
,billboards[2].height*scaleFactor.y);
@@ -626,7 +642,7 @@ void testApp::draw(){
case PLAYING:
break;
case GOTCHA:
- billboards[3].draw(ofGetWidth()/2
+ billboards[3].draw(windowWidth/2
,scaleFactor.y*((-billboards[2].height/2)+(billboards[3].height*pow(sin(segElapsed*PI),0.5)))
,billboards[3].width*scaleFactor.x
,billboards[3].height*scaleFactor.y);
@@ -646,14 +662,14 @@ void testApp::draw(){
ofSetHexColor(0xffffff);
ofPushMatrix();
ofRotate(cam_angle,1,0,0);
- for (float i=0;i<=ofGetWidth();i+=ofGetWidth()/10) {
+ for (float i=0;i<=windowWidth;i+=windowWidth/10) {
glBegin(GL_LINES);
glVertex3f(i,0,0);
- glVertex3f(i,ofGetWidth(),0);
+ glVertex3f(i,windowWidth,0);
glEnd();
glBegin(GL_LINES);
glVertex3f(0,i,0);
- glVertex3f(ofGetWidth(),i,0);
+ glVertex3f(windowWidth,i,0);
glEnd();
}
@@ -741,11 +757,11 @@ void testApp::draw(){
ofSetHexColor(0xffffff);
char reportStr[1024];
sprintf(reportStr, "threshold %i\nnum blobs found %i, fps: %f", threshold, contourFinder.nBlobs, ofGetFrameRate());
- ofDrawBitmapString(reportStr, 10, ofGetHeight()-40);
+ ofDrawBitmapString(reportStr, 10, windowHeight-40);
char numStr[16];
for(int i=0;i<blobsManager.blobs.size();i++){
sprintf(numStr, "%i", blobsManager.blobs[i].id);
- ofDrawBitmapString(numStr, 10+(i*30), ofGetHeight()-55);
+ ofDrawBitmapString(numStr, 10+(i*30), windowHeight-55);
}
}
cam.end();
diff --git a/gaunt01/src/testApp.h b/gaunt01/src/testApp.h
index a5ee556..01301de 100644
--- a/gaunt01/src/testApp.h
+++ b/gaunt01/src/testApp.h
@@ -46,6 +46,8 @@ class testApp : public ofBaseApp{
void dragEvent(ofDragInfo dragInfo);
void gotMessage(ofMessage msg);
+ int windowWidth, windowHeight;
+
int mode;
//utility functions
@@ -91,21 +93,22 @@ class testApp : public ofBaseApp{
//vector<ofVec3f> players;
trapdoor trapDoor;
ofMesh ground;
-
+
vector<ofPolyline> groundlines;
ofTessellator tess;
-
- void makeGround(int doornumber);
-
+
+ void tessGround(int doornum);
+ void makeGround(int doornum);
+
vector<trapdoor> trapdoors;
float trapdoorSize;
float trapdoorSlotSize;
int numtrapdoorSlots;
-
+
int trapdoorCounter;
float trapdoorTime; //time per trap door
float trapdoorTimer;
-
+
ofSoundPlayer* doorsounds;
ofVec3f* testpts;
@@ -114,22 +117,22 @@ class testApp : public ofBaseApp{
map<int,player> players;
bool drawStats;
-
+
bool firstframe; //for background removal
float bgnum;
-
+
ofLight light;
-
+
ofPlane* bounds;
-
+
vector<ofPoint> border;
bool drawingborder;
-
+
ofSoundPlayer* sounds;
-
+
ofImage* billboards;
ofVec2f scaleFactor;
-
+
int gameState;
float gameStart;
float segTimes[5];
diff --git a/gaunt01/src/trapdoor.cpp b/gaunt01/src/trapdoor.cpp
index 309cda6..f609c91 100644
--- a/gaunt01/src/trapdoor.cpp
+++ b/gaunt01/src/trapdoor.cpp
@@ -3,16 +3,17 @@
trapdoor::trapdoor(ofVec2f pos,float _doorSize)
{
surround=morphmesh("trapdoor-top.xml");
+ beneath=morphmesh("trapdoor-bottom.xml");
lid=morphmesh("trapdoor-lid.xml");
if (!surround.isLoaded()||!lid.isLoaded()) printf("problem loading trap door mesh.\n");
texture.loadImage("TextureTrapdoor.jpg");
-
+
splashFrames=new ofImage[3];
splashFrames[0].loadImage("Drops_1.tga");
splashFrames[1].loadImage("Drops_2.tga");
splashFrames[2].loadImage("Drops_3.tga");
-
+
for (int i=0;i<3;i++) {
splashFrames[i].setAnchorPercent(0.5,0.5);
}
@@ -30,7 +31,7 @@ trapdoor::trapdoor(ofVec2f pos,float _doorSize)
}
trapdoor::~trapdoor() {
- for (int i=0;i<3;i++) splashFrames[i].clear();
+ //for (int i=0;i<3;i++) splashFrames[i].clear();
//delete splashFrames;
}
@@ -61,7 +62,7 @@ void trapdoor::trigger() {
/*
ofVec2f trapdoor::bounds2UV(ofVec2f point){
//returns the 0-1 UV coords of a point on the ground plane relative to its bounds.
- //this should not be in the trapdoor class????
+ //this should not be in the trapdoor class????
float v=(point.y-boundTR.y)/(boundBR.y-boundTR.y);
float mx=ofGetWidth()/2;
float u=((point.x-mx)/(((boundTR.x-mx)*(1-v))+((boundBR.x-mx)*v)))+0.5;
@@ -94,13 +95,13 @@ bool trapdoor::checkUpdate(map<int,player>& players) {
float sc=pow(0.2,ofGetElapsedTimef()-caughtTime[i]);
caught[i]->setCatchTransform(ofVec3f(0,0,0),ofVec3f(sc,sc,sc));
}
-
-
+
+
float segTime=(ofGetElapsedTimef()-triggeredTime);
if (triggeredTime>0) {
doorSpeed=(doorSpeed+((cos(doorAngle*0.0174532925)/ofGetFrameRate())*50))*0.95;
doorAngle-=doorSpeed;
- }
+ }
return gotcha;
}
@@ -128,6 +129,7 @@ void trapdoor::draw() {
ofPushMatrix();
ofRotate(90,-1,0,0);
ofScale(size*.005,size*.005,size*.005);
+ beneath.draw();
surround.draw();
ofPushMatrix();
ofTranslate(90,0,-5);
@@ -146,7 +148,7 @@ void trapdoor::draw() {
glDisable(GL_DEPTH_TEST);
}
void trapdoor::drawSplash(float angle) {
- for (int i=0;i<caught.size();i++) {
+ for (int i=0;i<caught.size();i++) {
float splashTime = (ofGetElapsedTimef()-caughtTime[i]);
if (splashTime>0.3) {
ofPushMatrix();
@@ -159,5 +161,5 @@ void trapdoor::drawSplash(float angle) {
ofPopMatrix();
}
}
-
-} \ No newline at end of file
+
+}
diff --git a/gaunt01/src/trapdoor.h b/gaunt01/src/trapdoor.h
index 7259d09..4731488 100644
--- a/gaunt01/src/trapdoor.h
+++ b/gaunt01/src/trapdoor.h
@@ -35,12 +35,13 @@ class trapdoor
void trigger();
float getoffset();
float getFalldist();
-
+
ofImage* splashFrames; //temp public
bool active;
protected:
private:
morphmesh surround;
+ morphmesh beneath;
morphmesh lid;
ofVec2f position;
@@ -57,7 +58,7 @@ class trapdoor
float triggeredTime;
vector<player*> caught;
vector<float> caughtTime;
-
+
};